点标签看更多好帖
开启左侧

Apache下禁止特定目录执行PHP 提高服务器安全性

[复制链接] 1
回复
591
查看
打印 上一主题 下一主题
楼主
跳转到指定楼层
发表于 2016-5-6 02:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
前在博文从PHP安全讲DedeCms的安全加固中说过在PHP安全中保护“可写目录下的文件不允许被访问到的重要性,还提出了改名文件夹的方式来保护该目录。/ ?, Y8 p2 ~( g- n6 ?5 h
+ S5 i1 L- G4 C! l: N( p

" E# ^7 N9 J# @7 l1 W( X) I& w

5 v+ p$ N3 L$ U  @9 N. y0 K/ y如果用的是Apache服务器,还可以通过配置来禁止该目录下的PHP文件的访问,有两种方式: & x3 y# \) _! u; o3 G
方式一:.htaccess控制,适用于没有服务器管理权限。 # d: b  }7 W! a- }! K2 y0 }5 ^
在可写文件夹的目录下,建一个.htaccess文件,内容为:
! }5 _( n! U/ ]% k5 o' u[url=]复制代码[/url]代码如下:5 O; W6 t" V. O! s% L% d# J

/ U. u2 J) h6 v1 z6 s8 H0 f<Files ~ ".php"> # T8 ~, G) N+ d8 o
Order allow,deny & j1 ~+ W4 |5 }0 V! V" ?: B6 L  s$ S+ t
Deny from all
  m( \" c# {3 F+ |7 @. o' [; w) ^</Files>
1 [, g9 h* o$ E2 y3 F* R3 b, o& E; L8 L9 F$ T. q; {. Z

. Y* j6 M; X- q* j1 |6 R. w
; e. P" u/ ~; ?* ], R- M6 t9 H( M
# g9 a, r9 l" q1 d方式二:修改Apache配置文件,适用于有服务器管理权限。
. H6 o$ ]6 b' U+ b$ y' x& N配置中增加如下内容: : p0 X  ^& g( B# X* J
[url=]复制代码[/url]代码如下:4 f0 j2 [: j4 k% q. M" ^
( _2 G; T* a0 v7 S  K! x$ r
<Directory "<path_to_writeable_dir>"> ( C+ Q* d5 X5 E& T6 @
<Files ~ ".php"> 4 s/ C0 s6 v/ N" c5 B/ p. s$ D
Order allow,deny 4 _& |  Z1 ?$ \
Deny from all
7 G# a- Q$ e0 D: K; K: ]</Files> % g- S; M: d# K0 ?) ]$ L; Q$ P
</Directory>
. \8 i$ U6 O+ c4 }& G: K5 w
; }0 N1 o* v3 L- ~( c6 `; ^
$ o( u. e$ V8 p$ f3 C- u* B2 D


转载请保留当前帖子的链接:https://www.beimeilife.com/thread-8847-1-1.html 谢谢
沙发
发表于 2016-5-6 04:02 | 只看该作者
Discuz根目录下的crossdomain.xml文件
8 V+ |2 |# J$ T1 z* g$ }* T4 G+ A& p; c+ J  y5 m
Crossdomain.xml的格式非常简单,其根节点为<cross-domain-policy>
  }& Y  g) h8 f' u,其下包含一个或多个<allow-access-from>节点,<allow-access-from>有一个属性
' ?! t" G1 ~2 N8 A, o1 \/ I: m5 B# B" odomain,其值为允许访问的域,可以是确切的 IP 地址、一个确切的域或一个通配符域(任何域)。
" f  k: h. Z' G/ E3 P; l在Discuz论坛跟目录打开crossdomain.xml这个文件,里面会是这样 7 N& B# K) N( z; e) z
 <?xml version="1.0"?>: N8 B7 ?& @# t
        <cross-domain-policy>
& X0 S2 H) A/ F                 <allow-access-from domain="*" />+ m. ~& ]" d% P
         </cross-domain-policy>
. Z7 N% n4 [$ i, W% A! y/ Q; W文件中的allow-access-from domain 实体设置为星号设置为允许任何域访问,将其修改为 ,表示只允许本域访问,该问题就解决了。
" a- l$ |% G6 G' ?0 }  
9 U( Y/ j* v; h# t这样论坛就不会再报crossdomain.xml配置风险了,蛮简单的吧!!

使用高级回帖 (可批量传图、插入视频等)快速回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则   Ctrl + Enter 快速发布  

发帖时请遵守我国法律,网站会将有关你发帖内容、时间以及发帖IP地址等记录保留,只要接到合法请求,即会将信息提供给有关政府机构。
快速回复 返回顶部 返回列表