/ / Apache mod_rewrite固有の動的URL-php、apache、.htaccess、mod-rewrite、syntax-error

Apache mod_rewrite固有の動的URL - php、apache、.htaccess、mod-rewrite、構文エラー

mod.rewriteを使用してdomain.com/indexを記述しています。php?= stringからdomain.com/stringへ。ロボットがSEOの目的でsitemap.htmlにアクセスするとき、index.php?= sitemapをWebサイトに表示する必要があります。私は多くのバリエーションを試しましたが、コードを使用して/ sitemapに/sitemap.htmlを表示しました:

    RewriteRule ^sitemap/?$ http://www.domain.com/sitemap.html [R]

しかし、実際にはindex.php?p = sitemapではなくsitemap.htmlを探しているため、書き換えによって問題は解決しません。

現在設定されているルールは次のとおりです。

    RewriteEngine On

RewriteCond %{HTTP_HOST} !^www.domain.com$
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/?$ index.php?p=$1& [L,NC]

どんな助けでも大歓迎です。

回答:

回答№1は0

両方のルールの間にこれを追加するだけです:

RewriteRule ^sitemap.html$ index.php?p=sitemap [L]

そのため、すべて次のようになります。

RewriteEngine On

RewriteCond %{HTTP_HOST} !^www.domain.com$
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301]

RewriteRule ^sitemap.html$ index.php?p=sitemap [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/?$ index.php?p=$1& [L,NC]