gpt4 book ai didi

.htaccess - htaccess 重定向 if 条件汉字

转载 作者:行者123 更新时间:2023-12-02 01:23:23 24 4
gpt4 key购买 nike

如果 url 在同一个 .htaccess 文件中包含中文字符 VS 英文字符,如何重定向,如下所示:

汉字: www.abcdefg.com/wiki/货船

重定向: http://www.abcdefg.com/zh/wiki.php?word=貨船

英文字符: www.abcdefg.com/wiki/Cargo_ship

重定向: http://www.abcdefg.com/en/wiki.php?word=Cargo_ship

现在,我正在使用下面的代码,如何使用 if 条件将 2 个代码加入同一个 .htaccess 文件中?

英语重定向:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^abcdefg.com/wiki/$ [NC]
RewriteRule ^(.*)$ http://www.abcdefg.com/en/wiki.php?word=$1 [L,R=301]

中文重定向:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^abcdefg.com/wiki/$ [NC]
RewriteRule ^(.*)$ http://www.abcdefg.com/zh/wiki.php?word=$1 [L,R=301]

是否可以使用 If Else 来 RewriteRule ?如果$包含英文字符但是我不知道怎么写if语句。谁能帮忙?下面是我的尝试。

RewriteEngine On
RewriteCond %{HTTP_HOST} !^abcdefg.com/wiki/$ [NC]
<If $ contains English characters>
RewriteRule ^(.*)$ http://www.abcdefg.com/en/wiki.php?word=$1 [L,R=301]
</If>
<Else>
RewriteRule ^(.*)$ http://www.abcdefg.com/zh/wiki.php?word=$1 [L,R=301]
</Else>

最佳答案

试试这些规则:

RewriteEngine On

# handle English URL
RewriteRule ^wiki/([a-z0-9_:'",&-]+)/?$ en/wiki.php?word=$1 [L,QSA,NC]

# handle Chinese URL
RewriteRule ^wiki/([^/]+)/?$ zh/wiki.php?word=$1 [L,QSA,NC]

关于.htaccess - htaccess 重定向 if 条件汉字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38616877/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com