1

我为别人创建了一个axtra ftp帐户,所以他可以上传文件。(比赛结果,大约20/30的htm文件和图像)我也很偏执,所以万一他上传“可能危险”的文件,我不会希望这些文件可以通过 http 请求访问。在 PHP 的帮助下,我想获取这些文件的内容。(我预计不会有麻烦)

问题:我的主机不允许额外的 ftp 帐户访问 public_html 之外。所以我认为 htacces 应该解决我的问题。只是通过拒绝所有规则。但是通过 ftp 访问,这个 htaccess 文件可以被删除或更改。

因此,我尝试在站点根目录的主 htacces 文件中添加以下代码:

<Directory "/home/xxxx.nl/public_html/xxxxxxxx.nl/onzetoernooien/swissmaster_ftp">
deny from all
</Directory>

我的网站因内部服务器错误而挂起。我无权访问 httpd 文件。

我的想法是在这个目录上方使用一个 htacces 文件。如果绝对路径不正确,我可以使用某种通配符,例如 *swissmaster?

我在 Apache 网站上进行了搜索,但我迷失在大量信息中。

提前感谢您的帮助!

4

1 回答 1

1

不幸的是,您不能使用<Directory>.htaccess 中的部分,只能在服务器配置文件中使用。这会导致服务器错误(检查您的错误日志,您会看到错误消息)。我们不能使用<Filesmatch "subdir/.*$">either 来保护子目录,因为 FilesMatch 只检查所请求 URI 的文件名部分。

但是,您可以按照以下方式使用 mod_rewrite:

RewriteEngine on

RewriteRule ^subdir.*$ - [NC,F]

If the requested URI matches the regex pattern subdir.* (so "subdir" followed by anything else; you may need to tweak the pattern, as it happily catches subdir_new/something.txt too -- I'm sure you get the idea), then mod_rewrite's F flag will return a 403 Forbidden status (the NC stands for No-Case, making the pattern case-insensitive).

于 2012-08-26T13:45:04.293 回答