tcpdump诊断nginx问题

自从上级公司离职后,快一年的时间没有写php程序和搭建LNMP环境,一直在做db运维和运维工具开发方面的事情。

最近决定开发开发一些自动话方面工具,重新拾起php,于是在测试机上搭建一个LNMP环境。

1、 nginx 404错误

一般的出现404错误,找不到页面资源。首先用strace排除了存在文件访问权限的问题,其次nginx的root参数设置也没有任何问题。

在配置好nginx和vhost之后,发现一直出现404错误和提示“File Not found”.

2015/02/05 15:28:56 [error] 15627#0: *14 FastCGI sent in stderr: "Primary script unknown" while reading response header 
from upstream, client: 127.0.0.1, server: localhost, request: "GET /index.php HTTP/1.1", upstream: 
"fastcgi://127.0.0.1:9000", host: "localhost"

请教了一下同事斌哥,他用tcpdump抓包发现问题, 发现SCRIPT_FILENAME参数多出了一个script.

# 错误的配置
fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
# 正确的配置
fastcgi_param  SCRIPT_FILENAME  $fastcgi_script_name;

通过tcpdump抓取php-fpm的9000端口的接受到的请求。

2、tcdump分析http报文头部数据

tcpdump -Xx -i any -nn port 9000

从下面的数据发现,资源路径多出了一个scripts。

1.png

转自:http://mdba.cn/?p=729

原创文章,作者:s19930811,如若转载,请注明出处:http://www.178linux.com/2463

(1)
s19930811s19930811
上一篇 2016-05-01
下一篇 2016-05-03

相关推荐

  • 马哥教育网络班20期+第6周课程练习

    请详细总结vim编辑器的使用并完成以下练习题 vim三种模式: 用法:vim [option…] FILE 编辑模式:     字符跳转:         h:向左移动一个字符     &…

    系统运维 2016-07-22
  • CentOS启动流程排错

    grub legacy配置文件:/boot/grub/grub.conf     default=#: 设定默认启动的菜单项;落单项(title)编号从0开始      timeout=#:指定菜单项等待选项选择的时长     &…

    Linux干货 2016-09-13
  • Linux grep与正则表达式浅析

    #Linux grep与正则表达式浅析 ##grep   grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。 ###grep语法    &n…

    Linux干货 2017-04-06
  • linux运维

    linux运维大纲,学习路线图

    Linux干货 2017-10-21
  • 设计模式(七)组合模式Composite(结构型)

    1. 概述 在数据结构里面,树结构是很重要,我们可以把树的结构应用到设计模式里面。 例子1:就是多级树形菜单。 例子2:文件和文件夹目录 2.问题 我们可以使用简单的对象组合成复杂的对象,而这个复杂对象有可以组合成更大的对象。我们可以把简单这些对象定义成类,然后定义一些容器类来存储这些简单对象。客户端代码必须区别对象简单对象和容器对象,而实际上大多数情况下用…

    Linux干货 2015-07-01
  • bash的重定向

    一、简介         bash的数据流重定向(redirect)是将程序的执结果重新定向到另一文件或者设备。或者把一文件重定向给一程序作为数据来源。默认情况下,命令的执行结果显示在屏幕上。文件系统中,分为:标准输入,标准输出,错误输出。 二、用法   &n…

    Linux干货 2015-08-11