2016-05-06 13 views
1

複数のRewriteRuleが私の.htaccessファイルで動作しません。ポイントへの直接取得すること.htaccess複数のRewriteRuleが動作しない

、私はこのコードの行を持って私の.htaccessファイルに

RewriteEngine On 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)$ ./index.php?lang=$1 [L] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)/$ ./profile.php?page=$1 [L] 

問題は、私は自分のドメインにパラメータを追加するとき、のwww.eaxmple.com/somethingと仮定してみましょうです私はいつもホームページに着きます。私がしたいのは、最後にprofile.phpに移動し、index.phpに移動するためにスラッシュを使わずにパラメータをスラッシュで設定したときです。私がパラメータを置くことを試みたとしても、私は常にインデックスページに移動します。

誰かが私を助けることができますか?

+0

[http://stackoverflow.com/questions/16003269/removing-php-extension-from-urls-using-htaccess][1]ここ –

答えて

2

.*は、末尾の/を含むすべてと一致します。

この順序でルールを試してみてください:

RewriteEngine On 

RewriteCond %{REQUEST_FILENAME} -f [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule^- [L][ 

RewriteRule ^(.+)/$ profile.php?page=$1 [L,QSA] 

RewriteRule ^(.*)$ index.php?lang=$1 [L,QSA] 
+1

感謝を参照してくださいあなたは完璧に働く! – Vasileios

+0

これはうれしいことですが、うれしいです。 – anubhava