前情提要
- 就算是一个koa项目,放到服务器上面也是要配置nginx的
- 我事先使用宝塔进行服务器的管理,然后在宝塔上面下载了nginx
nginx配置
nginx位置
我的nginx的位置如下:/www/server/nginx
就算你的不是这样的,也可以通过已安装软件来查看nginx的位置
配置文件位置
我的配置文件位置如下:/www/server/nginx/conf/nginx.conf
一般来说只要一个这样的文件就够了,我们以下的更改全部在nginx.conf文件进行
配置
- 首先我们可以看到.conf文件的初始目录结构是长这样的:
stream {
...
}
events
{
...
}
http
{
...
server
{
listen 888;
server_name phpmyadmin;
...
}
# 等会要加的server 跟上面的server是同一级别的
include /www/server/panel/vhost/nginx/*.conf;
}
- 然后我们要增加一个同级的server
server
{
listen 80;
server_name ***; # 填写你的服务器地址
# 我的项目目录是sm 所谓我写成这样了
location /sm/ { # 这样写了之后 你可以通过xxx.xxx.xxx/sm来访问你的项目
proxy_pass http://127.0.0.1:8633/; #本地项目监听的端口 反向配置
root /www/sm/static; # 你项目的静态资源文件夹路径
index index.html; # 你的前端项目入口文件
}
access_log /www/wwwlogs/access.log; # 这是日志
}
重启
- 如果是在宝塔里面修改的话好像不需要手动重启nginx
- 如果是在xftp等工具中修改的话保险要重启一下nginx
- 保险起见可以都重启一下
service nginx restart
- 这个是重新加载的,也放在这里了,大概是用不上的吧
nginx -s reload
报错
- 报错信息:Malicious Path
- 报错分析:这个报错的原因是你的路径不安全,在找了一些资料之后,发现是我nginx配置之中location有问题
- 修改前如下:
server
{
listen 80;
server_name ***;
location /sm {
...
}
access_log /www/wwwlogs/access.log;
}
- 修改后如下:
server
{
listen 80;
server_name ***;
location /sm/ {
...
}
access_log /www/wwwlogs/access.log;
}
- 就是项目那里一小点斜杠的问题!!!!!
参考
配置参考
https://blog.csdn.net/beichenyumo/article/details/114480816
https://www.jianshu.com/p/350d7f1a0d6b