如何使用htaccess拒绝文件的用户访问,而不拒绝使用该文件的插件的访问?

时间:2018-09-16 17:25:21

标签: php wordpress apache .htaccess

我有一个使用位于plugin文件夹中的xml文件的插件。

example.com/wp-content/plugins/myplugin/myxml.xml

我想拒绝用户访问文件,但不拒绝插件访问。如果键入URL,则可以读取文件。我在插件文件夹的htaccess中使用了以下内容

<Files ~ "\.xml$">  
Order Allow,Deny
Deny from All
</Files>

我收到403错误,但插件无法读取文件

我也使用了选项-索引

我该如何解决?

4 个答案:

答案 0 :(得分:0)

 <Files ~ "\.xml$">  
  Order Allow,Deny
  Deny from All
  Allow from localhost
</Files>

答案 1 :(得分:0)

仅当将其放在主.htaccess中时,此方法才起作用。那么该文件就不能从外部访问,而可以从wordpress访问

答案 2 :(得分:0)

针对此问题的推荐解决方案是,设置适当的文件许可权和用户组。因此,所有应用程序都可以访问该文件,但公共用户不能。 有关更多信息,请访问Linux File permission

答案 3 :(得分:0)

有两种解决方法:

  • 尽可能从文件系统而不是通过网络加载文件。
  • 按照@Jamie_D的建议使用访问控制。 如果example.com不能解析为localhost(检查您的 / etc / hosts ),他的代码可能无法正常工作。必须通过公用Internet访问该文件,并使用您的公用IP。

作为参考,这是mod_access的文档。

  

可以根据客户端主机名,IP地址或   客户请求的其他特征,如   环境变量。

您也可以对该文件使用authentication

相关问题