URL重写(内部/外部转发器).htaccess

时间:2014-12-26 06:28:52

标签: php apache .htaccess mod-rewrite url-rewriting

我正在使用.htaccess进行网址重写。我目前的.htaccess代码是:

RewriteEngine On
RewriteBase /

# external redirect from actual URL to pretty one
RewriteCond %{THE_REQUEST} \s/+fr/transporter/transporterPublicProfile\.php\?profil=([^\s&]+) [NC]
RewriteRule ^ fr/profil-des-transporteurs/%1? [R=302,L,NE]

# internal forward from pretty URL to actual one
RewriteRule ^fr/profil-des-transporteurs/([^/.]+)/?$ fr/transporter/transporterPublicProfile.php?profil=$1 [L,QSA,NC]

我的网址是:

https://example.com/fr/profil-des-transporteurs/1927

将.htaccess文件放在DOCUMENT_ROOT目录中时,它工作正常。

但是当我将相同的.htaccess文件放在真实的子目录中时,它就不起作用,即/ fr /.

那么我该怎么做,如果我想将.htaccess文件放在子目录中,即/ fr /

2 个答案:

答案 0 :(得分:2)

/fr/.htaccess

中使用这些规则
RewriteEngine On
RewriteBase /fr/

# external redirect from actual URL to pretty one
RewriteCond %{THE_REQUEST} /fr/transporter/transporterPublicProfile\.php\?profil=([^\s&]+) [NC]
RewriteRule ^ profil-des-transporteurs/%1? [R=302,L,NE]

# internal forward from pretty URL to actual one
RewriteRule ^profil-des-transporteurs/([^/.]+)/?$ transporter/transporterPublicProfile.php?profil=$1 [L,QSA,NC]

答案 1 :(得分:1)

试试这个

RewriteEngine On
RewriteBase /fr