在Ubuntu系统上搭建WordPress需要哪些步骤?

在Ubuntu系统上搭建WordPress主要分为以下步骤,您可以根据自己的需求选择 手动安装使用LAMP/LEMP一键脚本

一、准备工作

  1. 更新系统

    sudo apt update && sudo apt upgrade -y
  2. 获取域名并解析(可选但推荐)

    • 将域名A记录指向服务器IP

二、手动安装步骤(推荐学习使用)

1. 安装LAMP/LEMP环境

  • LAMP方案(Apache):

    sudo apt install apache2 mysql-server php php-mysql libapache2-mod-php php-cli php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip -y
  • LEMP方案(Nginx):

    sudo apt install nginx mysql-server php-fpm php-mysql php-cli php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip -y

2. 配置MySQL数据库

sudo mysql_secure_installation  # 安全设置,按提示操作
sudo mysql -u root -p

在MySQL中执行:

CREATE DATABASE wordpress_db;
CREATE USER 'wp_user'@'localhost' IDENTIFIED BY '强密码';
GRANT ALL PRIVILEGES ON wordpress_db.* TO 'wp_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

3. 安装并配置WordPress

cd /tmp
wget https://wordpress.org/latest.tar.gz
tar -xzvf latest.tar.gz
sudo mv wordpress /var/www/html/
sudo chown -R www-data:www-data /var/www/html/wordpress

4. 配置Web服务器

  • Apache

    sudo cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php
    sudo nano /etc/apache2/sites-available/wordpress.conf

    添加虚拟主机配置后启用:

    sudo a2ensite wordpress.conf
    sudo a2enmod rewrite
    sudo systemctl restart apache2
  • Nginx
    创建配置文件 /etc/nginx/sites-available/wordpress,参考以下基础配置:

    server {
      listen 80;
      server_name 您的域名或IP;
      root /var/www/html/wordpress;
      index index.php;
    
      location / {
          try_files $uri $uri/ /index.php?$args;
      }
    
      location ~ .php$ {
          include snippets/fastcgi-php.conf;
          fastcgi_pass unix:/var/run/php/php-fpm.sock;
      }
    }

    启用配置:

    sudo ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/
    sudo nginx -t && sudo systemctl reload nginx

5. 完成安装

  • 访问 http://服务器IP或域名
  • 按页面提示完成数据库信息填写和站点设置

三、快速安装方案(适合新手)

方案A:使用Tasksel一键安装

sudo apt install tasksel
sudo tasksel install lamp-server  # 自动安装LAMP
sudo apt install wordpress php-mysql  # 安装WordPress包

方案B:使用Docker(最简化)

sudo apt install docker.io
sudo docker run --name wordpress -p 80:80 -e WORDPRESS_DB_HOST=mysql -e WORDPRESS_DB_USER=wpuser -e WORDPRESS_DB_PASSWORD=密码 -d wordpress

四、后续优化步骤

  1. 配置SSL证书(Let’s Encrypt):

    sudo apt install certbot python3-certbot-apache  # Apache
    sudo certbot --apache -d 您的域名
  2. 设置文件权限

    sudo find /var/www/html/wordpress -type d -exec chmod 755 {} ;
    sudo find /var/www/html/wordpress -type f -exec chmod 644 {} ;
  3. 性能优化

    • 安装缓存插件(W3 Total Cache等)
    • 启用OPcache:sudo nano /etc/php/8.x/apache2/conf.d/10-opcache.ini

常见问题排查

  1. 403 Forbidden:检查目录权限和Apache/Nginx配置中的目录路径
  2. 数据库连接错误:确认wp-config.php中的数据库凭据正确
  3. 内存不足:增加PHP内存限制,编辑/etc/php/8.x/apache2/php.ini中的memory_limit

安全建议

  • 修改默认登录地址(通过安全插件)
  • 定期更新WordPress核心和插件
  • 禁用文件编辑功能:在wp-config.php添加define('DISALLOW_FILE_EDIT', true);
  • 设置强密码并启用两步验证

根据您的服务器配置(内存、流量需求)选择合适的方案,生产环境建议使用Nginx搭配PHP-FPM以获得更好性能。

云服务器