1.nginx启动
start nginx
2.nginx重新加载配置文件(-s是signal意思)
nginx -s reload
3.nginx停止
nginx -s stop
4.nginx部署两个不一样的前后端系统 开启两个虚拟主机即可,nginx.conf中使用server{}代码块标签来表示一个虚拟主机,nginx支持多个server{}标签,即支持多个虚拟主机站点。
server {
listen 80;
server_name localhost;
client_max_body_size 100m;
location ^~ /jeeplus-vue/ {
proxy_pass http://localhost:8082/;
proxy_set_header Host localhost;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ^~ /userfiles/ {
proxy_pass http://localhost:8082/userfiles/;
proxy_set_header Host localhost;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location / {
root D:/nginx/html;
index index.html index.htm;
}
}
server {
listen 81;
server_name localhost;
client_max_body_size 100m;
location ^~ /jeeplus-vue/ {
proxy_pass http://localhost:8084/;
proxy_set_header Host localhost;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ^~ /userfiles/ {
proxy_pass http://localhost:8084/userfiles/;
proxy_set_header Host localhost;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location / {
root D:/nginx/html2;
index index.html index.htm;
}
}
5.nginx停止后,仍可访问系统的前后端资源 (1)问题背景: 刚开始,只运行使用一个虚拟主机(系统1),即一个server{}代码块标签;后来,想增加一个虚拟主机(系统2),在增加了第二个server{}代码块标签后,执行nginx -s reload ,然后你执行nginx -s stop 时,发现只是系统2不能访问了,系统1仍然可以畅通无阻的访问,你就会有疑问,我不是停止nginx服务了吗,为什么系统1还能访问系统资源?请往看下边看! (2)问题原因及解决办法: 因为之前多次不正常操作,启动了多次服务,开启了多个进程。nginx -s stop 你只是关掉了当前最新的一个进程,当你在执行nginx -s stop 时会报如下错误,而不会继续关闭之前已经打开过的进程。 (nginx -s stop 操作你只是把最新进程的系统1、系统2(或者仅仅有系统2)的nginx服务关闭了,可是之前开启过的其他进程的nginx服务(只有系统1),这个时候会重新“复活”,会看到为啥我关闭了nginx系统服务后,系统1可以访问,系统2不能访问的“怪象”。) 这个时候要解决这个问题,必须要打开任务管理器,结束两个甚至更多个nginx.exe进程,就可以关闭掉所有进程的nginx的服务,系统1和系统2都不能访问了。
|