【问题标题】:htaccess rewrite rule preventing access newly added php fileshtaccess 重写规则阻止访问新添加的 php 文件
【发布时间】:2013-10-05 08:21:45
【问题描述】:

我有一个带有 htaccess 文件的网站。 htaccess 有很多代码。当我创建一个新的 php 文件时,它会重定向到另一个页面。所以我检查了我的 htaccess 文件并删除了一行代码

RewriteRule ^.*\.{1}(htm|html|php)\/?   index.php [L,QSA,NC]

之后文件就可以直接访问了。任何人都可以知道上述 htacess 的含义以及它对新添加的 php 文件有何影响。

【问题讨论】:

    标签: php html apache .htaccess


    【解决方案1】:

    这条规则:

     RewriteRule ^.*\.{1}(htm|html|php)\/?   index.php [L,QSA,NC]
    

    默默地转发每个请求 URI,扩展名为 .php OR .htm OR .htmlindex.php

    因此,即使您在正则表达式^.*\.{1}(htm|html|php)\/? 上方添加新的.php 也会匹配,并且对新创建文件的请求仍将转发到index.php

    PS:尽管在许多前端控制器(如 Wordpress、CodeIgnitor、Cake 等框架)中使用了类似的规则,但这条规则没有多大意义。

    参考:Apache mod_rewrite Introduction

    【讨论】:

      猜你喜欢
      • 2021-06-19
      • 2013-03-02
      • 2023-02-01
      • 2018-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-29
      相关资源
      最近更新 更多