配置PHP服务器通常涉及安装Web服务器(如Apache或Nginx)、PHP及必要的扩展,以下是详细步骤:

安装Web服务器
Apache (Ubuntu/Debian)
sudo apt update sudo apt install apache2 sudo systemctl enable apache2
Nginx (Ubuntu/Debian)
sudo apt update sudo apt install nginx sudo systemctl enable nginx
安装PHP及扩展
# 添加PHP仓库(以PHP 8.1为例) sudo apt install software-properties-common sudo add-apt-repository ppa:ondrej/php sudo apt update # 安装PHP核心和常用扩展 sudo apt install php8.1 php8.1-fpm php8.1-mysql php8.1-curl php8.1-gd php8.1-mbstring php8.1-xml php8.1-zip
配置Web服务器
Apache 配置
- 启用PHP模块:
sudo a2enmod php8.1
- 修改默认文件优先级(优先解析
.php):sudo nano /etc/apache2/mods-enabled/dir.conf
将
index.php移到最前:<IfModule mod_dir.c> DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm </IfModule> - 重启Apache:
sudo systemctl restart apache2
Nginx 配置
- 编辑站点配置文件:
sudo nano /etc/nginx/sites-available/default
- 在
server块中添加PHP支持:location ~ .php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php8.1-fpm.sock; # 确认PHP版本路径 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } - 测试配置并重启Nginx:
sudo nginx -t sudo systemctl restart nginx
配置PHP
核心设置
编辑 php.ini:
sudo nano /etc/php/8.1/fpm/php.ini # Nginx使用 sudo nano /etc/php/8.1/apache2/php.ini # Apache使用
常用修改项:

upload_max_filesize = 32M post_max_size = 48M memory_limit = 256M max_execution_time = 300 date.timezone = Asia/Shanghai
重启服务
# Apache sudo systemctl restart apache2 # Nginx + PHP-FPM sudo systemctl restart nginx php8.1-fpm
测试PHP
创建测试文件:
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
访问 http://your-server-ip/info.php,确认显示PHP信息页。
安全加固
- 删除测试文件:
sudo rm /var/www/html/info.php
- 防火墙规则:
sudo ufw allow 80/tcp # HTTP sudo ufw allow 443/tcp # HTTPS
虚拟主机配置(可选)
Apache
sudo nano /etc/apache2/sites-available/example.com.conf
```示例:
```apache
<VirtualHost *:80>
ServerName example.com
DocumentRoot /var/www/example.com
<Directory /var/www/example.com>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
启用站点:

sudo a2ensite example.com.conf sudo systemctl reload apache2
Nginx
sudo nano /etc/nginx/sites-available/example.com
```示例:
```nginx
server {
listen 80;
server_name example.com;
root /var/www/example.com;
index index.php index.html;
location / {
try_files $uri $uri/ =404;
}
location ~ .php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
}
}
启用站点:
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/ sudo nginx -t && sudo systemctl reload nginx
故障排除
- 检查服务状态:
sudo systemctl status apache2 nginx php8.1-fpm
- 查看日志:
tail -f /var/log/apache2/error.log # Apache tail -f /var/log/nginx/error.log # Nginx journalctl -u php8.1-fpm # PHP-FPM
按照以上步骤,即可完成PHP服务器的配置,根据实际需求调整Web服务器类型、PHP版本及扩展。
图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/294372.html

