首页 文章

mod_rewrite正则表达式帮助

提问于
浏览
1

嗨,大家好 .

我使用mod_rewrite在网站上进行一些重定向 .

我希望能够执行以下mySite.com/ - >转到主页mySite.com/foo - >转到redirect.php并重新定向 .

我的重定向规则是

RewriteRule(^ \ w * $)redirect.php?url = $ 1 [NC]

但是我显然遗漏了一些东西,因为当我去tomySite.com/时,我被发送到redirect.php

我需要一个允许大小写字母以及下划线的正则表达式,但它必须忽略“空”字符串,所以当我转到mySite.com/时,会显示索引文件 .

有帮助吗?

谢谢!

1 回答

  • 1
    RewriteCond %{REQUEST_FILENAME} -f
    RewriteRule ^index.php index.php [L]
    
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^.*$ redirect.php?url=$1 [NC]
    

    这可能会奏效 . 顺便说一句,您不必在正则表达式中使用()来获取$ 1,默认情况下返回所有内容 .

相关问题