语言和 slug 的 htaccess 代码
htaccess code for language and slug
我正在尝试通过我的 htaccess 处理语言和 slug,但我遇到了一些问题。
我需要的是转这个:
http://www.domain.com/es/product/lorem-ipsum
进入这个:
http://www.domain.com/product.php?lang=es&slug=lorem-ipsum
这是我的 .htaccess
RewriteEngineOn
RewriteBase /
RewriteRule ^(es|fr)/(.*)$ ?lang=
RewriteRule ^product/(.*)$ product.php?slug= [QSA,L]
但这就是我在 product.php $_GET
中得到的
Array
(
[lang] => 'es'
[slug] => 'lorem-ipsum/product/lorem-ipsum'
)
************ 更新 ***********
如果我为此更改第一条规则:
RewriteRule ^(es|fr)/(.*)$ ?lang= [R]
它工作正常,但我的 URI 为此更改了:
http://www.domain.com/product/lorem-ipsum?lang=es
而不是匹配所有字符
(.*)
很多就是这样的字母
([a-zA-Z].*)
试试:
RewriteEngine on
RewriteBase /
RewriteRule ^(es|fr)/(.*)$ /?lang=
RewriteRule ^product/(.*)$ /product.php?slug= [QSA,L]
我正在尝试通过我的 htaccess 处理语言和 slug,但我遇到了一些问题。
我需要的是转这个:
http://www.domain.com/es/product/lorem-ipsum
进入这个:
http://www.domain.com/product.php?lang=es&slug=lorem-ipsum
这是我的 .htaccess
RewriteEngineOn
RewriteBase /
RewriteRule ^(es|fr)/(.*)$ ?lang=
RewriteRule ^product/(.*)$ product.php?slug= [QSA,L]
但这就是我在 product.php $_GET
中得到的Array
(
[lang] => 'es'
[slug] => 'lorem-ipsum/product/lorem-ipsum'
)
************ 更新 ***********
如果我为此更改第一条规则:
RewriteRule ^(es|fr)/(.*)$ ?lang= [R]
它工作正常,但我的 URI 为此更改了:
http://www.domain.com/product/lorem-ipsum?lang=es
而不是匹配所有字符
(.*)
很多就是这样的字母
([a-zA-Z].*)
试试:
RewriteEngine on
RewriteBase /
RewriteRule ^(es|fr)/(.*)$ /?lang=
RewriteRule ^product/(.*)$ /product.php?slug= [QSA,L]