https://jsfiddle.net/xpgjyejn/コードです。私は
/en/brand
のためのユーザーの検索は、内部でそれが検索されますときに、あなたが(内部.phpの拡張子を持つファイルにリダイレクトする、すなわち)拡張子を除去するために以下の2行を書いたことを
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]
を見メートル
/en/brand.php
Lフラグがあり、実行を停止します。その行の次のコードは実行されません。すでにそれらの
# RewriteCond %{REQUEST_FILENAME} !-f
# RewriteRule ^([^\.]+)$ $1.php [NC,L]
インフロント#を追加しての.htaccessファイルコメントアウトの2行では、すべての書き換えルールを書いたように今、あなたのコードが
RewriteEngine On
# Removing extension
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteRule ^([^\.]+)$ $1.php [NC,L]
# Redirect rewrite urls
# brand
RewriteRule en/brand brand.php?lang=en [L,QSA]
RewriteRule fr/marque brand.php?lang=fr [L,QSA]
# conditions
RewriteRule en/conditions conditions.php?lang=en [L,QSA]
RewriteRule fr/conditions conditions.php?lang=fr [L,QSA]
# contact
RewriteRule en/contact contact.php?lang=en [L,QSA]
RewriteRule fr/contact contact.php?lang=fr [L,QSA]
# features
RewriteRule en/features features.php?lang=en [L,QSA]
RewriteRule fr/fonctionnalites features.php?lang=fr [L,QSA]
# forgot-password
RewriteRule en/forgot-password forgot-password.php?lang=en [L,QSA]
RewriteRule fr/mot-de-pass-oublie forgot-password.php?lang=fr [L,QSA]
# login
RewriteRule en/login login.php?lang=en [L,QSA]
RewriteRule fr/connexion login.php?lang=fr [L,QSA]
# pricing
RewriteRule en/pricing pricing.php?lang=en [L,QSA]
RewriteRule fr/tarification pricing.php?lang=fr [L,QSA]
# try
RewriteRule en/try try.php?lang=en [L,QSA]
RewriteRule fr/essayer try.php?lang=fr [L,QSA]
# index
RewriteRule en/ index.php?lang=en [L,QSA]
RewriteRule fr/ index.php?lang=fr [L,QSA]
になりますそれは私のために十分に明確ではありません。何回書き換えルールが必要ですか?あなたはきれいで明確な注文を使用してそれらをリストできますか? –
@EduardoEscobar:ここがあなたを助けることができるもの:https://jsfiddle.net/xpgjyejn/。ありがとう。 – user8201518
したがって、 'en/login'は' login.php'に正しく書き換えられますが、 'lang'パラメータを取得できません。つまり、 '$ _REQUEST ['lang']'を使用していますか? –