📝 在Linux VPS上安装WordPress
本指南介绍如何在Linux VPS上安装WordPress。WordPress是世界上最流行的内容管理系统(CMS),被数百万个网站使用。
⚠️ 重要警告
📋 先决条件
- 具有root或sudo访问权限的Linux VPS
- 至少1 GB RAM(WordPress建议2 GB)
- 至少10 GB可用磁盘空间
- 指向您VPS IP的域名
- 防火墙中开放端口80(HTTP)和443(HTTPS)
💡 基础设施推荐
为了获得最佳的WordPress性能,我们推荐使用我们的NVMe VPS用于中等流量网站,或我们的性能VPS用于需要大量CPU资源的高流量网站。NVMe驱动器可显著加速页面加载和数据库操作。
🔧 方法1:使用LAMP(Apache)安装
步骤1:更新系统
# 更新软件包列表 sudo apt update # 更新已安装的软件包 sudo apt upgrade -y
步骤2:安装Apache
# 安装Apache sudo apt install -y apache2 # 启动Apache sudo systemctl start apache2 # 启用Apache开机自启 sudo systemctl enable apache2 # 检查状态 sudo systemctl status apache2
步骤3:安装MySQL
# 安装MySQL Server sudo apt install -y mysql-server # 启动MySQL sudo systemctl start mysql # 启用MySQL开机自启 sudo systemctl enable mysql # 保护MySQL安装 sudo mysql_secure_installation
在保护过程中,您需要:
- 设置MySQL的root密码
- 删除匿名用户
- 禁用远程root登录
- 删除测试数据库
- 重新加载权限
步骤4:创建WordPress数据库
# 连接到MySQL sudo mysql -u root -p
在MySQL中,运行以下命令:
-- 创建数据库 CREATE DATABASE wordpress_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; -- 为WordPress创建用户 CREATE USER 'wordpress_user'@'localhost' IDENTIFIED BY '您的安全密码123!'; -- 授予用户所有权限 GRANT ALL PRIVILEGES ON wordpress_db.* TO 'wordpress_user'@'localhost'; -- 应用更改 FLUSH PRIVILEGES; -- 退出MySQL EXIT;
步骤5:安装PHP和必需的扩展
# 安装PHP和WordPress所需的扩展 sudo apt install -y php php-mysql php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip libapache2-mod-php # 检查PHP版本 php -v
WordPress需要PHP 7.4或更高版本。要安装特定版本:
# 对于PHP 8.1(推荐) sudo apt install -y php8.1 php8.1-mysql php8.1-curl php8.1-gd php8.1-mbstring php8.1-xml php8.1-xmlrpc php8.1-soap php8.1-intl php8.1-zip libapache2-mod-php8.1
步骤6:下载WordPress
# 转到临时目录 cd /tmp # 下载最新版本的WordPress curl -O https://wordpress.org/latest.tar.gz # 解压存档 tar xzf latest.tar.gz # 将WordPress复制到Web目录 sudo cp -r wordpress/* /var/www/html/ # 设置正确的权限 sudo chown -R www-data:www-data /var/www/html sudo chmod -R 755 /var/www/html
步骤7:配置WordPress
# 创建配置文件 cd /var/www/html sudo cp wp-config-sample.php wp-config.php # 编辑配置文件 sudo nano wp-config.php
使用您的数据库信息修改以下行:
define( 'DB_NAME', 'wordpress_db' ); define( 'DB_USER', 'wordpress_user' ); define( 'DB_PASSWORD', '您的安全密码123!' ); define( 'DB_HOST', 'localhost' );
还添加这些安全行(生成唯一密钥):
define('AUTH_KEY', '在此生成唯一密钥'); define('SECURE_AUTH_KEY', '在此生成唯一密钥'); define('LOGGED_IN_KEY', '在此生成唯一密钥'); define('NONCE_KEY', '在此生成唯一密钥'); define('AUTH_SALT', '在此生成唯一密钥'); define('SECURE_AUTH_SALT', '在此生成唯一密钥'); define('LOGGED_IN_SALT', '在此生成唯一密钥'); define('NONCE_SALT', '在此生成唯一密钥');
您可以在以下位置生成唯一密钥:https://api.wordpress.org/secret-key/1.1/salt/
步骤8:为WordPress配置Apache
# 启用rewrite模块 sudo a2enmod rewrite # 编辑Apache配置 sudo nano /etc/apache2/sites-available/000-default.conf
添加或修改<Directory /var/www/html>部分:
<Directory /var/www/html> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory>
重启Apache:
sudo systemctl restart apache2
步骤9:通过Web界面完成安装
- 打开您的浏览器
- 转到:
http://您的IP或http://您的域名.com - 按照WordPress安装向导:
- 选择您的语言
- 填写网站信息(标题、管理员用户、电子邮件、密码)
- 点击安装WordPress
🔧 方法2:使用LEMP(Nginx)安装
步骤1:安装Nginx
# 安装Nginx sudo apt install -y nginx # 启动Nginx sudo systemctl start nginx # 启用Nginx开机自启 sudo systemctl enable nginx
步骤2:安装MySQL(与LAMP方法相同)
按照LAMP方法的步骤3和4安装MySQL并创建数据库。
步骤3:安装PHP-FPM
# 安装PHP-FPM和扩展 sudo apt install -y php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip # 对于PHP 8.1 sudo apt install -y php8.1-fpm php8.1-mysql php8.1-curl php8.1-gd php8.1-mbstring php8.1-xml php8.1-xmlrpc php8.1-soap php8.1-intl php8.1-zip
步骤4:下载WordPress
按照LAMP方法的步骤6下载并安装WordPress。
步骤5:为WordPress配置Nginx
# 为您的网站创建配置文件 sudo nano /etc/nginx/sites-available/wordpress
添加以下配置(将您的域名.com替换为您的域名):
server { listen 80; listen [::]:80; server_name 您的域名.com www.您的域名.com; root /var/www/html; index index.php index.html index.htm; location / { try_files $uri $uri/ /index.php?$args; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php8.1-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location ~ /\.ht { deny all; } }
启用网站:
# 创建符号链接 sudo ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/ # 测试配置 sudo nginx -t # 重启Nginx sudo systemctl restart nginx
步骤6:配置WordPress
按照LAMP方法的步骤7和9配置WordPress。
🔒 保护WordPress
1. 更改文件权限
# 文件权限 sudo find /var/www/html -type f -exec chmod 644 {} \; # 目录权限 sudo find /var/www/html -type d -exec chmod 755 {} \; # wp-config.php的特殊权限 sudo chmod 600 /var/www/html/wp-config.php
2. 使用Let's Encrypt安装SSL证书
# 安装Certbot sudo apt install -y certbot python3-certbot-apache # 对于Nginx:sudo apt install -y certbot python3-certbot-nginx # 获取SSL证书 sudo certbot --apache -d 您的域名.com -d www.您的域名.com # 对于Nginx:sudo certbot --nginx -d 您的域名.com -d www.您的域名.com # 自动续订 sudo certbot renew --dry-run
3. 配置防火墙
# 允许HTTP和HTTPS sudo ufw allow 'Apache Full' # 对于Nginx:sudo ufw allow 'Nginx Full' # 或手动 sudo ufw allow 80/tcp sudo ufw allow 443/tcp
4. 限制登录尝试
安装WordPress安全插件,如:
- Wordfence Security
- iThemes Security
- Sucuri Security
5. 禁用通过界面编辑文件
在wp-config.php中添加:
define('DISALLOW_FILE_EDIT', true);
🔄 WordPress更新
通过WordPress界面
- 登录WordPress管理后台
- 转到仪表板 → 更新
- 点击立即更新
通过WP-CLI(命令行)
# 安装WP-CLI curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar chmod +x wp-cli.phar sudo mv wp-cli.phar /usr/local/bin/wp # 更新WordPress cd /var/www/html sudo -u www-data wp core update sudo -u www-data wp plugin update --all sudo -u www-data wp theme update --all
📦 推荐的插件
- Yoast SEO:搜索引擎优化
- Wordfence Security:安全和保护
- UpdraftPlus:自动备份
- W3 Total Cache:缓存以提高性能
- Contact Form 7:联系表单
❓ 常见问题
错误"Error establishing a database connection"
解决方案:
- 检查
wp-config.php中的凭据 - 检查MySQL是否已启动:
sudo systemctl status mysql - 测试连接:
mysql -u wordpress_user -p wordpress_db
固定链接上的404错误
对于Apache:
# 检查mod_rewrite是否已启用 sudo a2enmod rewrite sudo systemctl restart apache2
对于Nginx: 检查try_files配置是否正确。
权限问题
# 修复权限 sudo chown -R www-data:www-data /var/www/html sudo find /var/www/html -type d -exec chmod 755 {} \; sudo find /var/www/html -type f -exec chmod 644 {} \;
📝 有用命令
# 检查服务状态 sudo systemctl status apache2 # 或nginx sudo systemctl status mysql # 重启服务 sudo systemctl restart apache2 # 或nginx sudo systemctl restart mysql # 查看Apache日志 sudo tail -f /var/log/apache2/error.log # 查看Nginx日志 sudo tail -f /var/log/nginx/error.log # 查看PHP-FPM日志 sudo tail -f /var/log/php8.1-fpm.log
📞 需要帮助?
如果您在安装WordPress时遇到困难,请联系Infrawire支持。我们的团队随时为您提供帮助。
注意: 为了获得更好的WordPress体验,包括专业支持、自动备份和预配置优化,请考虑我们的WordPress专用网站托管。