仅允许我的htpasswd列表中的用户访问文件,而且还允许wordpress访问文件

时间:2018-07-09 16:21:32

标签: .htaccess mod-rewrite

我有一个XML文件,我只希望用户通过我的wordpress部署进行访问-但如果他们尝试直接访问该文件,则不能。

有可能吗?

我尝试了以下操作,但似乎不起作用:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^https?://my-domain.com/ [NC]
RewriteRule \.(xml)$ - [NC,L,F]

有什么建议吗?在此先感谢,喜欢这个社区。

1 个答案:

答案 0 :(得分:0)

有两种方法:

将敏感的配置文件放在Web根目录之外。 httpd遵循本地文件系统的层次结构和特权,而不是其自身的(虚拟)虚拟结构。

如果您的主机不允许这样做,则可以使用.htaccess将任何HTTP请求限制为文件。将配置文件放在一个单独的目录中,该目录包含一个阻止所有人(或IP列表等)的.htaccess文件。

<Files important.xml>
  Order allow,deny
  Deny from all
</Files>

由于Web服务器仍然可以读取和执行文件,PHP也可以访问和处理该文件。