服务器在 Amazon Linux AMI** 上运行(类似于 redhat),
我按照以下说明进行安装使用 Amazon Linux AMI 在 EC2 上安装 PHP-FPM、Nginx 和 MySQL
如果我直接从服务器 IP 地址调用,它就可以正常工作174.129.213.152/index.php
,并且可以正确访问来自我的域的其他文件,http://gamebiz.asia/robots.txt
问题是当我调用 php 文件时http://gamebiz.asia
,http://gamebiz.asia/index.php
它们的结果为空白页。
我尝试将配置从更改
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
为fastcgi_pass 127.0.0.1:9000;
,fastcgi_pass localhost:9000;
当我调用 php 文件时,结果是“502 Bad Gateway”,如果我删除,fastcgi_pass
我得到的是“下载”文件而不是执行 php 文件
配置
conf.d/default.conf
server{
location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml|mp3|ogg|wav|aac)$ {
access_log off;
log_not_found off;
expires max;
}
location ~* \.php$ {
fastcgi_index index.php;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
include /etc/nginx/fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}
server_tokens off;
}
站点可用/gamebiz.asia.conf
server {
server_name www.gamebiz.asia;
rewrite ^(.*) http://gamebiz.asia$1 permanent;
}
server {
listen 80;
server_name gamebiz.asia;
root /var/www/html/SpotDiff/Release;
index index.php index.html;
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
include /etc/nginx/fastcgi_params;
}
}
我尝试配置虚拟主机和子域名安装 NGINX 和 PHP-FPM - NGINX 设置
他们说我需要为 PHP-FPM 设置不同的 UNIX 套接字,/etc/php5/fpm/pool.d/
不幸的是,Amazon Linux AMI 没有 apt-get,我没有目录/etc/php5/fpm/pool.d/
,我搜索了pool.d
但不知道如何获取此文件和目录。
我最终将其更改fastcgi_pass
为unix:/var/run/php5-fpm/DOMAINNAME.socket;
默认设置unix:/var/run/php-fpm/php-fpm.sock;
,但仍然得到空白页。
请帮助我,我为此奋斗了整整 3 天。我将不胜感激任何帮助。谢谢。
答案1
似乎你失踪了
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
来自服务器名称 gamebiz.asia 的配置;配置块。