RockyLinux替代CentOS
CentOS 8 停止维护后,RockyLinux 成为最受关注的兼容替代品。
如果你正打算把旧 CentOS 服务器迁移到 RockyLinux,并重新部署一套建站环境,这篇文章会从零开始,带你完成系统准备、LNMP 安装、站点配置和访问验证。
跟着做,你就能得到一个稳定可用的 Web 运行环境。
迁移前先确认这些事
RockyLinux 由 CentOS 创始人发起,与 RHEL 二进制兼容,命令和软件包管理方式几乎一致,因此原本在 CentOS 上的操作习惯可以继续沿用。
迁移前建议先确认:
- 原服务器上的数据已完成备份,包括网站文件、数据库和配置文件。
- 新服务器已安装 RockyLinux 最小化版本,并能通过 SSH 登录。
- 如果使用宝塔面板,建议直接安装宝塔 RockyLinux 版本,后续操作会更直观。
结论:RockyLinux 可以平滑替代 CentOS,但迁移前必须备份数据,并确保新系统网络和 SSH 正常。
搭建 LNMP 环境
这里以手动安装 Nginx + MySQL + PHP 为例,适合想了解底层细节的用户。
如果你更习惯面板操作,可跳过此节直接安装宝塔。
安装 Nginx
sudo dnf install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
执行后,浏览器访问服务器 IP,看到 Nginx 欢迎页即表示成功。
安装 MySQL
RockyLinux 默认仓库提供 MySQL 8.0,可直接安装:
sudo dnf install mysql-server -y
sudo systemctl start mysqld
sudo systemctl enable mysqld
sudo mysql_secure_installation
按提示设置 root 密码并移除匿名用户。
安装 PHP
RockyLinux 默认 PHP 版本较旧,建议启用 Remi 仓库安装 PHP 8.1:
sudo dnf install epel-release -y
sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm -y
sudo dnf module reset php
sudo dnf module enable php:remi-8.1
sudo dnf install php-fpm php-mysqlnd php-gd php-mbstring -y
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
验证:创建一个 PHP 测试文件
echo "" | sudo tee /usr/share/nginx/html/info.php
然后在 Nginx 配置中确保 PHP 请求被转发到 php-fpm,重启 Nginx 后访问 http://你的IP/info.php,能看到 PHP 信息页即成功。
配置网站与数据库
添加站点
在 /etc/nginx/conf.d/ 下新建配置文件,例如 example.com.conf:
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com;
index index.php index.html;
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;
}
}
创建站点目录并上传程序文件:
sudo mkdir -p /var/www/example.com
sudo chown -R nginx:nginx /var/www/example.com
重启 Nginx:sudo systemctl restart nginx。
创建数据库
sudo mysql -u root -p
CREATE DATABASE wordpress;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY '你的密码';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;
判断条件:如果网站程序需要连接数据库,请确保数据库用户权限正确,并测试连接。
避坑与高频问题
- 防火墙未放行端口:RockyLinux 默认启用 firewalld,需放行 80 和 443 端口。
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
- SELinux 导致权限错误:如果网站无法写入文件,可临时关闭 SELinux 或设置正确上下文。
sudo setenforce 0 # 临时关闭
# 或修改 /etc/selinux/config 永久关闭
- PHP-FPM 套接字路径不一致:不同版本路径可能不同,使用
sudo ss -lnp | grep php确认实际监听地址。 - MySQL 密码策略太严格:如果设置简单密码失败,可先降低密码验证策略。
结论:RockyLinux 下建站常见问题多与防火墙、SELinux 和权限有关,按上述命令逐一排查即可。
效果验证与日常维护
完成以上步骤后,访问你的域名或 IP,应该能看到网站首页。
如果使用 WordPress 等程序,按安装向导填写数据库信息即可。
日常维护建议:
- 定期执行
sudo dnf update更新系统补丁。 - 使用
systemctl status nginx和systemctl status mysqld检查服务状态。 - 监控磁盘和内存,避免因日志占满空间导致服务异常。
最后提醒:迁移前充分测试,生产环境操作前备份,遇到报错先看日志(Nginx 日志在 /var/log/nginx/,PHP 日志在 /var/log/php-fpm/)。
如果你在部署过程中遇到其他问题,欢迎回看避坑部分或搜索具体报错信息。