【问题标题】:problems with wordpress site after changing permalink structure更改永久链接结构后,wordpress 网站出现问题
【发布时间】:2017-03-29 18:23:59
【问题描述】:

我的 wordpress 站点位于一个名为 /entwurf/cob1 的文件夹中,因为我希望通过简单地输入 www.cob1.org 来显示它,我将永久链接更改为 cob1.org,但现在没有任何效果。我尝试将 htacces 更改为:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /entwurf/cob1/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /entwurf/cob1/index.php [L]
</IfModule>

但这似乎也不起作用。我希望在cob1.org 网站上键入时显示位于entwurf/cob1/ 文件夹中的文件。 目前什么都看不到。

【问题讨论】:

  • 原来的 URL 是什么? Wordpress 将 url 硬编码到数据库中
  • 原始 URL 是 www.cob1.org - 我将 wordpress 文件放在可以使用 URL www.cob1.org/entwurf/cob1 找到的文件夹中 我按顺序制作了这个草稿文件夹在人们不知情的情况下进行更改。今天我检查了设置并将网站 URL 和永久链接更改为 www.cob1.org,但我无法再登录。从那以后,我试图改变 htaccess,希望能有任何积极的改变..

标签: php wordpress .htaccess url-rewriting


【解决方案1】:
  1. 删除.htaccess,登录你的wordpress,让wordpress为你生成.htaccess。 (选项 -> 永久链接 -> 保存)
  2. 检查它是否工作?没有?

  3. 上传到你的网站根phpinfo文件(php文件内容为“&lt;?php phpinfo() ?&gt;”),通过浏览器运行。

  4. 检查服务器 API 单元的内容 -> Apache?如果是,检查是否启用了mod_rewrite?不?请求支持以启用它。

如果不是 Apache,请向设置服务器的人员寻求帮助。

【讨论】:

    【解决方案2】:

    如果您有权访问 Worpdress 管理面板,请访问 设置 > 常规 并确保 Wordpress URL 和站点 URL 正确。他们应该是你的新地址。如果要重写数据库中的所有旧 URL,请更改并保存。

    如果您无权访问 WP 管理面板,请尝试使用它手动更改您的数据库。

    https://interconnectit.com/products/search-and-replace-for-wordpress-databases/

    【讨论】:

      【解决方案3】:

      删除 .htaccess 并重新生成它。否则使用以下内容:

      # BEGIN WordPress
      <IfModule mod_rewrite.c>
      RewriteEngine On
      RewriteBase /entwurf/cob1/
      RewriteRule ^index\.php$ - [L]
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule . index.php [L]
      </IfModule>
      

      其次,您要实现的目标必须分两步完成。

      1) 在“设置”>“常规”中,将两个字段中的 wordpress url 更改为 www.cob1.org 2) 在您的 apache 配置中,将 www.cob1.org 设置为指向 /entwurf/cob1/

      <VirtualHost *:80>
          DocumentRoot "complete-absolute-path-to/entwurf/cob1/"
          ServerName cob1.org
          ServerAlias www.cob1.org
      </VirtualHost>
      

      3) 验证是否正在读取 .htaccess。这需要一些实验。例如。我会在 .htaccess 中放置一些随机文本,以故意强制服务器错误。如果我看到错误,则表示正在读取 .htaccess 文件。如果它没有被读取,请确保在 apache 配置中设置了“AllowOverride All”。 .htaccess 文件只能由 apache(和 apache 系列服务器)读取。 重启阿帕奇。你已经完成了。

      【讨论】:

      • 问题是我不能再登录wordpress了。所以我无法访问我的管理面板或检查设置。而且我也已经尝试过: RewriteRule 。 index.php [L] 解决方案。似乎没有任何作用。我绝对一无所知.. :-/
      猜你喜欢
      • 1970-01-01
      • 2012-05-09
      • 2011-04-25
      • 1970-01-01
      • 2011-06-25
      • 1970-01-01
      • 2015-05-04
      • 2020-03-16
      • 1970-01-01
      相关资源
      最近更新 更多