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

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

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

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

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

x
前在博文从PHP安全讲DedeCms的安全加固中说过在PHP安全中保护“可写目录下的文件不允许被访问到的重要性,还提出了改名文件夹的方式来保护该目录。
. G% ^8 u# E" v8 o
6 [4 d& S' f0 ^- _/ N- V- D

. a$ U* R* K# z# c9 f1 }
! i9 a' X% W0 n- L+ W% J
如果用的是Apache服务器,还可以通过配置来禁止该目录下的PHP文件的访问,有两种方式:
0 R- J4 y6 x$ s3 r+ H3 [( s4 H方式一:.htaccess控制,适用于没有服务器管理权限。 : L% l  v0 }/ j5 V  c" p; H
在可写文件夹的目录下,建一个.htaccess文件,内容为: 3 {/ p% B3 X2 p) z
[url=]复制代码[/url]代码如下:5 h5 a, ]0 A$ ]( j9 w5 ~

5 P1 b% K9 c0 p8 \+ G) f0 E2 Q: B2 f<Files ~ ".php"> ) `) }* E5 X+ {
Order allow,deny + M! p5 n3 \7 D" x7 x+ b  H9 l
Deny from all 7 {+ y. _. S' I  l
</Files>
! n9 K; a( I* o1 E2 P3 M) F; ~3 P* r( T1 J# z! X7 m6 ?, T! s! W$ m/ P+ U
- E" G  o- I, n) o# b1 N
# B; ?9 V2 ?! u* a
5 O1 [: h5 _9 d6 Y
方式二:修改Apache配置文件,适用于有服务器管理权限。
% L3 p7 c! F) W  Z, l& T配置中增加如下内容: " `0 R: u+ h. ]5 |( s
[url=]复制代码[/url]代码如下:
7 w  O. B6 d8 v: A" _
6 S4 u8 e3 ^, Q4 Z4 d( L3 D% x<Directory "<path_to_writeable_dir>"> $ V8 j  P* }' \! i* T( v$ V
<Files ~ ".php"> : O% Q6 n4 G. H; k5 l
Order allow,deny
- w. R4 I: O( P( WDeny from all
8 n2 o8 k% o2 w: ~7 B$ _9 h6 G</Files>
+ W* x6 c" H3 n0 i8 X$ ^</Directory>
  u( P( i2 i, E$ }! g4 i( @5 A) r$ F
8 d- r) C4 ]- T1 _' E) `
5 n5 I# J5 g% z3 p6 t" }" W+ [


转载请保留当前帖子的链接:https://www.beimeilife.com/thread-8847-1-1.html 谢谢
沙发
发表于 2016-5-6 04:02 | 只看该作者
Discuz根目录下的crossdomain.xml文件
9 ~; L! Q: P# q9 v: Q7 q/ F4 L) X
Crossdomain.xml的格式非常简单,其根节点为<cross-domain-policy>, E8 ]  _4 F2 X
,其下包含一个或多个<allow-access-from>节点,<allow-access-from>有一个属性+ S" R" F" ^- |) f. {# I8 \: q8 b
domain,其值为允许访问的域,可以是确切的 IP 地址、一个确切的域或一个通配符域(任何域)。
5 l2 Q1 a7 M# y4 f9 L5 r7 Q; ^, r在Discuz论坛跟目录打开crossdomain.xml这个文件,里面会是这样 0 o! W" ^: s: F) Z; a
 <?xml version="1.0"?>
! u% [3 d4 N% D        <cross-domain-policy>! m% ]6 x  I8 G; |" u
                 <allow-access-from domain="*" />
4 ]8 w: r  t6 @! n; @: ?         </cross-domain-policy>
5 ?$ H* Q8 T# [( f- E+ v9 E9 W文件中的allow-access-from domain 实体设置为星号设置为允许任何域访问,将其修改为 ,表示只允许本域访问,该问题就解决了。2 Z6 I6 `( y0 j/ O5 |; y
  1 v2 X' C! L4 A
这样论坛就不会再报crossdomain.xml配置风险了,蛮简单的吧!!

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

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

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

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