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

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

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

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

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

x
前在博文从PHP安全讲DedeCms的安全加固中说过在PHP安全中保护“可写目录下的文件不允许被访问到的重要性,还提出了改名文件夹的方式来保护该目录。# _5 W5 f% i# ?9 X8 ]

0 R  v8 N: s) {( [1 U/ n

, A) i. D, Q6 D  ^) \
/ \( w8 G8 j. N
如果用的是Apache服务器,还可以通过配置来禁止该目录下的PHP文件的访问,有两种方式: 1 }+ J/ z1 ^" s9 O! m. h8 g
方式一:.htaccess控制,适用于没有服务器管理权限。 : e+ j; x: T7 g; N; `. ~8 U0 f
在可写文件夹的目录下,建一个.htaccess文件,内容为:
- ^6 p- z9 c/ ^( Y: K2 W1 `- B[url=]复制代码[/url]代码如下:
" j8 ?8 v' U8 }) E. ^2 d
* L. G1 _7 {: n( @<Files ~ ".php">
" w3 `" H$ ^5 n2 O9 OOrder allow,deny - q8 ~, m6 T( a2 {' ]  B% r
Deny from all " b0 P. d* I4 x/ F
</Files> ; O# D. Y/ n# _$ Y0 I' v* _3 U: t

7 c3 W, l, e9 U  C( h, s4 G7 d/ ?' V

% k4 _" |, L: Y! e5 \& H. N; }' P" |3 U/ B" y# T9 {
方式二:修改Apache配置文件,适用于有服务器管理权限。 / k8 ~( i5 P" T6 s( b) C: Z, H
配置中增加如下内容: 5 z: z/ r8 `* G' S
[url=]复制代码[/url]代码如下:& R0 H; ~$ h7 ]3 N: O0 @+ h3 w0 r

+ K# Y! @5 B) Y" \, p9 m- g6 l<Directory "<path_to_writeable_dir>">
( K2 V/ z& _1 T" S7 T$ }: r* p<Files ~ ".php">
  T+ l  g4 J6 n* AOrder allow,deny 3 W) e: \9 f+ {: Y& v
Deny from all
; A% n2 [, @8 x; w, U8 k</Files> ( p8 C' M& Z4 t" W: m! o, N
</Directory>
0 G# A+ ^! R3 T4 Z: U$ x
8 ]5 B# b$ s8 F) a+ B2 ]7 X. u/ e& T

: ~8 d; X9 n. S- j- g) d# o

转载请保留当前帖子的链接:https://www.beimeilife.com/thread-8847-1-1.html 谢谢
沙发
发表于 2016-5-6 04:02 | 只看该作者
Discuz根目录下的crossdomain.xml文件
; m4 X* a+ ~) N
+ k6 h+ E' i9 G) N# A9 WCrossdomain.xml的格式非常简单,其根节点为<cross-domain-policy>( X8 T( w* A" f: {: r+ Y; n! y
,其下包含一个或多个<allow-access-from>节点,<allow-access-from>有一个属性
. F* m6 ]9 L% D% f) V1 Idomain,其值为允许访问的域,可以是确切的 IP 地址、一个确切的域或一个通配符域(任何域)。. `2 f" b) p- e( {
在Discuz论坛跟目录打开crossdomain.xml这个文件,里面会是这样   w( y) L# o0 [9 p# o" p
 <?xml version="1.0"?>& h' R8 Z& Q9 R
        <cross-domain-policy>
2 S! w( n7 R$ C                 <allow-access-from domain="*" />
3 y: _! n% }/ R5 I, x6 Y9 S         </cross-domain-policy>" u+ ]! P6 M" o) m' X7 J
文件中的allow-access-from domain 实体设置为星号设置为允许任何域访问,将其修改为 ,表示只允许本域访问,该问题就解决了。
( A6 j- B0 K: R3 u4 d0 ?% {' S  
/ p$ j1 V+ N) d% }& y这样论坛就不会再报crossdomain.xml配置风险了,蛮简单的吧!!

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

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

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

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