服务器安全设置系列教程
IIS+PHP+MySQL+Zend Optimizer+GD库+phpMyAdmin安装配置[完整修正实用版]
一、软件准备:以下均为截止2006-1-20的最新正式版本,下载地址也均长期有效
1.PHP,推荐PHP4.4.0的ZIP解压版本:
PHP(4.4.0):
PHP(5.1.2):
2.MySQL,配合PHP4推荐MySQL4.0.26的WIN系统安装版本:
MySQL(4.0.26):
MySQL(4.1.16):
MySQL(5.0.18):
3.Zend Optimizer,当然选择当前最新版本拉:
Zend Optimizer(2.6.2):?pid=13
(Zend软件虽然免费下载,但需要注册用户,这里提供注册好的帐户名:xqincom和密码:xqin.com,方便大家使用,请不要修改本帐号或将本帐户用于其他费正当途径,谢谢!)
登陆后选择Windows x86的Platform版本,如最新版本2.6.2 https://www.zend.com/store/getfreefile.php?pid=13&zbid=995
4.phpMyAdmin
当然同样选择当前最新版本拉,注意选择for Windows 的版本哦:
phpMyAdmin(2.8.0.3):
假设 C:\ 为你现在所使用操作系统的系统盘,如果你目前操作系统不是安装在 C:\ ,请自行对应修改相应路径。同时由于C盘经常会因为各种原因重装系统,数据放在该盘不易备份和转移 选择安装目录,故本文将所有PHP相关软件均安装到D:\php目录下,这个路径你可以自行设定,如果你安装到不同目录涉及到路径的请对应修改以下的对应路径即可
二、安装 PHP :本文PHP安装路径取为D:\php\php4\(为避混淆,PHP5.1.x版本安装路径取为D:\php\php5\)
(1)、下载后得到 php-4.4.0-Win32.zip ,解压至D:\php目录,将得到二级目录php-4.4.0-Win32,改名为 php4,
也即得到PHP文件存放目录D:\php\php4\
[如果是PHP5.1.2,得到的文件是php-5.1.2-Win32.zip,直接全部接压至D:\php\php5目录即可得PHP文件存放目录D:\php\php5\];
(2)、再将D:\php\php4目录和D:\php\php4\dlls目录
[PHP5为D:\php\php5\]下的所有dll文件 copy 到 c:\Windows\system32 (win2000系统为 c:/winnt/system32/)下,覆盖已有的dll文件;
(3)、将php.ini-dist用记事本打开,利用记事本的查找功能搜索并修改:
搜索 register_globals = Off将 Off 改成 On ,即得到 register_globals = On
注:这个对应PHP的全局变量功能,考虑有很多PHP程序需要全局变量功能故打开,打开后请注意-PHP程序的严谨性,如果不需要推荐不修改保持默认Off状态 搜索 extension_dir =
这个是PHP扩展功能目录 并将其路径指到你的 PHP 目录下的 extensions 目录,比如:
修改 extension_dir = "./" 为 extension_dir = "D:/php/php4/extensions/"
[PHP5对应修改为 extension_dir = "D:/php/php5/ext/" ] 在D:\php 下建立文件夹并命名为 tmp
查找 upload_tmp_dir =
将 ;upload_tmp_dir 该行的注释符,即前面的分号" ;”去掉,
使该行在php.ini文档中起作用。upload_tmp_dir是用来定义上传文件存放的临时路径,在这里你还可以修改并给其定义一个绝对路径,这里设置的目录必须有读写权限。
这里我设置为 upload_tmp_dir = D:/php/tmp (即前面建立的这个文件夹呵) 搜索 ; Windows Extensions
将下面一些常用的项前面的 ; 去掉 ,红色的必须,蓝色的供选择
;extension=php_mbstring.dll
这个必须要
;extension=php_curl.dll
;extension=php_dbase.dll
;extension=php_gd2.dll
这个是用来支持GD库的,一般需要,必选
;extension=php_ldap.dll
;extension=php_zip.dll
对于PHP5的版本还需要查找
;extension=php_mysql.dll
并同样去掉前面的";"
这个是用来支持MYSQL的,由于PHP5将MySQL作为一个独立的模块来加载运行的,故要支持MYSQL必选
去掉前面 ; 号,本文这里将其设置置为
session.save_path = D:/php/tmp
其他的你可以选择需要的去掉前面的;
然后将该文件另存为为 php.ini 到 C:\Windows ( Windows 2000 下为 C:\WINNT)目录下,注意更改文件后缀名为ini,
得到 C:\Windows\php.ini ( Windows 2000 下为 C:\WINNT\php.ini)
若路径等和本文相同可直接保存到C:\Windows ( Windows 2000 下为 C:\WINNT) 目录下 使用
一些朋友经常反映无法上传较大的文件或者运行某些程序经常超时,那么可以找到C:\Windows ( Windows 2000 下为 C:\WINNT)目录下的PHP.INI以下内容修改:
max_execution_time = 30 ; 这个是每个脚本运行的最长时间,可以自己修改加长,单位秒
max_input_time = 60 ; 这是每个脚本可以消耗的时间,单位也是秒
memory_limit = 8M ; 这个是脚本运行最大消耗的内存,也可以自己加大
upload_max_filesize = 2M ; 上载文件的最大许可大小 ,自己改吧,一些图片论坛需要这个更大的值
(4)、配置 IIS 使其支持 PHP :
首先必须确定系统中已经正确安装 IIS ,如果没有安装,需要先安装 IIS ,安装步骤如下:
Windows 2000/XP 下的 IIS 安装:
用 Administrator 帐号登陆系统,将 Windows 2000 安装光盘插入光盘驱动器,进入“控制面板”点击“添加/删除程序”,再点击左侧的“添加/删除 Windows 组件”,在弹出的窗口中选择“Internet 信息服务(IIS)”,点下面的“详细信息”按钮,选择组件,以下组件是必须的:“Internet 服务管理器”、“World Wide Web 服务器”和“公用文件”,确定安装。
安装完毕后,在“控制面板”的“管理工具”里打开“服务”,检查“IIS Admin Service”和“World Wide Web Publishing Service”两项服务,如果没有启动,将其启动即可。
Windows 2003 下的 IIS 安装:
由于 Windows 2003 的 IIS 6.0 集成在应用程序服务器中,因此安装应用程序服务器就会默认安装 IIS 6.0 ,在“开始”菜单中点击“配置您的服务器”,在打开的“配置您的服务器向导”里左侧选择“应用程序服务器(IIS,ASP.NET)”,单击“下一步”出现“应用程序服务器选项”,你可以选择和应用程序服务器一起安装的组件,默认全选即可,单击“下一步”,出现“选择总结界面”,提示了本次安装中的选项,配置程序将自动按照“选择总结”中的选项进行安装和配置。
打开浏览器,输入:,看到成功页面后进行下面的操作:
PHP 支持 CGI 和 ISAPI 两种安装模式,CGI 更消耗资源,容易因为超时而没有反映,但是实际上比较安全,负载能力强,节省资源,但是安全性略差于CGI,本人推荐使用 ISAPI 模式。故这里只解介绍 ISAPI 模式安装方法:(以下的截图因各个系统不同,窗口界面可能不同,但对应选项卡栏目是相同的,只需找到提到的对应选项卡即可)
在“控制面板”的“管理工具”中选择“Internet 服务管理器”,打开 IIS 后停止服务,对于WIN2000系统在”Internet 服务管理器“的下级树一般为你的”计算机名“上单击右键选择“属性”,再在属性页面选择主属性”WWW 服务“右边的”编辑“
对于XP/2003系统展开”Internet 服务管理器“的下级树一般为你的”计算机名“选择”网站“并单击右键选择“属性”
在弹出的属性窗口上选择“ISAPI 筛选器”选项卡找到并点击“添加”按钮,在弹出的“筛选器属性”窗口中的“筛选器名称”栏中输入:
PHP ,再将浏览可执行文件使路径指向 php4isapi.dll 所在路径,
如本文中为:D:\php\php4\sapi\php4isapi.dll
[PHP5对应路径为 D:\php\php5\php5isapi.dll]
打开“站点属性”窗口的“主目录”选项卡,找到并点击“配置”按钮
在弹出的“应用程序配置”窗口中的”应用程序映射“选项卡找到并点击“添加”按钮新增一个扩展名映射,在弹出的窗口中单击“浏览”将可执行文件指向 php4isapi.dll 所在路径,如本文中为:D:\php\php4\sapi\php4isapi.dll[PHP5对应路径为D:\php\php5\php5isapi.dll],扩展名为 .php ,动作限于”GET,HEAD,POST,TRACE“,将“脚本引擎”“确认文件是否存在”选中,然后一路确定即可。如果还想支持诸如 .php3 ,.phtml 等扩展名的 PHP 文件,可以重复“添加”步骤,对应扩展名设置为需要的即可如.PHPX。
此步操作将使你服务器IIS下的所有站点都支持你所添加的PHP扩展文件,当然如果你只需要部分站点支持PHP,只需要在“你需要支持PHP的Web站点”比如“默认Web站点”上单击右键选择“属性”,在打开的“ Web 站点属性”“主目录”选项卡,编辑或者添加PHP的扩展名映射即可或者将你步需要支持PHP的站点中的PHP扩展映射删除即可
再打开“站点属性”窗口的“文档”选项卡,找到并点击“添加”按钮,向默认的 Web 站点启动文档列表中添加 index.php 项。您可以将 index.php 升到最高优先级,这样,访问站点时就会首先自动寻找并打开 index.php 文档。
确定 Web 目录的应用程序设置和执行许可中选择为纯脚本,然后关闭 Internet 信息服务管理器
对于2003系统还需要在“Internet 服务管理器”左边的“WEB服务扩展”中设置ISAPI 扩展允许,Active Server Pages 允许
完成所有操作后,重新启动IIS服务。
在CMD命令提示符中执行如下命令:
net stop w3svc
net stop iisadmin
net start w3svc
到此,PHP的基本安装已经完成,我们已经使网站支持PHP脚本。
检查方法是,在 IIS 根目录下新建一个文本文件存为 php.php ,内容如下:
<?php
phpinfo();
?>
打开浏览器,输入:,将显示当前服务器所支持 PHP 的全部信息,可以看到 Server API的模式为:ISAPI 。
或者利用PHP探针检测下载后解压到你的站点根目录下并访问即可
三、安装 MySQL :
对于MySQL4.0.26下载得到的是mysql-4.0.26-win32.zip,解压到mysql-4.0.26-win32目录双击执行 Setup.exe 一路Next下一步,选择安装目录为D:\php\MySQL和安装方式为Custom自定义安装,再一路Next下一步即可。
安装完毕后,在CMD命令行中输入并运行:
D:\php\MySQL\bin\mysqld-nt -install
如果返回Service successfully installed.则说明系统服务成功安装
新建一文本文件存为MY.INI,编辑配置MY.INI,这里给出一个参考的配置
[mysqld]
basedir=D:/php/MySQL
#MySQL所在目录
datadir=D:/php/MySQL/data
#MySQL数据库所在目录,可以更改为其他你存放数据库的目录
#language=D:/php/MySQL/share/your language directory
#port=3306
set-variable = max_connections=800
skip-locking
set-variable = key_buffer=512M
set-variable = max_allowed_packet=4M
set-variable = table_cache=1024
set-variable = sort_buffer=2M
set-variable = thread_cache=64
set-variable = join_buffer_size=32M
set-variable = record_buffer=32M
set-variable = thread_concurrency=8
set-variable = myisam_sort_buffer_size=64M
set-variable = connect_timeout=10
set-variable = wait_timeout=10
server-id = 1
[isamchk]
set-variable = key_buffer=128M
set-variable = sort_buffer=128M
set-variable = read_buffer=2M
set-variable = write_buffer=2M
[myisamchk]
set-variable = key_buffer=128M
set-variable = sort_buffer=128M
set-variable = read_buffer=2M
set-variable = write_buffer=2M
[WinMySQLadmin]
Server=D:/php/MySQL/bin/mysqld-nt.exe
保存后复制此MY.INI文件到C:\Windows ( Windows 2000 下为 C:\WINNT)目录下
回到CMD命令行中输入并运行:
net start mysql
MySQL 服务正在启动 .
MySQL 服务已经启动成功。
将启动 MySQL 服务;
DOS下修改ROOT密码:当然后面安装PHPMYADMIN后修改密码也可以通过PHPMYADMIN修改
格式:mysqladmin -u用户名 -p旧密码 password 新密码
例:给root加个密码xqin.com
首先在进入CMD命令行,转到MYSQL目录下的bin目录,然后键入以下命令
mysqladmin -uroot password 你的密码
注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。
D:\php\MySQL\bin>mysqladmin -uroot password 你的密码
回车后ROOT密码就设置为你的密码了
如果你下载的是 MySQL5.x或者MySQL4.1.x,例mysql-5.0.18-win32:解压后双击执行 Setup.exe ,Next下一步后选择Custom自定义安装,再Next下一步选择安装路径这里我们选择D:\php\MySQL,继续Next下一步跳过Sign UP完成安装。
安装完成后会提示你是不是立即进行配置,选择是即可进行配置。当然一般安装后菜单里面也有配置向导MySQL Server Instance Config Wizar,运行后按下面步骤配置并设置ROOT密码即可
Next下一步后选择Standard Configuration
Next下一步,钩选Include .. PATH
Next下一步,设置ROOT密码,建议社设置复杂点,确保服务器安全!
Apply完成后将在D:\php\MySQL目录下生成MY.INI配置文件,添加并启动MySQL服务
如果你的MySQL安装出错,并且卸载重装仍无法解决,这里提供一个小工具系统服务管理器,用于卸载后删除存在的MYSQL服务,重起后再按上述说明进行安装一般即可成功安装
四、安装 Zend Optimizer :
下载后得到 ZendOptimizer-2.6.2-Windows-i386.exe ,直接双击安装即可,安装过程要你选择 Web Server 时,选择 IIS ,然后提示你是否 Restart Web Server,选择是,完成安装之前提示是否备份 php.ini ,点确定后安装完成。我这里安装到D:\php\Zend
以下两步的目录根据你自己的默认WEB站点目录来选,当然也可以选择到D:\php\Zend目录
Zend Optimizer 的安装向导会自动根据你的选择来修改 php.ini 帮助你启动这个引擎。下面简单介绍一下 Zend Optimizer 的配置选项。以下为本人安装完成后 php.ini 里的默认配置代码(分号后面的内容为注释):
[zend]
zend_extension_ts="D:\php\Zend\lib\ZendExtensionManager.dll"
;Zend Optimizer 模块在硬盘上的安装路径。
zend_extension_manager.optimizer_ts="D:\php\Zend\lib\Optimizer-2.6.2"
;优化器所在目录,默认无须修改。
zend_optimizer.optimization_level=1023
;优化程度,这里定义启动多少个优化过程,默认值是 15 ,表示同时开启 10 个优化过程中的 1-4 ,我们可以将这个值改为 1023 ,表示开启全部10个优化过程。
调用phpinfo()函数后显示:
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies with Zend Extension Manager v1.0.9, Copyright (c) 2003-2006, by Zend Technologies with Zend Optimizer v2.6.2, Copyright (c) 1998-2006, by Zend Technologies
则表示安装成功。
五.安装GD库
这一步在前面PHP.INI配置中去掉“;extension=php_gd2.dll”前面的;实际上已经安装好了~
[在php.ini里找到"extension=php_gd2.dll"这一行,并且去掉前面的分号,gd库安装完成,用 echophpinfo() ;测试是否成功! ]
六、安装 phpMyAdmin
下载得到 phpMyAdmin-2.7.0.zip (如果需要这个版本可以找我QQ:4615825 3300073),
将其解压到D:\php\或者 IIS 根目录,改名phpMyAdmin-2.7.0为phpMyAdmin,
这里建立默认站点的phpMyAdmin虚拟目录指向D:\php\phpMyAdmin目录通过访问
找到并打开D:\php\phpMyAdmin目录下的 config.default.php ,做以下修改:
查找 $cfg['PmaAbsoluteUri']
设置你的phpmyadmin的WEB访问URL,比如本文中:$cfg['PmaAbsoluteUri'] = 'http://localhost/phpmyadmin/'; 注意这里假设phpmyadmin在默认站点的根目录下
设置COOKIES加密密匙,如xqin.com则设置为$cfg['blowfish_secret'] = 'xqin.com';
查找 $cfg['Servers'][$i]['auth_type'] = ,
默认为config,是不安全的,不推荐,推荐使用cookie,将其设置为 $cfg['Servers'][$i]['auth_type'] = 'cookie';
注意这里如果设置为config请在下面设置用户名和密码!例如:
$cfg['Servers'][$i]['user'] = 'root'; // MySQL user-----MySQL连接用户
$cfg['Servers'][$i]['password'] = 'xqin.com';
搜索$cfg['DefaultLang'] ,将其设置为 zh-gb2312 ;
搜索$cfg['DefaultCharset'] ,将其设置为 gb2312 ;