降低winnt Apache服务的权限,让你的虚拟主机更安全

winnt 安装 Apache 后,在后台的服务默认是以system权限运行的(system是winnt的最高权限),这给服务器带来很大的安全隐患,最近我遇到的就是php的W8C 文件管理既然可以随意浏览,创建和删除winnt分区内的所有文件,包括系统目录的,因为php的权限也是system,可怕!我尝试修改php.ini禁用了一些函数但效果不好,一些程序不能运行。

解决办法:

1,在管理工具–计算机管理新建一个用户apache,用户权限user,设置一个密码,第一步完成

2,在管理工具–本地全策略—用户权力指派–作为服务登陆,添加apache这个用户。第二步完成

3,在管理工具–服务,找到apache这个服务,属性–登陆,你会看到现在选择的是本地系统账户,改称此账号,浏览找到apache这个用户,输入密码,确定,重起apache,ok现在apache就是以user权限运行的了。

Read More

Windows下降权MYSQL和apche的运行级别(普通用户权限运行)

1、MYSQL的降权运行

新建立一个用户比如mysql
net user mysql microsoft /add
net localgroup users mysql /del
不属于任何组
如果MYSQL装在d:\mysql ,那么,给 mysql完全控制 的权限
然后在系统服务中设置,MYSQL的服务属性,在登录属性当中,选择此用户mysql然后输入密码,确定。
重新启动MYSQL服务,然后MYSQL就运行在低权限下了。

Read More

Windows下Apache应用环境塔建安全设置(目录权限设置)

目的:为Apache,php配置受限制的用户权限。保护系统安全。需要的朋友可以参考下。

环境配置情况:
apache安装目录:d:\www-s\apache
php目录:d:\www-s\php5
mysql目录:d:\www-s\mysql
网站根目录:d:\www\htdocs

专门为运行Apache运行所使用的用户:apache-u(可不隶属于任何用户组)

PS:这里只说Windows下Apache应用环境相关的目录权限设置,至于其他基本的服务器目录权限设置就不提啦!

Read More

php Try Catch多层级异常测试

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php  
class a {
public function a1 () {
try {
throw new Exception('123');
} catch (Exception $e) {
throw $e;
}
}
}

class b {
public function b1 () {
try {
$a = new a();
$a->a1();
} catch (Exception $e) {
throw $e;
//throw new Exception($e->getMessage());
}
}
}

class c {
public function c1 () {
try {
$a = new b();
$a->b1();
} catch (Exception $e) {
throw $e;
}
}
}

try {
$c = new c();
$c->c1();
} catch (Exception $e) {
echo $e->getTraceAsString();
}
echo 'end';

?>

Read More

php学习之try catch

PHP 5 添加了类似于其它语言的异常处理模块。在 PHP 代码中所产生的异常可被 throw语句抛出并被 catch 语句捕获。(注:一定要先抛才能获取)
需要进行异常处理的代码都必须放入 try 代码块内,以便捕获可能存在的异常。
每一个 try 至少要有一个与之对应的 catch。
使用多个 catch可以捕获不同的类所产生的异常。
当 try 代码块不再抛出异常或者找不到 catch 能匹配所抛出的异常时,PHP 代码就会在跳转到最后一个 catch 的后面继续执行。
当然,PHP允许在 catch 代码块内再次抛出(throw)异常。
当一个异常被抛出时,其后(译者注:指抛出异常时所在的代码块)的代码将不会继续执行,而 PHP 就会尝试查找第一个能与之匹配的 catch。

如果一个异常没有被捕获,而且又没用使用 set_exception_handler() 作相应的处理的话,那么 PHP 将会产生一个严重的错误,并且输出 Uncaught Exception … (未捕获异常)的提示信息。

Read More