PHP在Linux环境下如何部署
导读:PHP在Linux环境下的部署流程 1. 更新系统软件包 部署前需确保系统软件包为最新版本,避免兼容性问题。根据Linux发行版选择对应命令: Debian/Ubuntu:sudo apt update && sudo a...
PHP在Linux环境下的部署流程
1. 更新系统软件包
部署前需确保系统软件包为最新版本,避免兼容性问题。根据Linux发行版选择对应命令:
- Debian/Ubuntu:
sudo apt update & & sudo apt upgrade -y
- CentOS/RHEL:
sudo yum update -y
2. 安装PHP及核心扩展
根据Web服务器类型(Apache/Nginx)选择安装组合,确保包含PHP核心、常用扩展及Web服务器模块:
- Apache + PHP(LAMP环境):
- Debian/Ubuntu:
sudo apt install apache2 php libapache2-mod-php php-mysql php-gd php-mbstring php-curl -y
- CentOS/RHEL:
sudo yum install httpd php php-mysqlnd php-gd php-mbstring php-curl -y
- Debian/Ubuntu:
- Nginx + PHP(LNMP环境):
- Debian/Ubuntu:
sudo apt install nginx php-fpm php-mysql php-gd php-mbstring php-curl -y
- CentOS/RHEL:
sudo yum install nginx php php-fpm php-mysqlnd php-gd php-mbstring php-curl -y
- Debian/Ubuntu:
3. 配置Web服务器支持PHP
Apache配置(LAMP)
- 启用PHP模块:
sudo a2enmod php7.x
(将7.x
替换为实际PHP版本,如php7.4
) - 配置虚拟主机:编辑默认站点配置文件(
/etc/apache2/sites-available/000-default.conf
),确保DocumentRoot
指向应用目录(如/var/www/html
),并添加以下指令允许PHP解析:< Directory /var/www/html> Options Indexes FollowSymLinks AllowOverride All Require all granted < /Directory>
- 重启服务:
sudo systemctl restart apache2
Nginx配置(LNMP)
- 修改站点配置:编辑默认站点配置文件(
/etc/nginx/sites-available/default
),在server
块中添加PHP处理规则:location ~ \.php$ { fastcgi_pass unix:/run/php/php7.x-fpm.sock; # 替换为实际PHP-FPM套接字路径 fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
- 重启服务:
sudo systemctl restart nginx
4. 配置PHP-FPM(仅Nginx需要)
若使用Nginx,需调整PHP-FPM进程用户(默认www-data
或nginx
),确保与Web服务器用户一致:
- 编辑配置文件(
/etc/php/7.x/fpm/pool.d/www.conf
),修改以下参数:user = nginx group = nginx listen.owner = nginx listen.group = nginx
- 重启PHP-FPM:
sudo systemctl restart php7.x-fpm
5. 部署PHP应用代码
将应用文件上传至Web服务器根目录(默认路径):
- Apache:
/var/www/html
- Nginx:
/usr/share/nginx/html
或/var/www/html
可使用scp
、FTP
或Git等工具传输文件,例如:
scp -r /local/app/path user@server_ip:/var/www/html
6. 验证PHP环境
创建测试文件info.php
(内容:<
?php phpinfo();
?>
),放置在Web根目录。通过浏览器访问http://server_ip/info.php
,若显示PHP版本及扩展信息,则说明部署成功。
7. 配置数据库(可选但常用)
若应用需要数据库(如MySQL/MariaDB):
- 安装数据库:
- Debian/Ubuntu:
sudo apt install mysql-server -y
- CentOS/RHEL:
sudo yum install mariadb-server -y
- Debian/Ubuntu:
- 初始化并设置安全配置:
sudo mysql_secure_installation
(设置root密码、移除匿名用户、禁止远程root登录等) - 创建数据库和用户:登录MySQL(
sudo mysql -u root -p
),执行以下SQL:CREATE DATABASE your_database; CREATE USER 'your_user'@'localhost' IDENTIFIED BY 'strong_password'; GRANT ALL PRIVILEGES ON your_database.* TO 'your_user'@'localhost'; FLUSH PRIVILEGES; EXIT;
8. 安全加固(可选但推荐)
- 启用HTTPS:使用Let’s Encrypt免费证书,通过Certbot工具配置SSL(
sudo apt install certbot python3-certbot-nginx
或certbot python3-certbot-apache
)。 - 配置防火墙:允许HTTP(80)和HTTPS(443)端口,例如Ubuntu使用
ufw
:sudo ufw allow 'Apache Full'
或sudo ufw allow 'Nginx Full'
。 - 定期更新:设置自动更新,及时修复安全漏洞(
sudo apt install unattended-upgrades
或sudo yum install yum-cron
)。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: PHP在Linux环境下如何部署
本文地址: https://pptw.com/jishu/725955.html