我在让nginx在子域上工作时遇到了一些麻烦。我在conf
中有两个/etc/nginx/conf.d/
文件如下(第一次编辑中的一些细节):
mydomain.conf
:网站正确,server_name
mydomain.com
和www.mydomain.com
:
server {
listen 80;
root /var/www/sites/mydomain;
index index.php;
server_name mydomain.com www.mydomain.com;
access_log /var/log/nginx/mydomain.access.log;
error_log /var/log/nginx/mydomain.error.log;
...
}
phpmyadmin.conf
:
server {
listen 80;
root /var/www/sites/phpmyadmin;
index index.php;
server_name pma.mydomain.com;
access_log /var/log/nginx/phpmyadmin.access.log;
error_log /var/log/nginx/phpmyadmin.error.log;
location / {
index index.php;
}
location ~* \.php$ {
try_files $uri =404;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
目前,/var/www/sites/phpmyadmin
只包含一个index.php
,其中包含<?php phpinfo(): ?>
,而不包含任何内容。这是在EC2实例上,我正在尝试从另一台计算机加载页面,其中mydomain.com
和pma.mydomain.com
都设置为我/etc/hosts
中的IP地址。
导航到mydomain.com
完全正常,PHP可以正常工作等。但是当我导航到子域时,它会挂起。对于任何其他子域,连接立即失败(没有DNS记录)。但对于pma
,它根本无法加载。
pma
的我的日志文件为空且无用。我不知道如何调试这种无声的失败,这让我感到疯狂。
答案 0 :(得分:0)
在php-fpm
运行的FastCGI处理程序(您使用的是127.0.0.1:9000
吗?)可能存在问题 - 是否正在运行并接受连接?
通过SSH连接到该计算机并运行:
进行调试 curl -vv http://127.0.0.1:9000/
会发生什么?