我最近安装了wordpress seo插件,插件要求我更改永久链接设置。
现在,我这样做是为了获得外观更好的链接,其中包含postname而不是post id。
更改时,我在FrontPage上遇到404个错误。
我的静态页面看起来运行良好+直接链接(通过后端访问)到我的博客文章也可以工作。
但我的头版只是给了我404而不是列出我的帖子。
关于我的设置的一些信息
我的博客被放在一个子区域内,所以它的访问方式如下:

www.myhomepage.com/blog/

不过,我也有一个重定向,将blog.myhomepage.com指向www.myhomepage.com/blog/
我在htaccess文件中添加了这个重定向,如下所示
RewriteEngine on
RewriteCond %{HTTP_HOST} ^blog\.myhomepage\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.blog\.myhomepage\.com$
RewriteRule ^/?$ "http\:\/\/www\.myhomepage\.com\/blog" [R=301,L]

我刚刚试着从htaccess文件中删除这一行,如果完成了这一步,网站就会正常工作,但我实际上想要这个重定向。
我怎样才能纠正它并让它正常工作?
我真的希望有人能比我聪明一点;)

最佳答案

以下是如何将所有内容设置为blog.myhomepage.com:
仪表板,设置,常规,有一个网址。
把它改成你的blog.myhomepage.com。
然后,您可以将重定向301添加到www.myhomepage.com的/.htaccess文件中。
www.myhomepage.com/blog to 301重定向至blog.myhomepage.com。

Options +FollowSymlinks
RewriteEngine on
rewritecond %{http_host} ^myhomepage.com/blog/ [nc]
rewriterule ^(.*)$ http://blog.myhomepage.com/$1 [r=301,nc]

这会将任何内容从whatever.myhomepage.com/blog/*跳转到blog.myhomepage.com/samecontentlink。
在/blog/.htaccess文件中:
你只需要你的默认wordpress.htaccess。
这将解决您的问题,您必须在Dashboard,settings,general中更正站点域URL。
如果你不想要blog.myhomepage.com,而是想要所有东西www.myhomepage.com/blog/:
如果你想忽略你的子域,你可以简单地从dns中删除它,然后确保你的博客在dashboard,settings,general中的url设置为
http://www.mysite.com/blog/
并确保/blog/中的.htaccess文件包含博客的基础。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

关于wordpress - Wordpress永久链接更改导致首页404,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15236038/

10-16 07:26