首页 > 后端开发 > 正文

php框架vue 前端vue与后端Thinkphp在服务器的部署

2023-09-05 13:46:23 | 我爱编程网

对于后端开发比较关注的小伙伴们一定非常关心php框架vue 前端vue与后端Thinkphp在服务器的部署,今天我爱编程网小编为大家整理了以下内容,下面一起来看看吧。

php框架vue 前端vue与后端Thinkphp在服务器的部署

后端thinkphp和前端vue怎么协调

hinkphp作为服务端,为客户端提供数据。而Vue是客户端的一个JavaScript框架。便于我们对页面进行处理。
一般情况下,vue通过异步请求来获取数据。由于实例化vue时已经将相关的变量、模板等定义好了。
当获取到thinkphp回传的数据后,将会自动的把数据对应的呈现在网页上。

php框架vue 前端vue与后端Thinkphp在服务器的部署

前端vue与后端Thinkphp在服务器的部署

vue在服务端部署时,我们都知道通过npm run build 指令打包好的dist文件,通过http指定是可以直接浏览的,Thinkphp通过域名指向index.php文件才可以浏览。要使前端正常调用后端数据,有两种方法:1、前端跨域调用后端数据,2、前端打包文件部署在后端的服务器文件夹下(同域)。

web服务器: apache

一、跨域

在服务器配置站点:

在路径/home/www/  下创建test项目文件夹,用来放项目文件。

找到httpd-vhosts.conf文件配置站点

前端站点:

ServerName test.test.com

DocumentRoot "/home/www/test/dist"

DirectoryIndex index.html

后端站点:

ServerName test.testphp.com

DocumentRoot "/home/www/test/php"

DirectoryIndex index.php

将前端打包好的dist文件放在/home/www/test/ 文件夹下,运行 可浏览,当路径改变时,刷新会出现404错误。此时dist文件下创建一个.htaccess文件,当路径不存在时,路径指向 /index.html能解决此问题。

RewriteEngine On

RewriteBase /

RewriteRule ^index\.html$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /index.html [L]

在/home/www/test文件夹下创建项目根目录php文件夹,将thinkphp文件放在php下。TP5的入口文件在public文件下,在这将public下的入口文件index.php挪到php文件夹下(个人习惯将入口文件放在项目根目录), 后端绑定Index模块。

前端调用后端接口,存在跨域,跨域解决方法有好几种,在这我将在后端php做配置,解决跨域问题,在公用控制器设置跨域配置:

class Common extends Controller

{

public $param;

// 设置跨域访问

public function _initialize()

{

parent::_initialize();

isset($_SERVER['HTTP_ORIGIN']) ? header('Access-Control-Allow-Origin: '.$_SERVER['HTTP_ORIGIN']) : '';

header('Access-Control-Allow-Credentials: true');

header('Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS');

header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, authKey, sessionId");

$param =  Request::instance()->param();

$this->param = $param;

}

}

前端调用登录接口: this.axios.post(' ', {user: '', password: ''})。

(可在webpack.base.conf.js文件下可定义接口: )

二、同域

后端配置同上,公共配置器中的header配置注释。将前端的dist文件下的所有文件(包含.htaccess),放在php文件夹下。将后端index控制器的index方法的路径重定向php下的index.html文件:

namespace app\index\controller;

use think\Controller;

class Index extends Controller

{

public function index() {

$this->redirect('/index.html');

}

}

前端调用登录接口: this.axios.post('/index.php/base/login', {user: '', password: ''})

转自:

php框架vue 前端vue与后端Thinkphp在服务器的部署

在web 中PHP,HTML,CSS, JS, jquery, vue, node 的作用是啥

