nginx整合FastDFS中非80端口被禁止访问

整合nginx+fastDFS时,图片文件都能成功上传至fastDFS,但是生成的链接就是访问不到资源。

在确定各种配置都没问题之后。

又检查了一下nginx.conf配置,自己添加的如下配置,显然没有任何问题。

server {
        listen       81;
        server_name  localhost;
        location ~/group1/M00 {
            root /home/FastDFS/fdfs_storage/data;
            ngx_fastdfs_module;
        }
    }

经过分析,发现是服务器拒绝了浏览器的请求。

1、首先想到检查服务器防火墙,发现防火墙之前已经被我关闭。所以不是本机防火墙的问题。

2、由于用的是阿里云ECS服务器,之前有一次也遇到过端口不能访问的问题,想着去检查了一下安全组,打开对应端口。

做完上面两步,使用

./nginx -s reload

依旧被拒绝访问。

这可头疼死了,反复检查修改配置文件,反复使用./nginx -s reload,就是没反应。急死了个人。

聪明的小伙伴可能已经猜出来了,./nginx -s reload没错,就是他捣的鬼。我总想着刷新配置文件,反复使用这个命令,奈何就是没有卵用。

最后

ps -ef | grep nginx

找到nginx的两个进程,

kill -9 +两个进程的对应pid

强制干掉他们,当然也可以不那么暴力,也可以在sbin目录下使用./nginx -s quit关闭nginx。

最终在sbin目录下重新启动nginx

./nginx

问题解决。

reload不生效的可能原因:

1、nginx -s reload 是平滑重启,不会强制结束正在工作的连接,需要等所有连接都结束才会重启。而我当时就比较着急,不停的刷新,可能会有这方面原因。

2、reload遇到报错静默停止,后面跑的还是以前的进程。遇到这种情况,最好先用nginx -t查看配置文件,等配置文件success之后再使用nginx -s reload。我的配置文件没问题,所以应该是第一个出问题了。

当然 可以在sbin目录下用./nginx -t && ./nginx -s reload && sudo tail -f /var/log/nignx/error.log代替./nginx -s reload,就能避免很多问题了。

你可能感兴趣的:(问题记录,nginx,FastDFS,java)