当前位置: 首页 > 知识库问答 >
问题:

Apache-拒绝访问除public以外的所有目录

盖翰池
2023-03-14
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>

共有1个答案

燕航
2023-03-14

正如这个文档页面所说,您不能在htaccess内部使用 指令,而只能在服务器conf文件内部使用。

无论如何,在您的情况下这不是一个问题:您可以在每个目录中存储一个.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
Order Deny, Allow
Deny from all
Order Deny, Allow
Deny from all
 类似资料:
  • 我有一个文件夹,我希望拒绝访问,但我希望有一个子目录(及其所有文件和任何子目录)是可访问的。 .htaccess文件需要在“模块”中,因为它的子目录是用户提供的(它们是CMS的插件),每个用户提供的文件夹可能有一个“公共”目录,只有“公共”中的文件和文件夹才可以访问。

  • 当我创建新用户或授予现有特权,我得到了这个错误: 授予所有表上的权限ok(信息\u架构除外),在此表上我得到了拒绝访问错误。我怎么能修理?转储所有数据库,删除所有数据库,然后从转储还原?

  • 为什么当我试图创建InputStream时,下面的代码会给我一个File Not Found异常?我的inputdirectory定义为一个文件,其值为“D:\general\images\small_images”(不带引号),我的用户对该文件具有完全的写权限。我正在使用Windows7,并以管理员的身份运行eclipse IDE。 如有任何帮助,不胜感激。

  • 我找到了商店定位器的谷歌教程:https://developers.google.com/maps/articles/phpsqlsearch_v3#findnearsql MySQL表完成了,它在我的服务器上工作。我可以在phpmyadmin中正确地写入地址和执行操作 但是在“用PHP输出XML”的教程中,我不能继续了。 我已经创建了文件phpsqlsearch_dbinfo.php,把我的数据

  • 问题内容: 我有以下代码: 当我尝试保存文件时,出现以下错误 原因可能是什么,我该如何解决?我确实对此文件夹具有读写权限。 问题答案: 当创建一个new时,应该提供文件名,而不仅是要放置文件的目录。 尝试类似的东西