1
我想让我的.htaccess文件默认重定向到https,但我也想使用语言目录。.htaccess重定向问题与语言
例如我想下面的重定向:
- http://example.org - >https://example.org/en/Home
- www.example.org - >https://example.org/en/Home
- example.org/test?test=test - >https://example.org/en/test?test=test
请注意,设置时,en应该是浏览器的默认语言或cookie'语言'。该Cookie应该职级以上的浏览器的默认
那么,什么我的.htaccess文件看起来像此刻是:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]
RewriteCond %{HTTP_HOST} ^www\.example\.org
RewriteRule ^(.*)$ "https\:\/\/example\.org\/$1" [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^/?$ "/Home" [R=301,L]
RewriteRule ^([a-zA-Z]{2})/?$ /$1/Home [R=301,QSA,L]
RewriteRule ^([a-zA-Z]{2})/(.+)?/?$ $2/?Language=$1 [L,QSA]
RewriteCond %{HTTP_USER_AGENT} libwww-perl.*
RewriteRule .* ? [F,L,QSA]
ErrorDocument 404 /404/
ErrorDocument 500 /500/
您是否正在使用php或mod-rewrite设置lang cookie? – starkeen
不,首页加载默认将会是浏览器的默认语言。但是,在稍后访问时,cookie会被设置。如果您有其他选择,请通知我 –