我正在开发一个工具,我现在陷入困境:我想为每个目录定义一组规则,基本上我只想要"公共"文件夹,并拒绝访问其他文件夹.
我的directoy结构是
uapi(root)/
Application
Config
Public/
Index.php
Storage
.htaccess
Run Code Online (Sandbox Code Playgroud)
这是.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>
Run Code Online (Sandbox Code Playgroud)
正如此doc页面所述,您不能<Directory>在htaccess中使用该指令,而只能在服务器conf文件中使用.
无论如何,这不是一个问题:你可以.htaccess在每个目录中存储一个文件,例如.创建这些文件:
公共/的.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>
Run Code Online (Sandbox Code Playgroud)
/Config/.htaccess
Order Deny, Allow
Deny from all
Run Code Online (Sandbox Code Playgroud)
/Application/.htaccess
Order Deny, Allow
Deny from all
Run Code Online (Sandbox Code Playgroud)
/Storage/.htaccess
Order Deny, Allow
Deny from all
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16765 次 |
| 最近记录: |