将每个网址的网站3语言重定向到静态页面

时间:2018-09-18 07:54:24

标签: .htaccess mod-rewrite

我想用3种语言EN,AR,FR建立我的网站

我的目标是重定向网址,如下所示: http://example.com/->到http://example.com/index.php?lang=en
(因为未指定语言,也没有页面,所以使用默认语言EN重定向到索引页面)

http://example.com/ar-> http://example.com/index.php?lang=ar

,对于不同的页面,我需要以下内容 http://example.com/en/news/something-to-write-> http://example.com/news.php?lang=en&alias=something-to-write

我希望此重写在/ ar,/ en,/ fr以及没有指定语言的情况下都有效

我要查看所有页面

我不希望我的css,images和js文件夹受到影响,所以当用户要求时 http://example.com/fr/css/style.css返回http://example.com/css/style.css

我的代码运行不正常

RewriteEngine on
RewriteRule ^(assets|css|fonts|js|panel|rev)($|/) - [L]
# Force English on homepage no url 
RewriteRule ^$ index.php?lang=en
# English Homepage
RewriteRule ^en/?$ index.php?lang=en
# Other Languages but no other page >> (Homepage)
RewriteRule ^(fr|ar)?$ index.php?lang=$1
RewriteRule ^(fr|ar)/?$ index.php?lang=$1
# Other pages DEFAULT is >> ENGLISH
RewriteRule ^([^/]+)/([^/]+)$ $1.php?lang=en&alias=$2
# Other pages BUT ENGLISH
RewriteRule ^en/([^/]+)/([^/]+)?$ $1.php?lang=en&alias=$2
# Other Languages Other pages
RewriteRule ^(fr|ar)/([^/]+)/([^/]+)?$ $2.php?lang=$1&alias=$3

请帮忙吗?

0 个答案:

没有答案