bash
sudo apt update && sudo apt upgrade -y
安装Nginx:
sudo apt install nginx -y
安装PHP和必要的扩展(以PHP 8.2为例):
sudo apt install php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip -y
编辑Nginx的PHP配置文件(通常位于/etc/nginx/sites-available/default
):
sudo nano /etc/nginx/sites-available/default
在server块中添加或修改以下内容:
server {
listen 80;
server_name your_domain_or_ip;
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:/run/php/php8.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}
测试Nginx配置是否正确:
sudo nginx -t
重启Nginx服务:
sudo systemctl restart nginx
创建一个测试PHP文件:
sudo nano /var/www/html/info.php
添加以下内容:
<?php phpinfo(); ?>
在浏览器中访问http://your_server_ip/info.php
,你应该能看到PHP信息页面
编辑PHP-FPM配置文件(通常位于/etc/php/8.2/fpm/pool.d/www.conf
):
sudo nano /etc/php/8.2/fpm/pool.d/www.conf
根据需要调整以下参数:
pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 10
重启PHP-FPM:
sudo systemctl restart php8.2-fpm
创建新的配置文件:
sudo nano /etc/nginx/sites-available/your_site
添加配置(类似上面的server块,但修改server_name和root路径)
创建符号链接:
sudo ln -s /etc/nginx/sites-available/your_site /etc/nginx/sites-enabled/
测试并重启Nginx:
sudo nginx -t && sudo systemctl restart nginx
删除测试文件:
sudo rm /var/www/html/info.php
配置防火墙:
sudo apt install ufw
sudo ufw allow 'Nginx Full'
sudo ufw enable
考虑安装SSL证书(使用Let's Encrypt):
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d your_domain.com
通过以上步骤,你应该已经成功在Debian系统上为PHP程序配置了Nginx服务器。