Nginx 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。它以其稳定性、丰富的功能集、简单的配置文件和低系统资源的消耗而闻名。
PHP 是一种广泛使用的开源脚本语言,特别适合于 Web 开发,并且可以嵌入 HTML 中。
在基于 Debian 的系统(如 Ubuntu)上:
sudo apt update
sudo apt install nginx php-fpm
在基于 Red Hat 的系统(如 CentOS)上:
sudo yum install epel-release
sudo yum install nginx php-fpm
编辑 PHP-FPM 的配置文件(通常是 /etc/php/7.x/fpm/pool.d/www.conf
),确保监听地址和 Nginx 配置一致。
listen = /var/run/php/php7.x-fpm.sock
创建一个新的 Nginx 站点配置文件,例如 /etc/nginx/sites-available/myphpsite
:
server {
listen 80;
server_name example.com;
root /var/www/html;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.x-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
启用该站点配置:
sudo ln -s /etc/nginx/sites-available/myphpsite /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
sudo systemctl restart php7.x-fpm
原因:可能是 Nginx 配置中的 PHP 处理部分有误。
解决方法:检查 location ~ \.php$
块是否正确配置了 fastcgi_pass
和 include snippets/fastcgi-php.conf;
。
原因:通常是由于 PHP-FPM 进程未启动或配置错误。
解决方法:
原因:Nginx 和 PHP-FPM 可能没有足够的权限访问网站文件。
解决方法:
通过以上步骤和解决方案,你应该能够成功地在腾讯云上部署 Nginx 并运行 PHP 应用程序。
领取专属 10元无门槛券
手把手带您无忧上云