我需要帮助弄清楚为什么sitemap生成器拾取了大约64个不存在的URL。根据我的重写规则,我只想重写任何看起来像“/article.php?id=#”到“article/#/article-title-here”的页面。
然而,我在使用站点Map生成器时生成了各种URL,如/article/article. php/index. php或/article/index. php
下面是我的htaccess规则
RewriteEngine On
# Redirect HTTP requests to HTTPS
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
# Redirect old article URLs to new URLs
RewriteCond %{QUERY_STRING} ^id=([0-9]+)$
RewriteRule ^article\.php$ /article/%1/%{QUERY_STRING}? [R=301,L]
# Rewrite article URLs
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^article/([0-9]+)/([^/]+)/?$ article.php?id=$1&title=$2 [L,QSA]
有什么我需要改变,以便它只显示我的5个主要网页和7个文章页?
我已经尝试重写规则多次和回检查与其他网站Map生成器。
1条答案
按热度按时间ux6nzvsh1#
你的RewriteRule似乎试图做与你的问题所说的相反的事情。
下面的重写规则将把
/article.php?id=1234&title=article_title
重写为/article/1234/article_title