在 Linux 系统上使用 WordPress 搭建个人网站并发布到公网,需要完成服务器环境搭建、WordPress 安装、域名配置和安全设置等步骤。以下是一个详细的新手教程:

在 Linux 系统上使用 WordPress 搭建个人网站并发布到公网,需要完成服务器环境搭建、WordPress 安装、域名配置和安全设置等步骤。以下是一个详细的新手教程:

一、准备工作

  1. 一台 Linux 服务器
    • 可以是物理服务器,也可以是云服务器(如阿里云、腾讯云、AWS 等)。
    • 推荐使用 Ubuntu 或 CentOS 系统,因为它们的社区支持和软件包管理较为完善。
  2. 域名
    • 在域名注册商(如 Namecheap、阿里云域名)注册一个域名,并将域名解析到服务器的 IP 地址。
  3. 基本的 Linux 操作知识
    • 熟悉 SSH 登录、文件操作、权限管理等基本命令。

二、搭建服务器环境

1. 安装 LAMP/LNMP 栈

WordPress 需要一个 Web 服务器(Apache 或 Nginx)、PHP 解释器和 MySQL 数据库。以下是基于 Ubuntu 的 LAMP 安装步骤:
安装 Apache
bash复制
sudo apt update
sudo apt install apache2
安装完成后,访问服务器的 IP 地址(如 http://<服务器IP>),如果看到 Apache 的默认页面,说明安装成功。
安装 MySQL
bash复制
sudo apt install mysql-server
安装完成后,运行以下命令进行安全设置:
bash复制
sudo mysql_secure_installation
根据提示设置 root 用户密码,并禁用匿名用户、禁止远程 root 登录等。
安装 PHP
bash复制
sudo apt install php libapache2-mod-php php-mysql
重启 Apache 以加载 PHP 模块:
bash复制
sudo systemctl restart apache2
验证 PHP 环境
/var/www/html 目录下创建一个 info.php 文件,内容如下:
php复制
<?php
phpinfo();
?>
访问 http://<服务器IP>/info.php,如果看到 PHP 的信息页面,说明 PHP 环境已正确配置。

2. 安装 WordPress

  1. 下载 WordPress
    bash复制
    cd /tmp
    wget https://wordpress.org/latest.tar.gz
    tar -xzvf latest.tar.gz
  2. 复制到网站根目录
    bash复制
    sudo cp -a /tmp/wordpress/. /var/www/html/
  3. 设置文件权限
    bash复制
    sudo chown -R www-data:www-data /var/www/html/
    sudo chmod -R 755 /var/www/html/
  4. 配置数据库 登录 MySQL:
    bash复制
    sudo mysql -u root -p
    创建 WordPress 数据库和用户:
    sql复制
    CREATE DATABASE wordpress;
    CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'yourpassword';
    GRANT ALL PRIVILEGES ON wordpress.* TO 'wpuser'@'localhost';
    FLUSH PRIVILEGES;
    EXIT;
  5. 运行 WordPress 安装
    • 访问 http://<服务器IP>,按照 WordPress 安装向导进行设置,填写数据库信息(数据库名、用户名、密码)。
    • 完成安装后,登录 WordPress 后台,开始配置网站。

三、域名配置

  1. 域名解析
    • 在域名注册商后台,将域名的 A 记录指向服务器的 IP 地址。
    • 例如,将 www.yourdomain.comyourdomain.com 解析到服务器 IP。
  2. 配置 Apache 或 Nginx
    • 如果使用 Apache,编辑 /etc/apache2/sites-available/yourdomain.conf,配置虚拟主机:
      apache复制
      <VirtualHost *:80>
          ServerName yourdomain.com
          ServerAlias www.yourdomain.com
          DocumentRoot /var/www/html
          ErrorLog ${APACHE_LOG_DIR}/error.log
          CustomLog ${APACHE_LOG_DIR}/access.log combined
      </VirtualHost>
      启用站点并重启 Apache:
      bash复制
      sudo a2ensite yourdomain.conf
      sudo systemctl restart apache2
    • 如果使用 Nginx,编辑 /etc/nginx/sites-available/yourdomain,配置如下:
      nginx复制
      server {
          listen 80;
          server_name yourdomain.com www.yourdomain.com;
          root /var/www/html;
      
          index index.php index.html;
      
          location / {
              try_files $uri $uri/ =404;
          }
      
          location ~ .php$ {
              include snippets/fastcgi-php.conf;
              fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;  # 根据你的 PHP 版本调整
          }
      }
      启用站点并重启 Nginx:
      bash复制
      sudo ln -s /etc/nginx/sites-available/yourdomain /etc/nginx/sites-enabled/
      sudo systemctl restart nginx

四、安全设置

  1. 安装 SSL 证书(推荐 Let's Encrypt)
    bash复制
    sudo apt install certbot python3-certbot-apache
    sudo certbot --apache -d yourdomain.com -d www.yourdomain.com
    按照提示操作,完成后网站将支持 HTTPS。
  2. 设置防火墙
    bash复制
    sudo apt install ufw
    sudo ufw allow 'Apache Full'
    sudo ufw enable
  3. 备份和监控
    • 定期备份网站文件和数据库。
    • 使用工具如 fail2ban 防止恶意登录尝试。

五、发布网站

  1. 确保域名已解析到服务器 IP。
  2. 访问 https://yourdomain.com,检查网站是否正常运行。
  3. 在 WordPress 后台继续优化网站内容、主题和插件。

六、常见问题

  1. 网站无法访问
    • 检查服务器防火墙是否开放了 HTTP/HTTPS 端口(80/443)。
    • 确保域名解析生效(可能需要等待 24-48 小时)。
  2. MySQL 连接失败
    • 确保数据库用户名、密码和数据库名正确。
    • 检查 MySQL 用户权限是否正确设置。
  3. SSL 证书续期
    • Let's Encrypt 证书有效期为 90 天,可以设置自动续期:
      bash复制
      sudo certbot renew --dry-run

通过以上步骤,你可以在 Linux 服务器上成功搭建并发布一个 WordPress 个人网站。如果有任何问题,可以参考官方文档或社区资源获取帮助。

[自动更新内容]