php 防止访问后台文件,apache中禁止一般用户访问后台特定目录

这个技术非常重要,能够控制一些非法用户访问本内容。假设我们的网站: http://192.168.0.8/phpmvc/guide/WEB-INF 是我们的后台管理目录,我不允许一些非法用户进行访问,那么我就必须设定对该目录访问是需要验证的。

方法:

1、打开apache的配置文件httpd.conf,在文件末尾加入如下代码:

authtype basic

authname "Private"

authuserfile D:/programs/Apache2/bin/admin.dat  //保存认证信息的文件

require user feng  //‘feng’需要认证的用户名,也可以用别的用户名

Options Indexes FollowSymlinks MultiViews

AllowOverride None

2、打开命令提示行,切换到apache的bin目录下(如:D:\programs\Apache2\bin)。

3、运行命令htpasswd -c admin.dat feng进行密码的设置,也可以用别的用户名,但应该与上面设置的用户名一至。

4、设置完后重起apache。

关于apache的rewrite模块、禁止某IP访问才以及404的设置   1 rewrite模块1. 去掉注释LoadModule rewrite_module modules/mod_rewrite.so 2. 修改AllowOverride为 All    AllowOverride All    Order allow,deny     Allow from all  3. 在www文件下建个.htaccess文件 内容如下: RewriteEngine   on RewriteBase     / RewriteRule     (.+)\.html$ aaa.php?id=$1 [L] 就可以通过 http://localhost/456.html 来访问 http://localhost/aaa.php?id=456 2 禁止某IP访问才以及404的设置  Options Indexes FollowSymLinks     //去掉Indexes可禁止目录访问    ErrorDocument 404 /missing.htm  //404错误显示,missing.htm要大于512字节    Order allow,deny         //设置allow,deny顺序     Allow from all     Deny from 111.111.111.111    //禁止IP访问,也可用*号 

基于Apache 配置文件的Web页面访问权限控制 假设你有一些敏感的信息要放在Intranet/Internet上,你首先可能会想到自己开发一个用户身份认证的系统来保护你的Web页面。其实Apache本身就自带了限制用户访问Web页面的机制,实现起来也不复杂。 本文介绍在Linux+Apache上的实现方法: 1、修改http.conf 假设你想控制/usr/local/apache/htdocs下各目录的不同访问权限,你可以在与之间加入一行: AllowOverride All 意思是在/usr/local/apache/htdocs下不同目录的访问权限由该目录下的.htaccess文件来控制,而且不同目录的权限策略可互相覆盖。 2、编辑你想要控制的目录下的.htaccess文件 假设你的phpmyadmin目录在/usr/local/apache/htdocs下,你可以这样在phpmyadmin目录下创建一个.htaccess文件,内容如下: AuthUserFile /usr/local/apache/pass/pwdPhp AuthType Basic AuthName "Database Security Zone" ErrorDocument 401 /catchErrors/err_401.html  require valid-user  该文件说明了几个问题: (1) 用户信息存放在/usr/local/apache/pass/pwdPhp中. (2) 认证类型为基本型(此外还有一些其他的加密类型). (3) ErrorDocument 所指向的html文件. (4) 认证方式:用户认证(valid-user)或组认证(valid-group). 3. 生成用户密码文件 有一个用户密码生成程序:htpasswd(在/usr/local/apache/bin下), 它可以加入用户密码信息到指定的文件中,如/usr/local/apache/pass/pwdPhp. 我的用户密码文件内容如下: admin:a0Hplbj33QjV2 guest:R0BYSO383QjVT 4. 重起apache deamon /usr/local/apche/bin/apachectl restart 5. 测试 用IE浏览受保护的页面,如http://ip/phpmyadmin/ (可能需要refresh几次才能凑效),这时应该出现一个身份认证窗口,你需要输入用户名(admin / guest) 和密码(******)才能访问这个页面。

apache禁止访问目录列表

找到Apache 的 httpd.conf 配置文件将: Options Indexes FollowSymLinks 改为: Options FollowSymLinks 也就是把 Indexes 去掉。 额外的信息:在apache中设置虚拟主机 在IIS中我们可以方便的通过不同的IP或者端口再或者主机头来设置虚拟主机, 在apache中也一样可以。 假设有www.songzi1.org和www.songzi2.org两个域名,要同时指向一个服务器地址, 通过这两个域名访问时,要呈现不同的内容,那就需要设置虚拟主机了。 #Vi /etc/apache/httpd.conf 加入: 引用: namevirtualhost * ServerName www.songzi1.org DocumentRoot /var/www/songzi1  ServerName www.songzi2.org DocumentRoot /var/www/songzi2

你可能感兴趣的:(php,防止访问后台文件)