我遇到了一个问题,甚至不知道如何开始诊断它。
我当前的服务器设置如下;
Ubuntu 16.04,Apache 2.4,PHP7.0-FPM,Mysql 5.6和Varnish 4.
Apache侦听端口443,Varnish侦听端口80.端口443的请求是端口80上的ProxyPass到Varnish,如下所示(vhost片段)。
ProxyPreserveHost On
ProxyPass / http://127.0.0.1:80/
RequestHeader set X-Forwarded-Port "443"
RequestHeader set X-Forwarded-Proto "https"
RequestHeader set Ssl-Offloaded 1
Varnish随后提供静态内容,并在端口8080上将其他所有内容传递给Apache。
PHP请求由php-fpm处理,设置如下(vhost片段)。
<FilesMatch ".+\.ph(p[3457]?|t|tml)$">
SetHandler "proxy:unix:/run/php/php7.0-fpm.sock|fcgi://localhost"
</FilesMatch>
出于某种原因,当Varnish正在提供请求时,不时在浏览网站时,特别是在向购物车添加产品时,页面加载将持续几乎完美的60秒,然后再继续加载。在大多数情况下,加载速度非常快。但是当它挂起时,apache,varnish,php-fpm,mysql,包括php-fpm慢日志和mysql慢日志都没有显示任何错误。
当禁用Varnish时(滚动所有请求),我似乎无法重现错误。
如何查看阻碍请求或流程的内容?
我很难过去哪看?
答案 0 :(得分:0)