如何处理缺少参数的Htaccess

时间:2013-02-08 22:39:19

标签: .htaccess rewrite

好吧我不知道我之前是否会问过一些问题,因为htaccess使我的大脑从我的耳朵里流出来。

我的htaccess目前正在执行此操作:

www.domain.co.uk/index.php?Pram1=Val1&Pram2=Val2

变为

www.domain.co.uk/Pram1/Val1/Val2
使用

RewriteRule ^Pram1/([^/]*)/([^/]*)/$ /index.php?Pram1=$1&Pram2=$2 [L,QSA]

当有人去的时候,胡兹工作但是:

www.domain.co.uk/Pram1/

我希望它像欢迎页面一样加载....我知道如何处理PHP但不知道如何让重写在空白的婴儿车上好心。

1 个答案:

答案 0 :(得分:1)

我可能没有得到您的问题,但您可以执行以下操作:

  • 添加新的重写规则:

    RewriteRule ^Pram1/$ /index.php?Pram1= [L,QSA]
    

这将是最容易维护和最容易阅读的。我会这样走。

  • 使其他参数可选:

    RewriteRule ^Pram1/(?:([^/]*)/([^/]*)/)$ /index.php?Pram1=$1&Pram2=$2 [L,QSA] 
    

这应该有效(我没有测试过)。 Pram1和Pram2都在查询字符串中,并且在www.domain.co.uk/Pram1/的情况下包含空字符串。

但我强烈建议使用第一个版本。它似乎不太灵活,但它更容易维护。