在当今的互联网时代,Nginx 和 PHP 是构建高性能网站和应用程序的常用工具,本文将详细介绍如何在 CentOS 系统上安装 Nginx 和 PHP,以便为你的服务器提供强大的后端支持。

安装 Nginx
Nginx 是一个高性能的 HTTP 和反向代理服务器,常用于提供静态文件和作为其他服务的代理。
1 安装 Yum 仓库
确保你的 CentOS 系统已经安装了 Yum 包管理器,添加 Nginx 的官方 Yum 仓库。
sudo yum install epel-release
2 安装 Nginx
使用 Yum 安装 Nginx。
sudo yum install nginx
3 启动和测试 Nginx
安装完成后,启动 Nginx 并测试它是否运行正常。
sudo systemctl start nginx sudo systemctl enable nginx sudo systemctl status nginx
打开浏览器并访问 http://your-server-ip/,你应该能看到 Nginx 的默认欢迎页面。
安装 PHP
PHP 是一种广泛使用的服务器端脚本语言,用于开发动态网站和应用程序。
1 安装 PHP
使用 Yum 安装 PHP 及其相关模块。
sudo yum install php php-fpm php-mysqlnd
2 配置 PHP-FPM
PHP-FPM 是 PHP 的 FastCGI 处理器,用于处理 PHP 脚本。

编辑 PHP-FPM 的配置文件:
sudo vi /etc/php-fpm.conf
找到并修改以下行:
; pm = static pm = dynamic
重新启动 PHP-FPM 服务。
sudo systemctl restart php-fpm
3 配置 Nginx 以支持 PHP
编辑 Nginx 的配置文件:
sudo vi /etc/nginx/nginx.conf
找到 http 块,并添加以下配置:
server {
listen 80;
server_name your-server-ip;
root /usr/share/nginx/html;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
} 保存并退出编辑器。
4 重启 Nginx
重启 Nginx 以应用新的配置。
sudo systemctl restart nginx
FAQs
Q1: 如何检查 Nginx 和 PHP 是否已正确安装?

A1: 你可以通过访问 http://your-server-ip/ 来检查 Nginx 是否运行正常,对于 PHP,你可以创建一个简单的 PHP 文件(/usr/share/nginx/html/info.php),并添加以下内容:
<?php phpinfo(); ?>
访问 http://your-server-ip/info.php,你应该能看到 PHP 的配置信息。
Q2: 如何在 Nginx 中配置多个网站?
A2: 你可以在 Nginx 的配置文件中添加多个 server 块来配置多个网站,每个 server 块代表一个网站,你可以为每个网站指定不同的域名或 IP 地址。
server {
listen 80;
server_name example1.com;
root /usr/share/nginx/html/example1;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
server {
listen 80;
server_name example2.com;
root /usr/share/nginx/html/example2;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
} 确保更新 Nginx 的配置文件并重启服务以应用更改。
