将htaccess用于公共和私人目录

时间:2014-05-11 16:35:12

标签: php .htaccess security

我网站的目录结构如下:

  • WWW /
    • PSite /
      • INC /
      • 公共/

enter image description here
inc(include)目录用于包含所有重要且安全的PHP文件,通常用户无权访问,但只有公共目录中的php代码可以访问inc目录。
public direcotry我将拥有所有公共文件和页面。
我听说这是一个更好的安全系统,我想用.htaccess文件来做。
假设我在 PSite中有.htaccess个文件目录如何将 PSite 的请求重定向到 /public/index.html ,这样,用户将无法访问 inc 目录?我正在尝试使用此代码,但它不适用于公共目录中的其他文件和文件夹。

RewriteEngine On
RewriteRule ^$ /public/index.php [L]

请注意,我已经使用httpd.conf和windows主机文件更改了路径:localhost / PSite和psite.dev
HTTPD Conf:

<VirtualHost 127.0.0.1>
   ServerName psite.dev
   DocumentRoot "C:\wamp\www\PSite"
</VirtualHost>


感谢

1 个答案:

答案 0 :(得分:3)

放入目录以拒绝访问包含

的.htaccess文件
deny from all

如果您有一个包含公共文件的子目录,请插入另一个.htaccess

allow from all