nginx配置多个端口监听(以及Permission denied问题处理)
nginx配置多个端口监听(以及Permission denied问题处理)
在使用nginx的时候,有时候我们需要配置多个端口来对应不同的服务去访问
首先我们找到nginx的配置文件
这里nginx我是用yum安装,所以默认的配置文件都在conf.d文件中
打开文件夹,我们看到default.conf文件,文件内容如下:
要想监听多个端口,我们只需要再写一个.conf文件,文件命名的时候我的建议是 服务名-监听端口号.conf (例:restService-88.conf)
server {
listen 88;
server_name localhost;
location / {
proxy_pass http://127.0.0.1:8081;
proxy_redirect default;
}
}
然后将文件放到conf.d目录下
然后我们验证配置是否正确( nginx -t ),下图说明配置文件木有问题
然后我们重启nginx(service nginx restart ),基本上就可以好了,重启完我们查一下端口,端口都已经被nginx监听
当然再重启nginx的时候也会报权限不足
Starting nginx: nginx: [emerg] bind() to 0.0.0.0:**** failed (13: Permission denied)
权限拒绝,经检查发现是开启selinux 导致的,CentOS中这个是默认开启的,所以我们需要将其关闭
首先输入 getenforce 看selinux是否开启
如果输出 disabled 或 permissive 那就是关闭了
如果输出 enforcing 那就是开启了 selinux
关闭方法
1.临时关闭
setenforce 0 ##设置SELinux 成为permissive模式
setenforce 1 ##设置SELinux 成为enforcing模式
[root@molake~]# getenforce
Enforcing
[root@molake ~]# setenforce 0
[root@molake ~]# getenforce
Permissive
2.永久关闭
修改vim /etc/selinux/config 文件
将SELINUX=enforcing改为SELINUX=disabled
source /etc/selinux/config 使更改的配置立即生效 ,下图修改成功,然后重启nginx问题解决
作者:zanlichou9274
来源链接:https://blog.csdn.net/zanlichou9274/article/details/83352579
版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。
2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。