XML 站点地图转到 404 页面

问题描述 投票:0回答:1

我已经安装了 yoast 的 wpseo,它没有列出站点地图内的所有链接。 它只是只索引 xml 站点地图。

例如:

http://domain.com/sitemap_index.xml list the following xml files.
When i click any one of the following xml file it goes to 404 page.

http://domain.com/post-sitemap.xml
http://domain.com/page-sitemap.xml

以下是我的 nginx 配置:

rewrite ^/sitemap\.xml$ /sitemap_index.xml permanent;
rewrite ^/([a-z]+)?-?sitemap\.xsl$ /index.php?xsl=$1 last;
rewrite ^/sitemap_index\.xml$ /index.php?sitemap=1 last;
rewrite ^/([^/]+?)-sitemap([0-9]+)?\.xml$ /index.php?sitemap=$1&sitemap_n=$2 last;

参考:

http://kb.yoast.com/article/16-my-sitemap-is-giving-a-404-error-what-should-i-do

http://kb.yoast.com/article/123-xml-sitemap-errors

http://www.wpbeginner.com/wp-tutorials/how-to-fix-yoasts-wordpress-seo-sitemap-404-error/

http://kb.yoast.com/article/96-enable-xml-sitemaps-in-the-wordpress-seo-plugin

nginx wordpress
1个回答
0
投票

我从 htpcbeginner 尝试过这个,效果非常好。

  • 我使用Ubuntu 14.04.3 x64,Nginx 1.4.6
  • WordPress 4.4.2

将以下行放入 yoursite.com 文件的 location 块

/etc/nginx/sites-avaliable
并且不要忘记将其重新链接到
/etc/nginx/sites-enabled
文件夹。

#This rewrite redirects sitemap.xml to sitemap_index.xml, which is what Yoast's WordPress SEO plugin generates.
rewrite ^/sitemap\.xml$ /sitemap_index.xml permanent;
 

#This rewrite ensures that the styles are available for styling the generated sitemap.
rewrite ^/([a-z]+)?-?sitemap\.xsl$ /index.php?xsl=$1 last;

#These rewrites rule are generated by Yoast's plugin for Nginx webserver.

rewrite ^/sitemap_index\.xml$ /index.php?sitemap=1 last;
rewrite ^/([^/]+?)-sitemap([0-9]+)?\.xml$ /index.php?sitemap=$1&sitemap_n=$2 last;
  • 您应该将永久链接更改为
    /%postname%/
  • 不要忘记重新启动 Nginx 服务器。
    sudo service nginx restart
    那应该对你有用。祝你好运。
© www.soinside.com 2019 - 2024. All rights reserved.