gpt4 book ai didi

Apache - 拒绝访问除公共(public)目录之外的所有目录

转载 作者:行者123 更新时间:2023-12-02 13:31:55 25 4
gpt4 key购买 nike

我正在开发一个工具,但我陷入了困境:我想为每个目录定义一组规则,基本上我只希望“公共(public)”文件夹可用,并拒绝访问其他文件夹。

我的目录结构是

uapi(root)/
Application
Config
Public/
Index.php
Storage
.htaccess

这是 .htaccess 文件

<Directory /Public>
Order Deny, Allow
Allow from all
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ Index.php/$1 [L]
</IfModule>
</Directory>

<Directory /Config>
Order Deny, Allow
Deny from all
</Directory>

<Directory /Application>
Order Deny, Allow
Deny from all
</Directory>

<Directory /Storage>
Order Deny, Allow
Deny from all
</Directory>

最佳答案

如这个doc page说,你不能使用 <Directory> htaccess 内的指令,但仅限于服务器配置文件内。

无论如何,这对您来说不是问题:您可以存储一个 .htaccess每个目录中的文件,例如。创建这些文件:

公共(public)/.htaccess

Order Deny, Allow
Allow from all
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ Index.php/$1 [L]
</IfModule>

/Config/.htaccess

Order Deny, Allow
Deny from all

/Application/.htaccess

Order Deny, Allow
Deny from all

/存储/.htaccess

Order Deny, Allow
Deny from all

关于Apache - 拒绝访问除公共(public)目录之外的所有目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18209489/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com