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 23:45
下一篇 2016-05-03 09:28

相关推荐

  • Linux网络管理命令的使用

    网络管理命令 ip命令 配置Linux网络属性:ip命令,不过该命令的操作只是临时操作,重启以后配置丢失 ip-show / manipulate routing, devices, policy routing and tunnels ip [ OPTIONS ] OBJECT { COMMAND | help }    &n…

    Linux干货 2016-09-11
  • 软件包管理和磁盘管理

    软件运行和编译 ABI :Application Binary Interface 应用程序二进制接口     Windows和Linux不兼容      PE格式   ELF格式 库级别的虚拟化:       Linu…

    2017-04-24
  • Linux发行版及哲学思想

    Linux各发行版以及哲学思想 什么是Linux 为什么会有不同的Linux发行版 现有主流发行版,及其他们之间相互关系 Linux所遵循的哲学思想 什么是Linux Linux是一种自由和开放源代码的Unix-like操作系统,由当时就读于芬兰赫尔辛基大学的Linus Torvalds于1991年10月5日首次发布于互联网。Linux遵循第二版GNU通用公…

    Linux干货 2016-10-29
  • 20本最好的Linux免费书籍

    前些天Neo推荐了一个网站有《超过100本的linux免费书籍》,这里,我也向大家推荐20本最好的Linux免费书籍,当然,也是英文版的。 1. Ubuntu Pocket Guide and Reference 一本介绍关于Ubuntu 8.04和8.10的使用书。 Website www.ubuntupocketguide.com Author Keir…

    Linux干货 2015-04-01
  • 8/10作业脚本

    1、编写脚本/root/bin/systeminfo.sh,显示当前主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小。 2、编写脚本/root/bin/backup.sh,可实现每日将/etc/目录备份到/root/etcYYYY-mm-dd中 3、编写脚本/root/bin/disk.sh,显示当前硬盘分区中空…

    Linux干货 2016-08-15
  • rsync3.0 (初稿 逐步完善)

    实验环境为 centos 7.2 系统   CentOS Linux release 7.2.1511 (Core)   主机  ip               10.1.250.19 客…

    Linux干货 2016-06-03