我爱编程网(https://www.52biancheng.com)小编还为大家带来在web 中PHP,HTML,CSS, JS, jquery, vue, node 的作用是啥的相关内容。

php是后端语言,简单来说就是处理数据的,html是用来布局的,css是用来修饰的。
js和jq都是 脚本语言 ,操作dom的,vue是一个框架,node也是后端语言。
首先说一下前端部分:html就是等于你新建的房子,还没有装修,只有一个架构,
css就是等于装修你的房子。使页面变得好看。jq是js的封装,就是把js的一些方法封装起来进行调用,都是属于脚本语言,用法都差不多,例如你要点击一个页面的按钮触发什么事件就是使用js或jq来控制的
再到vue,vue是一个前端框架,它有很多特定的功能,例如:双向数据绑定,data传数据等等,非常方便。(功能还有很多,详细的你自己去学这里只是举例一下),php和node都是后端语言,但是node的定性有点不确定性,它虽然是后端语言,但是使用这个语言最多的还是 前端开发 ,它除了可以写后端数据,它还是很多框架的依赖,例如vue就是需要依赖node环境的。
至于php,我举个例子:你开发了一个官网,但是你的图片和产品一开始都是静态的,就是都是你写在上面的,但是我总不能每次修改都从代码里面去改,然后再上传到服务器吧,所以我们需要通过后端返回数据,把数据库里面的图片或产品参数通过php的接口来获取到数据,然后把数据渲染在前端页面上,这样只要数据库里面的东西修改了,前端页面自动就替换了新的内容。当然我们是不会自己在数据库上面去改的,我们还会写一个 管理后台 ,通过管理后台去上传图片到数据库,不管是前端页面还是管理后台都是通过php(后端语言)来处理数据进行交互的。 我爱编程网

以上就是我爱编程网小编为大家带来的内容了,希望能够帮助到大家,了解更多后端开发资讯敬请关注我爱编程网。更多相关文章关注我爱编程网:www.52biancheng.com

免责声明:文章内容来自网络,如有侵权请及时联系删除。
与“php框架vue 前端vue与后端Thinkphp在服务器的部署”相关推荐
java程序如何在linux服务器上运行
java程序如何在linux服务器上运行

怎样使用linux运行java程序?使用linux运行java程序具体步骤如下:1.Windows上使用eclipse编译java工程,编译完成后导出为RunnableJARFile。例如,此处将test工程中的Test2文件export为MyTest2.jar文件。2.Ubuntu上java环境安装。①jdk官网-downloads-2133151.html下载L

2024-03-15 03:02:46
java框架有哪些常用框架
java框架有哪些常用框架

java框架有哪些常用框架十大常用框架:一、SpringMVC二、Spring三、Mybatis四、Dubbo五、Maven六、RabbitMQ七、Log4j八、Ehcache九、Redis十、Shiro延展阅读:一、SpringMVCSpringWebMVC是一种基于Java的实现了WebMVC设计模式的请

2024-03-25 18:22:44
tomcat 是如何在 javaweb 中部署的?
tomcat 是如何在 javaweb 中部署的?

tomcat是如何在javaweb中部署的?1.Tomcat是一个开源的Web应用服务器,广泛用于部署JavaWeb应用程序。2.为了在Tomcat上部署JavaWeb项目,首先需要将项目打包成WAR(WebApplicationArchive)文件。3.接下来,将生成的WAR文件放置到Tomcat安装目录下的webapps文件夹内。4.然后,启动Tomcat服务器。在Windo

2024-05-01 13:36:37
python如何在终端退出
python如何在终端退出

3、终端进入和退出python编辑模式1、MAC默认已安装python2.6版本,若想启动该版本,直接输入python即可进入。2、若已安装最新版本,比如3.7,则输入python3,即可进入。3、若想不关闭终端退出,则输入命令"exit()",或者“quit()”,或者按“control+d”。Python入门题039:强制退出程序(5种方法)在一个死循环中,不使用ret

2023-12-11 19:45:48
服务器上如何运行Java程序?这个程序主要是监听某个端口是否有信息的?打包->上传->命令行运行?
服务器上如何运行Java程序?这个程序主要是监听某个端口是否有信息的?打包->上传->命令行运行?

服务器上如何运行Java程序?这个程序主要是监听某个端口是否有信息的?打包->上传->命令行运行?1.先安装j2sdk我安装路径是:D:\ProgramFiles\Java\j2sdk2.再安装eclipseEclipse是绿色软件,不需要安装,把下载回来的eclipse压缩包解压就可以了我安装的路径是:D:\ProgramFiles\Java\eclipse3.安装

2024-03-17 01:37:16
php上传文件的函数 php 编写 实现上传图片至服务器的函数
php上传文件的函数 php 编写 实现上传图片至服务器的函数

php实现上传图片至服务器的函数<formmethod=postaction="upload.php"ENCTYPE="multipart/form-data"><inputtype="file"name="upload_file"><inputtype="submit"name="submit"value="上传文件">用PHP上传时,需要对内容作详细的检

2024-07-23 09:57:07
python学习的框架是哪些?
python学习的框架是哪些?

python学习的框架是哪些?从GitHub中整理出的15个最受欢迎的Python开源框架。这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试,爬虫等。Django:PythonWeb应用开发框架Django应该是最出名的Python框架,GAE甚至Erlang都有框架受它影响。Django是走大而全的方向,它最出名的是其全自动化的管理后台:只需要使用起ORM,做简单

2024-02-05 17:45:11
如何在ubuntu终端运行python脚本
如何在ubuntu终端运行python脚本

ubuntu下用python写了个生成动态壁纸的脚本,如果通过代码实现使用这个xml,而不是通过桌面->背景->添加sudomkdir/usr/share/backgrounds/mybackground-imgssudocd/usr/share/backgrounds/mybackground-imgssudocp/home/你的背景图片所在目录/*.sudo./backgro

2024-01-06 04:45:15