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

相关推荐

  • linux 基础目录配置及用途说明

    bin -> usr/bin 一般存放root和一般用户都可以使用的指令例如:cat, chmod, chown, date, mv, mkdir, cp, bash 等等常用的指令,同时还存放着单人维护模式下还能够被使用的指令。 boot  这个目录主要放置开机会使用到的文件,包括linux核心文件以及开机选单和开机所需要的配置文件。 de…

    Linux干货 2017-08-19
  • 10月18日作业–hash,history

    1 生产环境发现一台服务器系统时间产生偏差,造成服务异常,请帮忙校正。 1、使用ntpdate对时间进行同步,然后hwclock -w;并再建立Crontab每小时进行一次时间同步。 2 生产有一个数据同步脚本需要执行很长时间,怎样做到无人值守,在管理工具退出的情况下,脚本依然能正常运行。 1、载光盘 2、进入/mnt/Packages 安装共享screen…

    Linux干货 2016-10-19
  • Linux网络属性配置—ifcfg命令家族

    ifcfg命令家族:ifconfig,route,netstat 1、NAME               ifconfig – configure a network interface       SYNOPSIS   &n…

    Linux干货 2016-11-27
  • 关于 进程和性能监控

            Linux系统状态的查看及管理工具:     pstree, ps, pidof, pgrep, top, htop, glance,pmap, vmstat, dstat, kill, pkill, job, bg, fg, nohup pstree命…

    系统运维 2016-09-11
  • 文本处理-三剑客-grep

    文本过滤
    grep [OPTIONS] PATTERN [FILE…]

    2018-03-16
  • linux基础学习-第九天(shell基础)

    2016-08-10 授课内容: shell脚本基础: 变量 运算 bash测试(数字测试、字符测试、文件测试、组合测试) read命令 变量作用: 1、数据存储格式 2、参与的运算 3、表示的数据范围 变量类型: 1、本地变量 2、环境(全局)变量 3、特殊变量     驼峰命名变量:每个单词一个字母大写 本地变量:…

    Linux干货 2016-08-11