2

私の .htaccess ファイルのこの部分は、/x または /x/ のリクエストを x.php に送信します (以下にリストされている 6 ページのみ)。ただし、/links および /contact (末尾のスラッシュなし) の要求では 404 ページが表示されます。他のページは、末尾のスラッシュの有無にかかわらず正しくリダイレ​​クトされます。これら 2 つのインスタンスが他のインスタンスのように機能しない原因は何でしょうか?

RewriteRule ^art/$ art.php [QSA,L]
RewriteRule ^design/$ design.php [QSA,L]
RewriteRule ^projects/$ projects.php [QSA,L]
RewriteRule ^teaching/$ teaching.php [QSA,L]
RewriteRule ^links/$ links.php [QSA,L]
RewriteRule ^contact/$ contact.php [QSA,L]
4

1 に答える 1

2

artdesignprojectsおよびteachingには、対応するディレクトリがあると思います。これにより、から/artへのリダイレクトが発生し/art/、RewriteRule がトリガーされます。

末尾のスラッシュをオプションにします

RewriteRule ^art/?$ art.php [QSA,L]
RewriteRule ^design/?$ design.php [QSA,L]
RewriteRule ^projects/?$ projects.php [QSA,L]
RewriteRule ^teaching/?$ teaching.php [QSA,L]
RewriteRule ^links/?$ links.php [QSA,L]
RewriteRule ^contact/?$ contact.php [QSA,L]

次に、末尾のスラッシュの有無にかかわらず、ルールがトリガーされます。

于 2013-11-14T19:29:59.637 に答える