トピック 。htaccessを使用したURLのクリーンアップ で指定されたコードを試しましたが、私のWebサイトでは機能していません。
実際には静的コンテンツを取得していますが、パラメーター(動的コンテンツ)を取得していません。私の.htaccessコードは
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^user/([^/]+) /user.php?u=$1
私のPHPファイル(user.php):
<?php
echo "ABC";
echo $_GET['u'];
?>
私のURLは次のとおりです。
example.com/simran/user/jack
(静的コンテンツを取得しますが、パラメーターは取得しません)
最も簡単な方法は、変更することです:
RewriteRule ^user/([^/]+) /user.php?u=$1
に:
RewriteRule ^simran/user/([^/]+) /user.php?u=$1 [L]
または、より柔軟に使用することができます:
RewriteRule ^(.*)/user/([^/]+) /user.php?u=$2 [L]
これでこれらのURLが機能するはずです
example.com/any1user/user/jack
example.com/simran/user/jack
example.com/user/jack
$ 1は/ userの前のコンテンツを指し、/ userの後のコンテンツに興味があるため、$ 1を$ 2に変更しました。 。*は、なしおよび句読点を含むすべてを意味します。
いずれの場合も、ルールの処理後にリスト内のそれ以上のルールを処理しないことを意味するため、角括弧内にLをルールに付けることを常にお勧めします。