nginx启动报500(nginx启动报错80端口没有权限)
nginx启动报错80端口没有权限
这个是nginx出现403 forbidden最常见的原因。为了保证文件能正确执行,nginx既需要文件的读权限,又需要文件所有父目录的可执行权限。
例如,当访问/usr/local/nginx/html/image.jpg时,nginx既需要image.jpg文件的可读权限,也需要/, /usr,/usr/local,/usr/local/nginx,/usr/local/nginx/html的可以执行权限。解决办法:设置所有父目录为755权限,设置文件为644权限可以避免权限不正确。
nginx 80端口访问不了
本机系统防火墙限制其他机器的访问
网络中的防火墙设备阻断外界访问
nginx只监听了本地的IP端口,如127.0.0.1:80这样其他机器访问不了,listen指令只写端口号即可绑定当前机器的所有IP
nginx启动后无法访问80端口
可以使用nginx部署在80端口,IIS和apache随便什么机器和端口都可以。
配置一下nginx,做反向代理就可以了。很好玩的
nginx配置8080端口
1 防火墙必须关闭:三个服务器的防火墙必须关闭
systemctl stop firewalld
systemctl status firewalld
firewall-cmd --state
2 nginx所在的服务器的selinux必须关闭
3 tomcat的webapps下必须有maven_cloud4.war
4 开启所有的tomcat:
由ip:8080/maven_cloud4通过tomcat访问
5 安装完nginx 通过ip:80访问nginx的首页 看看welcome
6 配置/etc/nginx/conf.d/cloud.conf(注意名字不能是:cloud.config)
upstream cloud4{
server 192.168.198.131:8080;
server 192.168.198.134:8080;
server 192.168.198.135:8080;
}
server
{
listen 80;
server_name 192.168.198.131;
location /mc4{
proxy_pass http://cloud4/maven_cloud4;
proxy_cookie_path /maven_cloud4 /mc4;
}
}
nginx端口无法访问
这是因为目标端口的启动引导参数特别大
nginx 80端口
把本机口的请求转发到本机8080端口代码: ip packet based : echo 1 > /proc/sys/net/ipv4/ip_forward iptables -I PREROUTING -t nat -p tcp --dport 80 -j REDIRECT --to-ports 8080
nginx 80端口被占用 但是没进程
回答本行业问题
Linux下服务一般是通过shell脚本来启动程序或者服务,在shell脚本启动时,可以使用命令来查询,本服务或程序端口是否被其他程序占用,可以使用netstat命令。
netstat
比如我们查询80端口是否被占用,命令如下:
[root@api ~]# netstat -anp|grep 80
从上面可以看出80端口已经被nginx监听。
netstat具体的参数如下,【-a】显示所有的socket连接,【-n】不使用域名,而使用ip显示,【-p】显示监听此socket的进程名称,【grep】是过滤包含80字符的匹配项。
简单函数封装
我们在写脚本时尽量将经常使用的脚本封装成函数,以便其他程序也可以调用这个函数,如下面的脚本,实现端口的查询函数【入参1=端口】:
我们用几个端口测试一下,可以看出上面我的端口被nginx占用
良好的编写代码习惯
在linux编程写程序时,尽量不要将监听的端口、IP、网卡接口等可能会发生变化的参数,写死到代码中,可以定义一个配置文件,把经常变化的参数写入配置文件,在程序启动或者调用时,加载配置文件来读取参数。
以上回答希望能够帮助到你。
本网站文章仅供交流学习 ,不作为商用, 版权归属原作者,部分文章推送时未能及时与原作者取得联系,若来源标注错误或侵犯到您的权益烦请告知,我们将立即删除.