【问题标题】:Converting NGINX rule to .htaccess将 NGINX 规则转换为 .htaccess
【发布时间】:2015-09-09 21:25:06
【问题描述】:

我正在尝试转换以下 NGINX 规则:

location ~ "^/calendrier/[0-9]{4}" {
    rewrite ^/calendrier/(.*)$ /calendar/$1;
}

到.htaccess。我试过了:

RewriteCond ^/calendrier/[0-9]{4} [NC]
RewriteRule ^/calendrier/(.*)$ /calendar/$1 [QSA,L]

但它不起作用。

请帮忙。 谢谢

【问题讨论】:

    标签: .htaccess nginx rewrite


    【解决方案1】:

    在尝试从其他平台转换规则之前,您需要查看mod_rewrite 文档。原因是:您必须完全了解应该如何使用mod_rewrite,这样才能轻松实现转换。

    您的转换问题在于RewriteCond 没有根据任何内容检查该模式。本质上,您只是进行了猜测,看看它是否符合您的要求。

    您只需将以下内容放入您的 /.htaccess 文件中:

    RewriteEngine on
    RewriteRule ^calendier/([0-9]{4})/?$ /calendar/$1 [L]
    

    规则的第一部分检查 calendier/<some_number> 是否带有可选的尾部斜杠(如果您不想要斜杠,可以删除 /?)。

    【讨论】:

      【解决方案2】:

      这是我用来完成工作的重写。

      RewriteCond %{REQUEST_URI} ^/calendrier/ [NC]
      RewriteRule ^calendrier/(.*)$ /calendar/$1 [NC,L]
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-02-17
        • 2017-07-15
        • 1970-01-01
        • 2014-11-07
        • 2018-09-01
        • 1970-01-01
        • 2012-09-22
        相关资源
        最近更新 更多