私はいくつかのプロジェクトに取り組んでいます。私が直面している主な問題は、.htaccessを介したURLの書き換えです
。ルール http://www.domain.com.au/servives.php?alphabet=a
を使用して書き込みたいだけです。http://www.domain.com.au/cat/alphabet/a.htm
RewriteRule ^cat/alphabet/([^/]+)\.htm$ /services.php?alphabet=$1 [NC,PT]
私の合計.htaccessファイルには
Options +FollowSymlinks
RewriteEngine on
Options +Indexes
RewriteBase /
//commented// This rule to resolve cononicalization
RewriteCond %{HTTP_HOST} ^domain.com.au
RewriteRule (.*) http://www.domain.com.au/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://www.domain.com.au/ [R=301,L]
RewriteRule ^cat/alphabet/([^/]+)\.htm$ /services.php?alphabet=$1 [NC,PT]
しかし、ブラウザでhttp://www.domain.com.au/cat/alphabet/a.htmと入力 すると、空白のページが開きます。空白のページが開きますが、ソースコードが含まれているため、エラーは表示されませんが、空白のままです。
[R]のパラメータを追加すると、元のページにリダイレクトされます。外部リダイレクトは正常に機能します。私はそれに少なくとも一週間を費やし、とても混乱しています。あなたの助けはとても感謝しています。これでリダイレクトします(追加のRフラグ付き)
RewriteRule ^cat/alphabet/([^/]+)\.htm$ /services.php?alphabet=$1 [NC,R]
内部でリダイレクトしないのはなぜですか?