在腾讯云服务器的OpenCloudOS上安装LNMP(Linux + Nginx + MySQL/MariaDB + PHP)可以按照以下步骤进行。OpenCloudOS是基于CentOS的衍生版本,因此大部分操作与CentOS/RHEL兼容。
1. 准备工作
- 确保系统已更新:
sudo dnf update -y - 安装常用工具:
sudo dnf install -y wget curl vim git unzip
2. 安装Nginx
OpenCloudOS默认仓库可能没有最新版Nginx,建议从官方仓库安装:
# 添加Nginx官方仓库
sudo tee /etc/yum.repos.d/nginx.repo <<EOF
[nginx-stable]
name=nginx stable repo
baseurl=https://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
EOF
# 安装Nginx
sudo dnf install -y nginx
# 启动并设置开机自启
sudo systemctl start nginx
sudo systemctl enable nginx
验证Nginx是否运行:
curl http://localhost
3. 安装MySQL/MariaDB
选项1:安装MariaDB(推荐)
OpenCloudOS默认包含MariaDB:
sudo dnf install -y mariadb-server mariadb
# 启动并设置开机自启
sudo systemctl start mariadb
sudo systemctl enable mariadb
# 运行安全配置向导
sudo mysql_secure_installation
选项2:安装MySQL 8.0
如果需要MySQL,添加官方仓库:
# 添加MySQL官方仓库
sudo dnf install -y https://dev.mysql.com/get/mysql80-community-release-el8-4.noarch.rpm
# 安装MySQL
sudo dnf install -y mysql-community-server
# 启动并设置开机自启
sudo systemctl start mysqld
sudo systemctl enable mysqld
# 获取临时密码
sudo grep 'temporary password' /var/log/mysqld.log
# 运行安全配置
sudo mysql_secure_installation
4. 安装PHP
安装PHP 7.4/8.0+
OpenCloudOS默认仓库可能提供较旧版本,建议使用Remi仓库:
# 添加Remi仓库(以PHP 8.2为例)
sudo dnf install -y https://rpms.remirepo.net/enterprise/remi-release-8.rpm
sudo dnf module reset php
sudo dnf module enable php:remi-8.2
# 安装PHP及常用扩展
sudo dnf install -y php php-fpm php-mysqlnd php-opcache php-gd php-curl php-zip php-mbstring
# 启动PHP-FPM并设置开机自启
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
验证PHP版本:
php -v
5. 配置Nginx支持PHP
编辑Nginx默认配置文件:
sudo vim /etc/nginx/conf.d/default.conf
修改或添加以下内容:
server {
listen 80;
server_name _;
root /usr/share/nginx/html;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
location ~ .php$ {
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
测试配置并重启Nginx:
sudo nginx -t
sudo systemctl restart nginx
6. 测试PHP
创建测试文件:
echo "<?php phpinfo(); ?>" | sudo tee /usr/share/nginx/html/info.php
访问 http://服务器IP/info.php,应显示PHP信息页。
7. 防火墙配置(可选)
如果使用腾讯云安全组或防火墙,确保放行80端口:
sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --reload
常见问题
-
Nginx 403错误
检查目录权限:sudo chown -R nginx:nginx /usr/share/nginx/html -
PHP-FPM无法连接
确认PHP-FPM监听路径是否与Nginx配置一致(通常是/run/php-fpm/www.sock或127.0.0.1:9000)。 -
MySQL远程访问
如需远程连接,需修改MySQL绑定地址并授权用户:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码'; FLUSH PRIVILEGES;
通过以上步骤,你已成功在OpenCloudOS上部署LNMP环境。如需更简化安装,可考虑使用脚本(如lnmp.org的一键包),但需注意兼容性。
云服务器