最新WAMP主要的配置及安全考虑

分类:Apache | 作者:凹凸曼 | 发表于2011/09/07 1条评论

之前LNMP 耍的多,

这哈最近一段安装WAMP这个比较多,就顺便了汇总一下

对于安装顺序 apache_2.2.3->php-5.3.2->ZendOptimizer-3.2.0->mysql-5.5.15

一、apache配置

1、在安装过程中,注意一定要填写邮件地址 可以随便写

2、配置文件httpd.conf 修改文件路径 “\” 需改成 “/”

3、DocumentRoot 和<Directory>修改对应的根目录

4、配置虚拟站点 #Include conf/extra/httpd-vhosts.conf 去掉 # 号 (后面在说配置虚拟站点)

5、开启httpd日记记录  分别搜索ErrorLog和CustomLog  如前面有# 号 去掉前面的#号 可以修改相应的日记目录文件地址

下面几点为开启支持php 这个是在安装配置完php,才能正常启动apache

6、在#LoadModule 后面加入两个

 #指以module方式加载php

LoadModule php5_module E:/php/php-5.3.2/php5apache2_2.dll   #注意这里不是php5apache2.dll 

#指明php的配置文件php.ini的位置

PHPIniDir “E:/php/php-5.3.2”  

7、在AddType application/x-gzip .gz .tgz 后面 加入一行

#可以执行php的文件类型

AddType application/x-httpd-php .php

8、在DirectoryIndex index.html  行 修改为   DirectoryIndex index.php index.html 

9、禁止显示 Apache 目录列表 Options Indexes FollowSymLinks 改为  Options  FollowSymLinks

 

二、php配置

1、php我采用的解压版 写入注册表就行了 pws-php5isapi.reg

2、配置系统变量 path 后面新增 如: D:\PHP\php-5.3.2;D:\PHP\php-5.3.2\ext;  

3、extension_dir = “ext”  修改对应自己php 扩展库 地址

4、;date.timezone = 修改为date.timezone = “Asia/Shanghai”

      ;date.default_latitude =修改为 date.default_latitude = 31.5167

      ;date.default_longitude =修改为 date.default_longitude = 121.4500

5、一般需要开启调用的模块

extension=php_gd2.dll

extension=php_mbstring.dll

extension=php_mysql.dll

6、display_errors = Off 建议还是开启ON 用于排错,但是正式的运行环境中,为了安全考虑 请关闭

7控制php脚本能访问的目 apache open_basedir = “C:\WINDOWS\Temp;E:\php\www” 

nginx open_basedir=/data/www/某站点目录:/tmp 写具体的站点目录,可以防止跨目录访问

 8、关闭危险函数disable_functions=eval,passthru,exec,system,chroot,scandir,chgrp,chown,

shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,

openlog,syslog,readlink,symlink,popepassthru,stream_socket_serve

#opendir,readdir,rewinddir ,scandir  #如果你的网站没有用到,建议也关闭

9、错误日记开启 log_errors = On
error_log = php_error.log
  

 

三、ZendOptimizer-3.2.0

安装完,查看 php.ini 最后的行数

[Zend]
zend_extension_manager.optimizer_ts=”E:\php\ZendOptimizer-3.2.0\lib\Optimizer-3.2.0″
zend_extension_ts=”E:\php\ZendOptimizer-3.2.0\lib\ZendExtensionManager.dll”

如有上面的表示安装成功。。。

四、mysql配置 咱不讨论了哈

 

五、虚拟站点配置 案例

<VirtualHost *:80>
ServerAdmin jar-c@163.com.
DocumentRoot E:\php\www\test.
ServerName t.apoyl.com.
ServerAlias www.apoyl.com.
php_admin_value open_basedir  C:\WINDOWS\Temp;E:\php\www\test  #限制虚拟站点的目录
   # ErrorLog E:/php/logs/t.apoyl.com.-error_log
#CustomLog E:/php/logs/t.apoyl.com.-access_log common

#日志分割
ErrorLog “|D:/php/Apache2.2/bin/rotatelogs -l E:/php/logs/t.apoyl.com.-error_%Y%m%d_log  86400″
CustomLog “|D:/php/Apache2.2/bin/rotatelogs -l  E:/php/logs/t.apoyl.com.-access_%Y%m%d_log
86400″ combined
</VirtualHost>

六、Apache某目录访问指定ip
<Directory “/www/data/myweb/admin”>
Options All
AllowOverride None
Order Deny,Allow
Deny From all
Allow From 1.237.15.83   #admin目录只容许这个ip访问
</Directory>

七、nginx 站点于权限目录完全开发要特别注意

如:上传权限目录

我们需要禁止一些脚本的执行权限

如下:禁止tmp upload templates 执行php脚本

location ~ .*(tmp|uload|templates)/.*\.(php|php5)$ {

deny all;

}

备注:红色为安全性 特别标明

本文出自 “凹凸曼” 博客,请务必保留此出处 http://www.apoyl.com/?p=1160

Tag:

日志信息 »

该日志于2011-09-07 15:50由 凹凸曼 发表在Apache分类下, 你可以发表评论。除了可以将这个日志以保留源地址及作者的情况下引用到你的网站或博客,还可以通过RSS 2.0订阅这个日志的所有评论。

目前盖楼 (1)层:

发表评论 »

« »