nginx.conf里要加上对laravel的静态文件目录的转发(这里假设我的静态文件在public/static下)、修改vue的nginx配置。

我们以在我本地的开发环境为例,windows7+nginx+Vue+Laravel5,假设我想使用的域名是zh30.com。

想达成的效果:我们想直接访问时使用Vue开发的单页面应用index.html,做为我们的前台交互,且在Vue中使用history路由模式。后台和接口使用laravel框架进行开发,所以想使用zh30.com/admin 来访问后台管理,接口交互想使用zh30.com/api/xxx。

第一步,本地解析hosts,zh30.com指向到127.0.0.1 。。。。

第二步,配置nginx的主server,它用来接受我们的所有请求,并进行代理转发。


server {
        listen 80;
        server_name zh30.com;
       
        location / {
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://127.0.0.1:8181;
        }

location ~ ^/(admin|api|static) {
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://127.0.0.1:8282;
        }
}

第三步,配置Vue的server,这里假设我的Vue项目build在D:/wwwroot/myvueproject/dist目录。此server的作用是,把从主server 8181 QQ代理过来的请求全部rewrite到index.html,以支持Vue的history模式路由。


server {
  listen 8181;

root "D:/wwwroot/myvueproject/dist";

index index.html;

server_name localhost;

location / {
    try_files $uri $uri/ /index.html =404;
  }
}

第四步,配置Laravel的server,假设laravel项目在D:/wwwroot/mylaravelproject/。此server的作用是,把从主server 8282代理来的请求(以/admin或/api开头),全部rewrite到public的index.php,实现laravel的路由系统。


server {

listen 8282;

server_name localhost;
    root "D:/wwwroot/mylaravelproject/public";
    index index.php;

location / {
         try_files $uri $uri/ /index.php$is_args$args;
    }

location ~ \.php(.*)$ {
            fastcgi_pass   127.0.0.1:9001;
            fastcgi_index  index.php;
            fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            fastcgi_param  PATH_INFO  $fastcgi_path_info;
            fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
            include        fastcgi_params;
        }
}

第五步,重启Nginx,完成!

可能遇到的问题:暂无。。。

使用Nginx反向代理部署laravel和history模式的Vue项目[更新]相关推荐

  1. .net5 Nginx 反向代理部署

    .net5 Nginx 反向代理部署 几个概念先了解一下 集群 多个服务器(或者软件)呢,都可以完整的完成一个业务 eg:一个业务呢有A,B,C三个流程,服务器甲可以完成A,B,C.服务器乙也可以完成 ...

  2. Nginx反向代理部署多个项目

    需求 假设现在有一个顶级域名ouou.com和三个二级域名white.ouou.com,blog.ouou.com,default.ouou.com,这4个域名都跟同一个IP进行绑定.三个二级域名分别 ...

  3. nginx反向代理部署与演示(二)

    我们把LB01作为负载均衡器,WEB01和WEB02作为两台web服务器. WEB01与WEB02虚拟主机配置如下: 我们修改nginx下的conf/nginx.conf文件,在http{}中加入如下 ...

  4. 容器化单页面应用中Nginx反向代理与Kubernetes部署

    在<容器化单页面应用中RESTful API的访问>一文中,我介绍了一个在容器化环境中单页面应用访问后端服务的完整案例.这里我将继续使用这个案例,介绍一下容器化单页面应用部署的另一个场景: ...

  5. docker安装_使用docker在带有SSL的Nginx反向代理后面部署Quarkus或任何基于Java的微服务...

    docker安装 已经有一段时间了,但是根据一位朋友的要求,我将向您展示如何使用docker在Nginx反向代理后面部署Quarkus微服务. 我们会做什么- 我将在centos 8主机上安装dock ...

  6. Nginx 反向代理 Windows安装部署教程

    一.Nginx简介 Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.它也是一种轻量级的Web服务器,可以作为独立的服务器部署网站( ...

  7. 自部署gitlab-ce与Nginx反向代理——基于宝塔BT

    自部署gitlab-ce与Nginx反向代理 最近单位需要配置自有的git仓库和平台,于是采用了gitlab ce版,并且用Nginx反向代理到了宝塔安装的gitlab上.这期间出现了很多配置上导致的 ...

  8. nginx反向代理+缓存开启+url重写+负载均衡(带健康探测)的部署记录

    在日常运维工作中,运维人员会时常使用到nginx的反向代理,负载均衡以及缓存等功能来优化web服务性能. 废话不多说,下面对测试环境下的nginx反向代理+缓存开启+url重写+负载均衡(带健康探测) ...

  9. Nginx 反向代理实现微信开发完美线上测试环境

    成文时间: 2018-11-29 11:18:10 环境说明 Ubuntu 16.04 LTS Nginx version: nginx/1.10.3 (Ubuntu) PHP 7.1.18 Lara ...

最新文章

  1. stm32 bootloader跳转
  2. Redis实战(五):Redis的持久化RDB、fork、copyonwrite、AOF、RDBAOF混合使用
  3. ExtJS中如何根据combobox的选值,动态地决定组件的显隐?
  4. Python 数据结构之栈的实现
  5. jsp+javabean实现购物车
  6. chromedriver@2.41.0 install: `node install.js`安装失败解决;npm安装报错
  7. 代码分析-DataGrid实现自增列、单选、多选
  8. 人工智能搭档智能云,进入《西部世界》不是梦!
  9. java jackson unicode_如何让Jackson JSON生成的数据包含的中文以unicode方式编码
  10. 怎么将服务器中图片显示出来,服务器显示图片
  11. SIM800系列模块GSM/GPRS建立TCP连接到远端服务器过程——新浪博客迁移
  12. 代码审查工具rietveld的安装与使用(一)
  13. dwcss样式中英对照_DW中常用css样式四种类型详细解析说明
  14. 本科生毕业设计选题——计算机类
  15. strcmp, strncmp和memcmp的区别
  16. 智能经济时节已至,百度智能云扬起风帆
  17. 散列表查找为何如此之快
  18. scipy Matlab-style IIR 滤波器设计上(Butterworth\Chebyshev type I \Chebyshev type II )
  19. SMT阻容件常用规格参数
  20. 计算机桌面为什么没有语言栏了,电脑语言栏不见了的解决方法

热门文章

  1. 2018年计算机专业考研,2018年计算机专业考研大纲解析
  2. java并发编程之美-阅读记录6
  3. 剑指offer-按之字形顺序打印二叉树
  4. 阿里开源分布式事务解决方案 Fescar
  5. 线性插值法的原理和python代码实现
  6. 004 IOC---IOC容器
  7. Eclipse代码自动补全
  8. Web- HTML网页颜色大全
  9. INV标准报表+INVARAAS.rdf -- ABC分配报表
  10. [IE编程相关]之一:客户端键盘响应事件分析