阿里云搭建的wordpress网站首页看打开,内页打开是404?

在阿里云(如ECS服务器)上搭建的 WordPress 网站,如果 首页可以打开但内页(文章、分类、标签等页面)出现404 错误,这通常是由于 伪静态规则(URL 重写规则)未正确配置 所致。


🔧 原因分析

WordPress 使用 mod_rewrite 模块实现漂亮的固定链接(Permalinks)。如果你使用的是 Apache 或 Nginx 作为 Web 服务器,而没有正确配置 URL 重写规则,访问 /sample-post/ 这样的页面就会触发 404。


✅ 解决方案

🛠️ 方法一:检查并开启 Apache 的 .htaccessmod_rewrite

如果你使用的是 Apache

  1. 确保启用了 mod_rewrite 模块

    sudo a2enmod rewrite
    sudo systemctl restart apache2
  2. 修改 Apache 配置文件,允许 .htaccess 生效

    编辑你的网站配置文件(如 /etc/apache2/sites-available/000-default.conf 或对应虚拟主机配置):

    <Directory /var/www/html>
       Options Indexes FollowSymLinks
       AllowOverride All
       Require all granted
    </Directory>
  3. 重启 Apache

    sudo systemctl restart apache2
  4. 检查 WordPress 根目录是否存在 .htaccess 文件

    如果没有,请手动创建一个,并设置权限为 644。内容如下:

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress
  5. 重新保存固定链接设置

    登录 WordPress 后台 → 设置 → 固定链接 → 不做修改直接点击“保存更改”。


🛠️ 方法二:Nginx 配置 WordPress 伪静态规则

如果你使用的是 Nginx

你需要在站点配置中添加以下重写规则:

location / {
    try_files $uri $uri/ /index.php?$args;
}

完整示例配置文件片段:

server {
    listen 80;
    server_name yourdomain.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:/run/php/php-fpm.sock;
    }

    location ~ /.ht {
        deny all;
    }
}

然后重启 Nginx:

sudo systemctl restart nginx

✅ 其他可能原因排查

  • 文件权限问题:确保 WordPress 目录和文件权限正确。
  • 缓存插件或 CDN:清除浏览器缓存、CDN缓存或 WordPress 缓存插件。
  • 固定链接格式:尝试切换为默认结构再切回来。
  • 插件冲突:临时禁用所有插件测试是否恢复。
  • 主题问题:更换为默认主题测试。

✅ 总结

问题 解决方式
首页能打开,内页 404 检查伪静态配置
Apache 服务 开启 mod_rewrite.htaccess 支持
Nginx 服务 添加 try_files 规则
测试方法 清除缓存、改固定链接格式、换主题、禁用插件

如果你提供你使用的 Web 服务器类型(Apache/Nginx)、环境(宝塔面板?LNMP?),我可以给出更具体的配置代码。

需要我帮你生成对应服务器的完整配置吗?

未经允许不得转载:CLOUD技术博 » 阿里云搭建的wordpress网站首页看打开,内页打开是404?