使用Nginx配置前端服务器

537 阅读2分钟

心血来潮尝试使用Nginx启动web服务器,记录学习过程,方便后续使用。

大家都知道,vue和react框架都支持hash和history两种路由模式,在使用Nginx配置代理时,发现hash模式,不需要怎么处理就能实现,而history模式需要对直接访问和刷新操作进行处理,否则报404错误。

1、首先下载Nginx,下载完成后解压到指定目录,我是放到了D:\nginx,解压完成后,运行cmd,使用命令进行操作,不要直接双击nginx.exe,一定要在dos窗口启动,不要直接双击nginx.exe,这样会导致修改配置后重启、停止nginx无效,需要手动关闭任务管理器内的所有nginx进程,再启动才可以。 Nginx的解压目录:

image.png

// 强制结束所有Nginx进程
taskkill /f /t /im nginx.exe

2、使用命令行到达nginx的解压缩后的目录

cd D:\nginx\nginx-1.22.0

3、执行命令,启动Nginx

start nginx

4、启动后,访问localhost:80检验是否成功

image.png

5、创建vue项目或者react项目,build之后dist目录下的内容放到html目录下,Nginx配置不用改动,就能访问到页面

image.png

image.png

6、在项目中添加路由,使用hash模式,刷新页面没有问题,使用history模式就会报404错误

image.png

此时需要修改Nginx配置,添加try_files $uri $uri/ /index.html;

image.png

修改Nginx配置后要重启Nginx:nginx -s reload

7、在项目开发是一般都给路由配置basename,publicpath等,在使用Nginx代理的时候也要是进行相对的修改。

image.png

image.png

Nginx配置改动:在html的同级下创建一个webapp目录,这样就可以在使用同一个Nginx代理不同的项目

image.png

image.png

以上就是本次学习Nginx代理前端项目的实战总结,如有错误请指正。