记录nginx两种问题解决

1: recv错误

recv() failed (104: Connection reset by peer) while reading client request line
发生这种问题,主要是因为网络问题,在迁移 aizher.com 服务器过程中,碰到这样的问题,情况比较特殊,也是网络问题,但是不是网上描述本地网络端口冲突的问题。
出现这种问题原因是,西部数据的服务器上需要配置白名单,才能访问服务器,我之前只是做了DNS解析到西部数据的服务器上,
第一次客户端能够请到服务器上,但是,西部数据会马上把请求连接给重置,导致nginx提示连接充值,出现上述错误。
解决方案也很简单,直接在西部数据的服务器上添加白名单即可。(一开始知道白名单的事情,好长时间没搞,给忘记了)

2:js,图片被php执行。
在在迁移aizher.com 服务器过程中碰到的另外一个问题是,js,css,和图片被php执行(当然这是后来知道),一开始的时候,整个服务器的页面
都花掉了,页面样式全乱。并且是有些图片可以正常加载,而有的不能,png和jpg的都不能加载。当时因为是php配置问题,找了N久,没有找到原因。
后来

error_reporting = E_ALL & ~E_NOTICE
打开php的notice提示,发现,请求png图片时,报出php语法错误来,奇哉怪也,突然想到是nginx配置问题,所有的请求,都按php解析做的,原来的nginx配置是
server_name *.aizher.com;
        index index.html index.htm index.php;
        root /home/admin/web/;
 
        location \$ {
                fastcgi_pass    127.0.0.1:9000;
                fastcgi_index   index.php;
                include fastcgi_params;
                fastcgi_param   SCRIPT_FILENAME /home/admin/web/$fastcgi_script_name;
        }
找到原因后,调整如下
server_name *.aizher.com;
        index index.html index.htm index.php;
        root /home/admin/web/;
        if (!-e $request_filename) {
                rewrite  ^(.*)$  /index.php?s=$1  last;
        }
 
        location ~ .*\.(php|php5)?$ {
                fastcgi_pass    127.0.0.1:9000;
                fastcgi_index   index.php;
                include fastcgi_params;
                fastcgi_param   SCRIPT_FILENAME /home/admin/web/$fastcgi_script_name;
        }
 
        location /status {
                stub_status on;
                access_log   off;
        }
 
        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
        {
                expires      30d;
        }
 
        location ~ .*\.(js|css)?$
        {
                expires      12h;
        }

也许你会问,为什么不把之前的nginx拷贝过来直接使用。原因是,
1:这台服务器上还有其他服务,nginx文件不能直接覆盖,之前是使用的lnmp,这个这台服务器,都是从头搭建,也没有使用fpm,所以...。
2:大意失荆州,太小看这个问题,以为很容易就能搞定。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值