apache在win2003下的安全设置(配合文件夹权限目录,很好很安全)

softyun3年前服务器124

于是要创建一个新的帐户来替代这个帐号启动apache并设置相应的权限:
1.在计算机管理里的本地用户和组里面创建一个帐户,例如:apache,密码设置为 apacheuser,加入guests组(如果出现问题,可以赋予user权限);

2.打开开始->管理工具->本地安全策略,在用户权限分配中选择“作为服务登陆”,添加apache用 户;

3.计算机管理里面选择服务,找到apache2.2,先停止服务,右击->属性,选择登陆,把单选框从本地系统帐户切换到此帐户,然后查找 选择apache,输入密码apacheuser,然后点确定(这个时候apache还不能正常启动,一般情况肯定会报错:Apache2.2 服务因 1 (0x1) 服务性错误而停止。);

4.赋予apache安装目录(比如:D:/apache2.2)以及web目录(比 如D:/wwwroot)apache帐号的可读写权限,去除 各磁盘根目录除administror与system以外的所有权限,赋予apache安装 目录所在的磁盘根目录apache帐户的可读取列目录权限(我 开始觉得没必要,但后来发现:这是导致上面出错的关键。)

5.启动apache,一切OK了。

6.php.ini中指定的PHP临时上传目录和session保存目录,并给予目录apache完 全控制权限,例如:
upload_tmp_dir = "D:/wwwroot/Tmp/uploadtmp/"
session.save_path = "D:/wwwroot/Tmp/sessiontmp/"

7.给予D:/php目录读取与运行的权限;

8.给予zend安装目录读取与运行的权限;

9.限制读取访问的目录,修改apache安装目录下conf文件夹下的 httpd.conf,加上:
php_admin_value open_basedir "D:/wwwroot"
php_admin_value safe_mode On

httpd.conf配置(假如将PHP读写权限限制在E:\smis目录下)
Apache2.0配置示例:

复制代码 代码如下:


<VirtualHost *:80>
ServerName abc
DocumentRoot "E:/smis"
Options FollowSymLinks IncludesNOEXEC Indexes
DirectoryIndex index index.htm default.htm index.php default.php
AllowOverride None
Order Deny,Allow
Allow from all
php_admin_value open_basedir "E:/smis/;E:/APMServ5.2.0/PHP/uploadtemp/;E:/APMServ5.2.0/PHP/sessiondata/"
php_admin_value safe_mode On
</VirtualHost>



Apache2.2配置示例:

复制代码 代码如下:


<VirtualHost *:80>
ServerName abc
DocumentRoot "E:/smis"
</VirtualHost>
<Directory "E:/smis">
Options FollowSymLinks IncludesNOEXEC Indexes
DirectoryIndex index index.htm default.htm index.php default.php
AllowOverride None
Order Deny,Allow
Allow from all
php_admin_value open_basedir "E:/smis/;E:/APMServ5.2.0/PHP/uploadtemp/;E:/APMServ5.2.0/PHP/sessiondata/"
php_admin_value safe_mode On
</Directory>



win2003系统下apache、php、mysql安装以及虚拟主机和目录权限设置

本文介绍的在试在win2003系统下apache、php、mysql安装以及虚拟主机和目录权限设置,即WAPM。
但不同于打包的WAPM软件,此软件部推荐在正式的服务器上面部署。下面开始:
1 安装pache、php、mysql
安装到自己认为合适的目录,三个软件的下载以及安装我不再叙述了,应该看到这篇文章的人对这部分内容都会认为是多余的!

2 虚拟主机设置
打开..\Apache\conf\http.conf
在# Virtual hosts处去掉加载虚拟主机的注释符号
Include conf/extra/httpd-vhosts.conf

在conf/extra/httpd-vhosts.conf配置虚拟主机配置文件内容:
以我的招聘网站jobigg为例:
# 1 jobigg

复制代码 代码如下:


<VirtualHost *:80>
ServerAdmin alavin.cui@gmail
DocumentRoot "D:/jobigg"
ServerName jobigg
ServerAlias jobigg
ErrorLog "logs/jobigg-error.log"
CustomLog "logs/jobigg-access.log" common
</VirtualHost>


我的服务器为双ip,所以在httpd-vhosts.conf和http.conf中有点不同的配置
#Listen 11.11.11.11:80
Listen 80
就是未指定IP地址,才能正常使用双ip。

3 降低apache的运行权限
3.1 创建一个新的帐户
在计算机管理里的本地用户和组里面创建一个帐户,例如:apache,密码设置为jobigg,加入user组;
3.2 打开开始->管理工具->本地安全策略,在用户权限分配中选择“作为服务登陆”,添加apache用户
3.3 计算机管理里面选择服务,找到apache2.2,先停止服务,右击->属性,选择登陆,把单选框从本地系统帐户切换到此帐户,然后查找选择 apache,输入密码jobigg,然后点确定(这个时候apache应该不能正常启动,一般情况肯定会报错:Apache2.2 服务因 1 (0x1) 服务性错误而停止。)
3.4 赋予apache安装目录(比如:E:/apache2.2)以及web目录(比如D: /jobigg)apache帐号的可读写权限,去除各磁盘根目录除administror与system以外的所有权限,赋予apache安装 目录所在的磁盘根目录apache帐户的可读取列目录权限
3.5 重新启动apache

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

nginx提示:500 Internal Server Error错误的解决方法

现在越来越多的站点开始用 Nginx ,("engine x") 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由...

东莞服务器有哪些品牌,东莞服务器的重要性及应用场景

1.东莞服务器东莞服务器是指放置在东莞地区的服务器设备,其硬件配置、软件系统、预装的应用软件、端口等均有所不同,可根据客户需求进行定制化配置。服务器是指对网络上的计算机资源进行管理和分配的一类计算机,...

phpstudy伪静态设置的问题

先说下phpstudy伪静态设置方法打开phpstudy控制面板,找到php扩展和设置--apache扩展。在apache扩展菜单里面,找到rewrite_module模块,把它启用勾上。也可以直接打...

什么是云服务器niaoyun,云服务器niaoyun的优势及应用场景

1.什么是云服务器niaoyun?云服务器niaoyun是一种基于云计算技术的虚拟服务器。与传统服务器相比,云服务器niaoyun具有弹性、可靠性、灵活性等优点。云服务器niaoyun主要由基础设施、...

使用宝塔面板建站时出现网页出现404错误怎么办?

最近在使用宝塔面板建站的时候发现,网站建设好之后,打开网页提示“404错误,文件不存在”,这是怎么回事呢?重新检查了一下,所有的步骤都是按照以前的流程操作的,是没有问题的,那么出现这种问题,到底的是哪...

服务主机有哪些作用,服务主机的定义和功能

1.什么是服务主机?服务主机(Server)通常指一组计算机系统,它们通过计算机网络相互连接并协同工作。其中,被称为服务器的计算机系统担任主要角色,承载了一系列服务程序,满足客户端请求并提供响应。服务...