100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > Nginx反向代理 设置二级域名 (CentOS)

Nginx反向代理 设置二级域名 (CentOS)

时间:2020-06-09 16:56:46

相关推荐

Nginx反向代理  设置二级域名 (CentOS)

nginx 配置

whereis nginx

/usr/sbin/nginx -> 执行文件

/etc/nginx/conf.d -> 自定义.conf文件的存放位置

常用操作举例:

重启:

$ /usr/local/nginx/sbin/nginx –s reload

停止:

$ /usr/local/nginx/sbin/nginx –s stop

测试配置文件是否正常:

$ /usr/local/nginx/sbin/nginx –t

反向代理

1. 找到nginx.conf文件

路径:/usr/local/nginx/conf

2. 修改。

server {

listen 80;

server_name; // 你的域名

#charset koi8-r;

#access_log logs/host.access.log main;

location / {

root /home/hanstore;

index index.html index.htm;

}

location/music/{ // 跟在域名后的路径,匹配到会进行反向代理,指向proxy_pass

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_set_header Host $http_host;

proxy_set_header X-NginX-Proxy true;

proxy_passhttp://127.0.0.1:8080/; // 服务器上启的本地服务,监听对应的端口

}

location/2048/{

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_set_header Host $http_host;

proxy_set_header X-NginX-Proxy true;

proxy_passhttp://127.0.0.1:2048/;

}

.......

3. 重启nginx

nginx -s reload

会提示ngnix不是可执行命令,为了方便,先增加环境变量

4.将nginx的启动路径加入到环境变量

A. 打开环境变量所在的文件

vim /etc/profile

B. 在命令模式下按GG至末尾,添加

#set for node.jsexport NODE_HOME=/home/dc2-user/nodeexport PATH=$NODE_HOME/bin:$PATH#set for gitexport PATH=/usr/local/git/bin:$PATH#set for nginxexport PATH=$PATH:/usr/local/nginx/sbin

C. 重新加载环境

source profile

5. 执行nginx -s reload重启nginx

----------------------------------------------------------------------------------------------------------------------------------------------------------

PS

如果nginx中只配置一个server域的话,则nginx是不会去进行server_name的匹配的。因为只有一个server域,也就是这有一个虚拟主机,那么肯定是发送到该nginx的所有请求均是要转发到这一个域的,即便做一次匹配也是没有用的。还不如干脆直接就省了。如果一个http域的server域有多个,nginx才会根据$hostname去匹配server_name进而把请求转发到匹配的server域中。此时的匹配会按照匹配的优先级进行,一旦匹配成功进不会再进行匹配,关于具体的匹配规则可以参见nginx官网提供的文档。

设置二级域名

1.二级域名解析

去域名服务商增加二级域名解析

2.修改nginx.conf文件

增加对应的server

server {

listen 80;

server_name; // 匹配的二级域名地址

location / {

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_set_header Host $http_host;

proxy_set_header X-NginX-Proxy true;

proxy_pass http://127.0.0.1:1111/;

}

}

server {

listen 80;

server_name~^(www\.)?$; // 正则匹配 , 都能匹配到

#charset koi8-r;

#access_log logs/host.access.log main;

location / {

root /home/hanstore;

index index.html index.htm;

}

location /music/ {

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_set_header Host $http_host;

proxy_set_header X-NginX-Proxy true;

proxy_pass http://127.0.0.1:8080/;

}

location /2048/ {

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_set_header Host $http_host;

proxy_set_header X-NginX-Proxy true;

proxy_pass http://127.0.0.1:2048/;

}

......

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。