教你在局域网部署前端vue+后端php的网站服务

1、阅读对象

本篇教程适合新手阅读,老手直接略过

2、教程难度

初级

本人水平有限,文章内容难免会出现问题,如果有问题欢迎指出,谢谢

正文

如今网站建设流行前后端分离,作者也应时代潮流,适用VUE做前端,后台由PHP大佬来做接口,在开发中有许多的坑,为了填空查阅了很多资料,浪费了好几天调试,如今总算是圆满结束。

好了废话不多说,开始讲我遇到的问题,与解决办法。

开发时期

在开发阶段,作者这个小前端,用的是VScode编辑器。

在创建了vue-cli脚手架后,开始开工。

1.遇到的第一个坑,开发初期后端大佬还没确定人选,老板让我先做界面,既然是前后端分离,必定需要数据字典,这一步非常重要,我就在这上面栽了坑,我并不知道后端大大发送过来的参数变量名,会被HTTP协议自动转换为全小写字母。而我在编辑数据字典时,变量名掺杂了大写字母,导致后来接收参数的时候,找不到变量名。

千万千万,不能像我一下,定成这种大小写混合的变量名,而且还这么长,后端大佬会骂死你的。

2.还是跨域问题,PHP大佬说他已经添加了跨域访问的代码,但是我这边还是爆跨域错误,错误如下。

vue这个跨域错误纠缠了我2天时间,期间后端各种改。

最终在我问了一圈小朋友,查询了无数资料后,才知道开发环境下vue-cli必须要配置自带的跨域代理服务,才可以跨域访问PHP后端

在你项目根目录下的config/index.js中配置proxyTable即可,target填写后端给你接口的域名,其他参数照抄即可。

配置完成后在你请求的接口的最前面写上/api,后面是你的接口路径,千万不要写接口域名,如下图

然后重新运行 npm run dev 即可实现vue在开发环境下跨域的问题。

接下来遇见的是见了鬼,日了狗的一个问题,

ajax post数据提交 PHP后台接收不到数据

测通接口后,当你满心欢喜的给给后端大佬千里传参,大佬回复你我没收到参数。

卧槽什么鬼,我明明把参数传过去了啊,难不成半路被人劫走了??????什么情况

又是各种问小朋友,问大佬。

原来是axios发送的是json格式的数据,而后端只接受传统的form data格式的数据,json后台程序不认识。

前端发的是这种application/json

知道了原因,几种解决办法如下

1.网上有很多方案说使用

axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';

或者

{headers:{'Content-Type':'application/x-www-form-urlencoded'}}

我试了一下,其实这样还是不行的

2.解决方案二

【还需要额外的操作,(我们要将参数转换为query参数)】

引入 qs ,这个库是 axios 里面包含的,不需要再下载了。

3.解决办法三,让你的后台改一下接收方式,让他这样接收(墙裂推荐)

作者采用的是这种方式,让后端改。

终于一切都通了,我们开始测接口把,但是.......

当登陆接口测通以后,第二接口又开始撞鬼了,爆404错误,什么情况,我和后端疯狂的检查代码,代码没错,那为啥会爆404错误,

经过2天的排查,问题终于被发现了,后端查询数据库,数据表中有个字段和查询语句的变量名不一致,数据库爆404,php框架就把错误返前端了,并不是接口找不到,日了狗了。

然后一路到开发完毕,项目可以上线了。问题是客户需要项目上线到他们的局域网,只提供一台电脑当作服务器。

VUE和PHP需要部署到局域网?

经过一番折腾,后端在服务器电脑上,装载了这个小东西

而我把打包好的dist目录下的文件放在了PHP文件的根目录下,然后把项目放在phpStudy下的www目录内

启动服务,能访问了,问题又出现了,前端页面爆接口404错误。

那前端的请求接口怎么填?填那台服务器的局域网IP?我怎么知道客户电脑的局域网IP是多少,真是日了狗了

那么这个接口怎么填?经过我一番折腾,问了一圈前端大佬,百度了半天,没有一个准确答案。

最后还是我自己解决了。不填请求IP,就写相对路径,如下图。

输入那台电脑的ip,测试,ojbk,局域网内其他电脑都能正常使用。

完工。。。。。。。。

对了告诉大家一个小BUG,axios给php发post参数,data必须如图写,不然会爆错误。

data必须这样写

如果你这样写data:this.engititle

参数这样写

如果你这样写data:this.engititle

完犊子必定报错

完犊子必定报错,至于为啥,我就不知道了,希望有大佬解答一下

转载于:https://juejin.im/post/5ba9ca77e51d450e935c5bac

