您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
# Nginx如何部署PHP7项目
## 前言
在当今的Web开发中,Nginx和PHP的组合已成为高性能网站的主流选择之一。Nginx以其高效的事件驱动架构著称,而PHP7则带来了显著的性能提升。本文将详细介绍如何在Linux系统上使用Nginx部署PHP7项目,涵盖环境配置、Nginx虚拟主机设置以及常见问题排查等内容。
---
## 一、环境准备
### 1.1 系统要求
- Linux操作系统(推荐Ubuntu 20.04/CentOS 7+)
- 已安装Nginx(版本1.18+)
- PHP7(7.2及以上版本)
- MySQL/MariaDB(可选,用于数据库支持)
### 1.2 安装必要组件
#### Ubuntu/Debian系统
```bash
# 更新软件包列表
sudo apt update
# 安装Nginx
sudo apt install nginx -y
# 安装PHP7及常用扩展
sudo apt install php7.4-fpm php7.4-mysql php7.4-curl php7.4-gd php7.4-mbstring php7.4-xml php7.4-zip -y
# 添加EPEL仓库
sudo yum install epel-release -y
# 安装Nginx
sudo yum install nginx -y
# 安装PHP7及扩展
sudo yum install php74-php-fpm php74-php-mysqlnd php74-php-curl php74-php-gd php74-php-mbstring -y
systemctl status php7.4-fpm # Ubuntu
systemctl status php74-php-fpm # CentOS
编辑配置文件(路径可能因系统而异):
sudo nano /etc/php/7.4/fpm/pool.d/www.conf # Ubuntu
sudo nano /etc/opt/remi/php74/php-fpm.d/www.conf # CentOS
关键参数调整:
listen = /run/php/php7.4-fpm.sock # 使用Unix socket
; listen = 127.0.0.1:9000 # 或使用TCP端口
user = www-data
group = www-data
pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 10
sudo systemctl restart php7.4-fpm
sudo mkdir -p /var/www/example.com/public_html
sudo chown -R www-data:www-data /var/www/example.com
创建Nginx配置文件:
sudo nano /etc/nginx/sites-available/example.com
示例配置:
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com/public_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 unix:/run/php/php7.4-fpm.sock;
# fastcgi_pass 127.0.0.1:9000; # 如果使用TCP方式
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
access_log /var/log/nginx/example.com.access.log;
error_log /var/log/nginx/example.com.error.log;
}
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
sudo nginx -t # 测试配置
sudo systemctl restart nginx
将PHP项目文件上传至:
/var/www/example.com/public_html/
sudo chmod -R 755 /var/www
sudo chown -R www-data:www-data /var/www/example.com
创建测试文件:
echo "<?php phpinfo(); ?>" > /var/www/example.com/public_html/info.php
访问 http://your_server_ip/info.php
应显示PHP信息页。
编辑 php.ini
:
disable_functions = exec,passthru,shell_exec,system,proc_open,popen
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d example.com -d www.example.com
sudo ufw allow 'Nginx Full'
sudo ufw enable
fastcgi_pass
路径正确tail -f /var/log/nginx/error.log
sudo apt install php7.4-opcache
通过以上步骤,您已成功在Nginx上部署了PHP7项目。这种组合不仅能提供出色的性能,还能通过灵活的配置满足各种需求。建议定期检查服务器日志并保持软件更新,以确保系统安全稳定运行。
注意:本文基于Ubuntu系统编写,其他Linux发行版可能需要调整部分命令和路径。 “`
(全文约1700字)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。