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 XXX.com; // 你的域名
#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_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/;
}
.......
3. 重启nginx
nginx -s reload
会提示ngnix不是可执行命令,为了方便,先增加环境变量
4.将nginx的启动路径加入到环境变量
A. 打开环境变量所在的文件
vim /etc/profile
B. 在命令模式下按GG至末尾,添加
#set for node.js
export NODE_HOME=/home/dc2-user/node
export PATH=$NODE_HOME/bin:$PATH#set for git
export PATH=/usr/local/git/bin:$PATH#set for nginx
export 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 music.awesomehan.com; // 匹配的二级域名地址
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\.)?awesomehan.com$; // 正则匹配 www.awesomehan.com, awesomehan.com都能匹配到
#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/;
}
......
Nginx反向代理 设置二级域名 (CentOS)相关推荐
- nginx反向代理实现二级域名转一级域名
需求场景: 有两个大项目交互必须在一级域名下,每个项目有多个前端,之前采用二级或三级域名的方式导致域名过多不好维护,故由project1.service1.city.com.project1.serv ...
- nginx 反向代理配置二级域名正确姿势!!!
1. 先解释下什么是反向代理? 反向代理是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代 ...
- Nginx反向代理,通过域名直接访问指定的端口,比如8080
Nginx反向代理,通过域名直接访问指定的端口,比如8080 今天写微信公众号开发网络授权的时候,通过域名加接口url的方式,始终访问不到指定的接口,最后想了很久,发现是Nginx反向代理没有配置! ...
- (转)Nginx反向代理设置 从80端口转向其他端口
from :http://www.cnblogs.com/wuyou/p/3455381.html Nginx反向代理设置 从80端口转向其他端口 反向代理(Reverse Proxy)方式是指以代理 ...
- Nginx反向代理多个域名
简介 由于公司内网有多台服务器的http服务要映射到公司外网静态IP,如果用路由的端口映射来做,就只能一台内网服务器的80端口映射到外网80端口,其他服务器的80端口只能映射到外网的非80端口.非80 ...
- docker启动nginx代理不上_Docker nginx 反向代理设置
文章目录 [隐藏] 缘起 方案一 方案二 延伸 缘起 最近在公司搭建了一个基于 Gogs 的代码管理系统,以及基于 Kanboard 的任务管理系统等几个内部系统.由于部署在同一台机器上,基于不同的端 ...
- 在一台win10系统的电脑里安装虚拟机运行CentOS7并实现nginx反向代理从而用域名访问本机的微服务项目
在虚拟机里的CentOS7安装配置nginx,之前需要一些依赖库作为编译安装的条件,具体作用和命令详情跳转我之前的博客. 安装并使用VMware-workstation-full-15.5.0安装Ce ...
- 为nginx反向代理设置自定义错误页面
注意要注意的是,这个场景是指,服务都下线了,只剩前台的起反向代理的nginx在运行.那么返回的是502 bad way状态码. 在server模块中配置, proxy_intercept_errors ...
- 入门Nginx之-反向代理实现二级域名转发
简介 前两天遇到开设子域名的问题,也就是二级域名,所以便开始对这方面进行了解.一直以为 www 开头的域名就是顶级域名,那真是太天真~~以 QQ 为例,顶级域名是 qq.com,而www.qq.com ...
最新文章
- 模板 -计算几何注意事项
- shareinstall之Android SDK集成
- kafka消息存储与partition副本原理(二)
- win32 数据类型 vs c#
- linux服务器运行matlab文件报错
- 蓝桥杯练习题十六进制转十进制
- Soft-Actor-Critic-强化学习算法
- 清晰版 构建最高可用oracle数据库系统.pdf,构建最高可用Oracle数据库系统
- 寄云-Paas云服务体验
- MySQL之mysql客户端工作的批处理一些使用手法
- svn显示html,而不是源代码
- Django数据库补充之事务
- eclipse中 将java项目转换为web项目
- 2440 6.0BSP 移植过程之显示驱动篇
- java中的nio是啥,java中的NIO
- 永恒之蓝(勒索病毒)
- 借助Excel批量重命名图片、文档,以及处理文件名中的空格问题(适合新手小白)
- C++ 多线程的创建和使用
- 拆分句子成为一个个单词,并统计各个单词的数量
- android 输入法 sd卡,关于安卓手机内置或外置SD卡中各文件夹的名称和作用