Nginx配置PHP
时间: 2024-12-26 18:16:29 浏览: 17
### 如何配置Nginx与PHP集成
#### 安装必要的软件包
对于基于Debian/Ubuntu系统的服务器,可以使用如下命令来更新并安装`php-fpm`:
```bash
sudo apt update
sudo apt install php-fpm
```
这会安装最新版本的PHP以及FastCGI进程管理器(FPM)[^3]。
#### 启动和启用服务
在CentOS 7环境中,在完成上述安装之后,还需要启动`nginx`和`php-fpm`服务,并设置开机自启:
```bash
systemctl start nginx php-fpm && systemctl enable nginx php-fpm
```
此操作确保即使系统重启后这两个服务也能自动运行[^4]。
#### 修改Nginx配置文件以处理PHP请求
为了使Nginx能够识别`.php`扩展名并将这些请求传递给PHP-FPM进行解析,需编辑站点对应的Nginx配置文件。通常位于 `/etc/nginx/sites-available/default` 或者类似的路径下。添加或修改location块如下所示:
```nginx
server {
listen 80;
server_name localhost;
root /var/www/html;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.4-fpm.sock; # 根据实际环境调整版本号
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
```
这段配置指定了当遇到以`.php`结尾的URL时,应该通过Unix套接字连接到指定位置上的PHP-FPM实例来进行处理。
#### 测试配置
创建一个简单的PHP测试页放在网站根目录中,比如命名为 `info.php` ,其内容为:
```php
<?php
phpinfo();
?>
```
保存更改后的配置文件,并重新加载Nginx使其生效:
```bash
sudo systemctl reload nginx
```
现在可以通过浏览器访问这个新创建的信息页面(例如 http://your_server_ip/info.php),如果一切正常的话,将会看到详细的PHP配置信息列表[^2]。
阅读全文