陈奇网络工作室

LAMP内部版本13:Apache访问控制

系统运输

有两种类型的Apache访问控制:目录限制和文件限制。 依次说明这两种访问控制方式。 我们的虚拟机有两个IP。 一个是127.0.0.1,另一个是192.168.147.132。 如果您不想让其中一个IP访问我们的网站,例如127.0.0.1。 (其实主要是限制别人,而不是限制自己。 这里只是举了个例子)

编辑虚拟主机配置文件

[ root @ centos6~~] # vim/usr/local/Apache2/conf/extra/httpd-vhosts.conf

127.0.0.1添加访问控制方法以限制对站点根目录的访问:

……

ServerName www.test.com

ServerAlias www.aaa.com

ServerAlias www.bbb.com

目录/数据/www

AllowOverride None

选项none

Order allow,deny

Allow from all

Deny from 127.0.0.1

/Directory

IfModule mod_rewrite.c

RewriteEngine on

rewrite cond % { http _ host } ^ www.AAA.com $ [ or ]

rewrite cond % { http _ host } ^ www.BBB.com $

RewriteRule ^/(.* ) $ http://www.test.com/$1 [R=301,L]

/IfModule

……

按顺序匹配。 以下Allow行和Deny行的优先级无关。 在这里,Order首先看到allow,然后看到deny,

所以在允许所有IP访问后,再禁止127.0.0.1的访问,最终禁止127.0.0.1。

如果在确认没有错误后重新加载配置文件,则拒绝访问127.0.0.1,并注意到192.168.147.132仍然可以访问

[root@centos6 ~]# apachectl -t

Syntax OK

[ root @ centos6~~] # apachectl graceful

[ root @ centos6~ ] # curl-x 127.0.0.1:80-iwww.test.com

HTTP/1.1 403 Forbidden

Date: Sat,14 Jan 2017 16:18:57 GMT

server:Apache/2.2.9(UNIX ) PHP/5.4.36

Content-Type: text/html; charset=iso-8859-1

[ root @ centos6~ ] # curl-x 192.168.147.132:80-iwww.test.com

HTTP/1.1 301 Moved Permanently

Date: Sat,14 Jan 2017 16:19:07 GMT

server:Apache/2.2.9(UNIX ) PHP/5.4.36

X-Powered-By: PHP/5.4.36

location: forum.php

Cache-Control: max-age=0

Expires: Sat,14 Jan 2017 16:19:07 GMT

Content-Type: text/html

[ root @ centos 6至] # curl-x 192.168.147.132:80-iwww.test.com/forum.PHP

HTTP/1.1 200 OK

Date: Sat,14 Jan 2017 16:19:26 GMT

server:Apache/2.2.9(UNIX ) PHP/5.4.36

X-Powered-By: PHP/5.4.36

set-cookie:STI8_ 2132 _ salt key=nwitwcjx; expires=Mon,13-Feb-2017 16:19:26 GMT; path=/; httponly

set-cookie:STI8_ 2132 _ last visit=1484407166; expires=Mon,13-Feb-2017 16:19:26 GMT; path=/

set-cookie:STI8_ 2132 _ sid=b refer; expires=Sun,15-Jan-2017 16:19:26 GMT; path=/

set-cookie:STI8_ 2132 _ lastact=1484410766 forum.PHP; expires=Sun,15-Jan-2017 16:19:26 GMT; path=/

set-cookie:STI8_ 2132 _ online usernum=1; expires=Sat,14-Jan-2017 16:24:26 GMT; path=/

set-cookie:STI8_ 2132 _ sid=b refer; expires=Sun,15-Jan-2017 16:19:26 GMT; path=/

Cache-Control: max-age=0

Expires: Sat,14 Jan 2017 16:19:26 GMT

Content-Type: text/html; charset=gbk

我们网站的后台一定不能开放访问任何IP。 例如,如果本机只允许登录后台,就需要在后台管理admin.php上建立白名单。 通常,所有人都能看到这个页面。 这是不合适的

虚拟主机只允许对配置文件127.0.0.1中的admin.php进行访问

……

目录/数据/www

AllowOverride None

选项none

Order allow,deny

Allow from all

Deny from 127.0.0.1

/Directory

文件匹配(.* ) admin (.* ) )。

Order deny,allow

Deny from all

Allow from 127.0.0.1

/filesmatch

IfModule mod_rewrite.c

RewriteEngine on

rewrite cond % { http _ host } ^ www.AAA.com $ [ or ]

rewrite cond % { http _ host } ^ www.BBB.com $

RewriteRule ^/(.* ) $ http://www.test.com/$1 [R=301,L]

/IfModule

……

如果在确认没有错误后重新加载配置文件,则表明当前只有127.0.0.1可以登录到后台管理,并且从192.168.147.132开始无法访问后台管理,这样就安全了

[root@centos6 ~]# apachectl -t

Syntax OK

[ root @ centos6~~] # apachectl graceful

[ root @ centos6~ ] # curl-x 192.168.147.132:80-iwww.test.com/admin.PHP

HTTP/1.1 403 Forbidden

Date: Sat,14 Jan 2017 16:36:15 GMT

server:Apache/2.2.9(UNIX ) PHP/5.4.36

Content-Type: text/html; charset=iso-8859-1

[ root @ centos6~ ] # curl-x 127.0.0.1:80-iwww.test.com/admin.PHP

HTTP/1.1 200 OK

Date: Sat,14 Jan 2017 16:36:25 GMT

server:Apache/2.2.9(UNIX ) PHP/5.4.36

X-Powered-By: PHP/5.4.36

set-cookie:STI8_ 2132 _ salt key=zva 82 a 89; expires=Mon,13-Feb-2017 16:36:25 GMT; path=/; httponly

set-cookie:STI8_ 2132 _ last visit=1484408185; expires=Mon,13-Feb-2017 16:36:25 GMT; path=/

set-cookie:STI8_ 2132 _ sid=q e5k co; expires=Sun,15-Jan-2017 16:36:25 GMT; path=/

set-cookie:STI8_ 2132 _ lastact=1484411785 admin.PHP; expires=Sun,15-Jan-2017 16:36:25 GMT; path=/

Cache-Control: max-age=0

Expires: Sat,14 Jan 2017 16:36:25 GMT

Content-Type: text/html; charset=gbk

详情请访问云服务器、域名注册、虚拟主机的问题,请访问西部数码代理商官方网站: www.chenqinet.cn

后台-系统设置-扩展变量-手机广告位-内容页底部广告位3