【问题标题】:RewriteRule Cause Slow DownRewriteRule 导致减速
【发布时间】:2013-11-03 02:09:45
【问题描述】:

我在我的网站中添加了一个 RewriteRule

我的网站有自己的路由。

样本

http://site.com/home/task/processCity/cityName/NameOfCity/stateName/NameOfState

相当于

http://site.com/index.php?obj=home&task=processCity&cityName=NameOfCity&landingName=NameOfState

我尝试将网址缩短为

http://site.com/NameOfCity/NameOfState

下面的代码

据我所知。 此代码使网站加载缓慢。或者 css 和 javascript 不工作。

RewriteRule ^(.*)/(.*)? /index.php?obj=home&task=processCity&cityName=$1&stateName=$2 [QSA,NC,L]

原来的链接失效了

http://site.com/home/task/processCity/cityName/NameOfCity/stateName/NameOfState

但是当我使用这个时,一切正常,原始链接仍然有效

RewriteRule ^find/(.*)/(.*)? /index.php?obj=home&task=processCity&cityName=$1&stateName=$2 [QSA,NC,L]

第一个 RewriteRule 中出现问题的原因可能是什么?有任何解决这个问题的方法吗 ?

【问题讨论】:

    标签: regex apache .htaccess mod-rewrite url-rewriting


    【解决方案1】:

    原始链接不起作用,因为您的正则表达式不正确,没有$ 它匹配并影响您的长网址。将您的规则更改为:

    RewriteRule ^([^/]+)/([^/]*)/?$ /index.php?obj=home&task=processCity&cityName=$1&stateName=$2 [QSA,L]
    

    【讨论】:

    • 非常感谢@anubhava。
    猜你喜欢
    • 2018-09-23
    • 2012-04-21
    • 1970-01-01
    • 2014-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多