手把手教你在局域网部署前端vue+后端php的网站服务相关推荐

  1. 【前端Vue+后端Node.js+MySql】部署到服务器

    [前端Vue+后端Node.js+MySql]部署到服务器 文章目录 [前端Vue+后端Node.js+MySql]部署到服务器 1.买服务器 2.服务器操作 2.1.修改服务器密码,xshell登录 ...

  2. Jenkins自动化部署前端Vue项目

    Jenkins自动化部署前端Vue项目 前言 安装NodeJs 下载NodeJs 安装NodeJs npm配置 Jenkins配置NodeJs 安装NodeJs插件 配置NodeJs 新建及配置任务 ...

  3. 服务器上部署前端Vue项目代码

    服务器上部署前端Vue项目代码 本人自己感觉部署前端代码比部署后端难,主要是我在部署的过程中遇到了各种报错

  4. Windows服务器部署前端vue项目

    阿里云Windows服务器部署前端vue项目 准备工作 下载node.js(略)http://nodejs.cn/download/ 下载Nginx http://nginx.org/en/downl ...

  5. 手把手教你搭建SpringCloud项目(十)集成Hystrix之服务降级

    Spring Cloud全集文章目录: 零.什么是微服务?一看就会系列! 一.手把手教你搭建SpringCloud项目(一)图文详解,傻瓜式操作 二.手把手教你搭建SpringCloud项目(二)生产 ...

  6. 基于前端Vue后端.NetCore Web后台管理系统通用开本框架采用前后端分离技术,前端使用vue2.6.0,后端使用.netcore3.1,支持跨平台、多租户

    基于前端Vue后端.NetCore Web后台管理系统通用开本框架采用前后端分离技术,前端使用vue2.6.0,后端使用.netcore3.1,支持跨平台.多租户.支持MySQL/SQLServer/ ...

  7. 【项目部署】使用Jenkins一键打包部署前端Vue应用

    文章目录 前言 一.准备工作 1.安装nginx 1.1 下载nginx的docker镜像 1.2 从容器中拷贝nginx配置 1.3 使用docker命令启动 1.4 测试 二.安装NodeJS插件 ...

  8. 前端Vue+后端Django项目创建以及自动部署流程

    所有的环境都安装完了之后,接下来就要创建项目了,完整的项目开发流程是由开发的同学先写完代码,然后交付给运维的同学部署到测试和生产环境.DevOps可以让整个流程自动化,开发的同学只需要稍微会一些工具就 ...

  9. nginx 部署前端vue项目dist文件

    nginx 部署前端页面 server {listen 8082; server_name localhost;location / {root /usr/local/dist; #前端页面地址ind ...

最新文章

  1. 处理器解决物联网和人工智能的融合
  2. nginx内存占用高---内存池使用思考
  3. 课堂作业:返回一个二维整数组中最大子数组的和
  4. 程序设计作业: 车模+数模 = ?
  5. matlab 平滑曲线连接_【仪光学习】技能分享 | 前方高能:如何用Matlab轻松实现数学建模...
  6. Java虚拟机-垃圾回收简介
  7. 厉害了,用python爬取自己的微信朋友
  8. 批量发短信的平台浏览总结
  9. 家庭的和睦,人生的平淡
  10. 【Python网络蜘蛛 · 8】:moviepy模块实现音频+视频的合成
  11. TSRC挑战赛:WAF之SQL注入绕过挑战实录
  12. in comment after two dashes (--) next character must be > not (position: START_TAG seen ...
  13. 显示12306服务器处理中正在排队,12306排队等待中怎么回事_12306排队等待时间_12306一直在排队解决方法...
  14. 公司邮箱域名可以定制吗?公司邮箱申请注册?公司邮箱登录入口?
  15. nodejs模块加载的猜想
  16. 网管日记:故障网络交换机快速替换方法
  17. Lua --Coscos从c++过渡到Lua
  18. c语言练习:输入一个字符,如果是数字字符就输出,如果不是则输出“不是数字字符”。
  19. 苹果手机数据线充不了电_深圳苹果手机数据线多少钱一条
  20. 【Benewake(北醒) 】长距 TF03 100m/180m介绍以及资料整理

热门文章

  1. 网页设计期末课程设计大作业-HTML、CSS、JS仿英雄联盟LOL官网)
  2. Android N调用系统安装APK方法报错原因整理及解决方案
  3. SQL学习笔记三——结构化查询语言
  4. 英文写作,优化,材料,句式
  5. 十大管理输入输出工具和技术
  6. linux u盘合并分区,Linux U盘分区格式化 fdisk命令
  7. roadflow建立表单步骤
  8. Go get报错 fatal: could not read Username for ‘https://xxx‘: terminal prompts disabled【解决方案】
  9. 2022年度总结,以及2023的全新展望
  10. java转换成class文件_浅谈JVM编译原理-.java文件转变为.class文件的过程