CacheClockRate 3600
RepeatLimit 32
RewriteBase /
RewriteRule ^(.*)-p-(.*).html(\?)?(.*)? /index\.php\?main_page=product_info&products_id=$2&$4 [L]
RewriteRule ^(.*)-c-(.*).html(\?)?(.*)? /index\.php\?main_page=index&cPath=$2&$4 [L]
RewriteRule ^(.*)-m-([0-9]+).html(\?)?(.*)? /index\.php\?main_page=index&manufacturers_id=$2&$4 [L]
RewriteRule ^(.*)-pi-([0-9]+).html(\?)?(.*)? /index\.php\?main_page=popup_image&pID=$2&$4 [L]
RewriteRule ^(.*)-pr-([0-9]+).html(\?)?(.*)? /index\.php\?main_page=product_reviews&products_id=$2&$4 [L]
RewriteRule ^(.*)-pri-([0-9]+).html(\?)?(.*)? /index\.php\?main_page=product_reviews_info&products_id=$2&$4 [L]
# For Open Operations Info Manager
RewriteRule ^(.*)-i-([0-9]+).html(\?)?(.*)? /index\.php\?main_page=info_manager&pages_id=$2&$4
# For dreamscape''s News & Articles Manager
RewriteRule ^news/?$ index\.php\?main_page=news& [L]
RewriteRule ^news/rss.xml /index\.php\?main_page=news_rss& [L]
RewriteRule ^news/archive/? /index\.php\?main_page=news_archive& [L]
RewriteRule ^news/([0-9]{4})-([0-9]{2})-([0-9]{2}).html(\?)?(.*)? /index\.php\?main_page=news&date=$1-$2-$3&$5 [L]
RewriteRule ^news/archive/([0-9]{4})-([0-9]{2}).html(\?)?(.*)? /index\.php\?main_page=news_archive&date=$1-$2&$4 [L]
RewriteRule ^news/(.*)-a-([0-9]+)-comments.html(\?)?(.*)? /index\.php\?main_page=news_comments&article_id=$2&$4 [L]
RewriteRule ^news/(.*)-a-([0-9]+).html(\?)?(.*)? /index\.php\?main_page=news_article&article_id=$2&$4 [L]
# All other pages
# Don''t rewrite real files or directories
RewriteCond %{REQUEST_FILENAME} !-f [NC]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/(\w*).html\?(.*) /index\.php\?main_page=$1&$2 [L]
#RewriteRule ^/(.*).html(\?)? /index\.php\?main_page=$1&$3 [L]
RewriteRule ^/(\w*).html /index\.php\?main_page=$1&$3 [L]
This article describes the default permissions and the user rights on a newly installed application server that has Internet Information Services (IIS) 6.0 installed.
MORE INFORMATION
The following tables document the NTFS file system permissions, registry permissions, and Microsoft Windows user rights. This information applies if Microsoft ASP.NET is included as part of the installation suite. This article focuses on the World Wide Web Publishing Service and does not consider other components, such as the File Transfer Protocol (FTP) service, the Simple Mail Transfer Protocol (SMTP) service, and Microsoft FrontPage Server Extensions (FPSE).
Note For the purposes of this document, the IUSR_MachineName account is used interchangeably with a configured anonymous account.
NTFS permissions
Directory Users\Groups Permissions
%windir%\help\iishelp\common Administrators Full control
%windir%\help\iishelp\common System Full control
%windir%\help\iishelp\common IIS_WPG Read
%windir%\help\iishelp\common Users (See Note 1.) Read, execute
%windir%\IIS Temporary Compressed Files Administrators Full control
%windir%\IIS Temporary Compressed Files System Full control
%windir%\IIS Temporary Compressed Files IIS_WPG List, read, write
%windir%\IIS Temporary Compressed Files Creator owner Full control
%windir%\system32\inetsrv Administrators Full control
%windir%\system32\inetsrv System Full control
%windir%\system32\inetsrv Users Read, execute
%windir%\system32\inetsrv\*.vbs Administrators Full control
%windir%\system32\inetsrv\ASP compiled templates Administrators Full control
%windir%\system32\inetsrv\ASP compiled templates IIS_WPG Read
%windir%\system32\inetsrv\History Administrators Full control
%windir%\system32\inetsrv\History System Full control
%windir%\system32\Logfiles Administrators Full control
%windir%\system32\inetsrv\metaback Administrators Full control
%windir%\system32\inetsrv\metaback System Full control
Inetpub\Adminscripts Administrators Full control
Inetpub\wwwroot (or content directories) Administrators Full control
Inetpub\wwwroot (or content directories) System Full control
Inetpub\wwwroot (or content directories) IIS_WPG Read, execute
Inetpub\wwwroot (or content directories) IUSR_MachineName Read, execute
Inetpub\wwwroot (or content directories) ASPNET (See Note 2.) Read, execute
Note 1 You must have permissions to this directory when you use Basic authentication or Integrated authentication and when custom errors are configured. For example, when error 401.1 occurs, the logged-on user sees the expected detailed custom error only if permissions to read the 4011.htm file have been granted to that user.
Note 2 By default, ASP.NET is used as the ASP.NET process identity in IIS 5.0 isolation mode. If ASP.NET is switched to IIS 5.0 isolation mode, ASP.NET must have access to the content areas. ASP.NET process isolation is detailed in IIS Help. For additional information, visit the following Microsoft Web site:
ASP.NET process isolation
http://www.microsoft.com/technet/treeview/default.asp?url=/technet/prodtechnol
/windowsserver2003/proddocs/standard/aaconruntimeprocessisolation.asp
Registry permissions
Location Users\Groups Permissions
HKLM\System\CurrentControlSet\Service\ASP Administrators Full control
HKLM\System\CurrentControlSet\Service\ASP System Full control
HKLM\System\CurrentControlSet\Service\ASP IIS_WPG Read
HKLM\System\CurrentControlSet\Service\HTTP Administrators Full control
HKLM\System\CurrentControlSet\Service\HTTP System Full control
HKLM\System\CurrentControlSet\Service\HTTP IIS_WPG Read
HKLM\System\CurrentControlSet\Service\IISAdmin Administrators Full control
HKLM\System\CurrentControlSet\Service\IISAdmin System Full control
HKLM\System\CurrentControlSet\Service\IISAdmin IIS_WPG Read
HKLM\System\CurrentControlSet\Service\w3svc Administrators Full control
HKLM\System\CurrentControlSet\Service\w3svc System Full control
HKLM\System\CurrentControlSet\Service\w3svc IIS_WPG Read
Windows User Rights
Policy Users
Access this computer from the network Administrators
Access this computer from the network ASPNET
Access this computer from the network IUSR_MachineName
Access this computer from the network IWAM_MachineName
Access this computer from the network Users
Adjust memory quotas for a process Administrators
Adjust memory quotas for a process IWAM_MachineName
Adjust memory quotas for a process Local service
Adjust memory quotas for a process Network service
Bypass traverse checking IIS_WPG
Allow log on locally (see Note) Administrators
Allow log on locally (see Note) IUSR_MachineName
Deny logon locally ASPNET
Impersonate a client after authentication Administrators
Impersonate a client after authentication ASPNET
Impersonate a client after authentication IIS_WPG
Impersonate a client after authentication Service
Log on as a batch job ASPNET
Log on as a batch job IIS_WPG
Log on as a batch job IUSR_MachineName
Log on as a batch job IWAM_MachineName
Log on as a batch job Local service
Logon as a service ASPNET
Logon as a service Network service
Replace a process level token IWAM_MachineName
Replace a process level token Local service
Replace a process level token Network service
Note In a new default installation of Microsoft Windows Server 2003 with IIS 6.0, the Users group and the Everyone group have Bypass traverse checking permissions. The worker process identity inherits Bypass traverse checking permissions through one of these groups. If both groups are removed from Bypass traverse checking permissions, and the worker process identity does not inherit Bypass traverse checking permissions through any other assignment, the worker process does not start. If the Users group and the Everyone group must be removed from the Bypass traverse checking permissions, add the IIS_WPG group to permit IIS to function as expected.
Note In IIS 6.0, when Basic authentication is configured as one of the authentication options, the LogonMethod metabase property for Basic authentication is NETWORK_CLEARTEXT. The NETWORK_CLEARTEXT logon type does not require the Allow log on locally user right. This also applies to Anonymous authentication. For additional information, see the "Basic Authentication Default Logon Type" topic in IIS Help. You can also visit the following Microsoft Web site:
Basic authentication
http://www.microsoft.com/technet/treeview/default.asp?url=/technet/prodtechnol
/windowsserver2003/proddocs/standard/sec_auth_basicauth.asp?frame=true
REFERENCES
For additional information about how to implement and manage IIS security, visit the following Microsoft Web sites:
Windows Server 2003 Security Guide
http://go.microsoft.com/fwlink/?LinkId=14845
TechNet
http://www.microsoft.com/technet/security/prodtech/iis/default.mspx
Security how-to resources
http://www.microsoft.com/technet/itsolutions/howto/sechow.mspx
Improving Web application security: threats and countermeasures
http://msdn.microsoft.com/library/en-us/dnnetsec/html/ThreatCounter.asp
,造成这种情况的原因主要是由于IIS对PHP的执行效率较低造成的,微软也意识到了这个问题并推出了解决方案FastCGI。如果启用这个方案运行webmail的速度就会有极大的提升。自已测试的结果是提升了2倍左右。现在进入webmail一秒钟之内就出来界面了,基本上不会看到“正在加载页面”的提示。
启用FastCGI方法如下(这可是我找了无数资料才成功的):
1.下载FastCGI For IIS6
http://www.microsoft.com/downloads/details.aspx?FamilyID=2d481579-9a7c-4632-b6e6-dee9097f9dc5&displaylang=en
下载之后,双击运行进行安装.
2.下载php-5.2.6-nts-Win32.zip
http://www.php.net
下载.zip格式的版本,下载后解压至D:\PHP目录,并给IIS启动帐户组或用户赋予读取和运行权限.
3.注册PHP到FastCGI
在命令行下进入C:\WINDOWS\system32\inetsrv,运行
cscript fcgiconfig.js -add -section:"PHP" -extension:php -path:"D:\PHP\php-cgi.exe"
4.设置
将D:\PHP\php.ini-dist重命名为D:\PHP\php.ini
打开D:\PHP\php.ini,修改:
extension_dir = "D:\PHP\ext"
fastcgi.impersonate = 1
cgi.fix_pathinfo=1
cgi.force_redirect = 0
date.timezone = "Asia/Shanghai"
注意取消前面的注释去掉其它根据实际需要对php.ini进行设置修改
然后执行:
cscript fcgiconfig.js -set -section:"PHP" -InstanceMaxRequests:500
cscript fcgiconfig.js -set -section:"PHP" -EnvironmentVars:PHP_FCGI_MAX_REQUESTS:1000
以上两项设置最大池和响应连接数,可以根据运行机器的硬件配置、使用情况修改
5:配置 IIS & PHP
开始,运行,inetmgr依次展开,选中要配置的站点,右键,属性。切换到“主目录”选项卡,“配置”,“添加”,“浏览” 选中 C:\WINDOWS\system32\inetsrv\fcgiext.dll ,“确定”扩展名填入“.php”,勾选“脚本引擎”及“检查文件是否存在”,确定。
一切完毕之后重启IIS,赶紧写一个测试页试一下吧.
重启IIS后,打开测试页出现如下提示:
FastCGI Error
The FastCGI Handler was unable to process the request.
--------------------------------------------------------------------------------
Error Details:
Error Number: 5 (0x80070005).
Error Description: 拒绝访问。
HTTP Error 500 - Server Error.
Internet Information Services (IIS)
这个错误是由于在解压PHP之后,没有对IIS启动帐户赋予该目录的读取和运行权限.修改文件夹安全属性,问题解决.
1) Winmail 邮件服务器软件的 Webmail 所需要的 PHP4.3.x 以上版本,同时还需要对 php.ini 做如下改动:
PHP 需要加载 LDAP 模块(extension=php_ldap.dll)
此模块需要 PHP 的 dlls 目录中的 libeay32.dll、ssleay32.dll 文件支持,将文件拷贝到 windows 的 system32 目录中。
PHP 需要加载多字节处理模块(extension=php_mbstring.dll)
PHP 需要加载OpenSSL模块(extension=php_openssl.dll)
PHP 需要加载拼写检查模块(extension=php_pspell.dll)
此模块需要 aspell-15.dll 文件支持(http://aspell.sourceforge.net/),将文件拷贝到 windows 的 system32 目录中。
register_globals = On
magic_quotes_gpc = Off
如果不能上传大的文件,请修改如下配置:
post_max_size =
upload_max_filesize =
改一下后面的值的大小。
一般WIN主机推荐PHP环境组合:PHP4.4.x+MySQL4.0.x,故以下关于PHP4.4.x+MySQL4.0.x组合的安装以蓝色文字显示,如果你只需要安装PHP4.4.x+MySQL4.0.x的组合只看蓝色文字的相关内容即可
当然喜欢体验的或者WIN2003系统也可体验尝试最新的版本,推荐组合PHP5.1.x+MYSQL5.0.x/MySQL4.1.x
1.PHP,推荐PHP4.4.0的ZIP解压版本:
PHP(4.4.0):http://cn.php.net/get/php-4.4.0-Win32.zip/from/a/mirror
[供选用]:
PHP(5.1.2):http://www.chinaser.net/download/php-5.1.2-Win32.zip
2.MySQL,配合PHP4推荐MySQL4.0.26的WIN系统安装版本:
MySQL(4.0.26):http://download.discuz.net/mysql-4.0.26-win32.zip
http://dev.mysql.com/get/Downloads/MySQL-4.0/mysql-4.0.26-win32.zip/from/pick#mirrors
[供选用]:
MySQL(5.0.18):http://www.chinaser.net/download/mysql-5022-win32.zip
3.Zend Optimizer,当然选择当前最新版本拉:
Zend Optimizer(2.6.2):http://www.chinaser.net/download/ZendOptimizer-3.0.1-Windows-i386.exe
官方下载https://www.zend.com/store/getfreefile.php?pid=13&zbid=995
4.phpMyAdmin,当然同样选择当前最新版本拉,注意选择for Windows 的版本哦:
phpMyAdmin(2.8.2):http://www.chinaser.net/download/PHPMyadmin-v2.82.rar
https://www.zend.com/store/getfreefile.php?pid=13&zbid=995
假设 C: 为你现在所使用操作系统的系统盘,如果你目前操作系统不是安装在 C: ,请自行对应修改相应路径。同时由于C盘经常会因为各种原因重装系统,数据放在该盘不易备份和转移
选择安装目录,故本文将所有PHP相关软件均安装到D:php目录下,这个路径你可以自行设定,如果你安装到不同目录涉及到路径的请对应修改以下的对应路径即可
二、安装 PHP :本文PHP安装路径取为D:phpphp4(为避混淆,PHP5.1.x版本安装路径取为D:phpphp5)
(1)、下载后得到 php-4.4.0-Win32.zip ,解压至D:php目录,将得到二级目录php-4.4.0-Win32,改名为 php4,也即得到PHP文件存放目录D:phpphp4[如果是PHP5.1.2,得到的文件是php-5.1.2-Win32.zip,直接全部接压至D:phpphp5目录即可得PHP文件存放目录D:phpphp5];
(2)、再将D:phpphp4目录和D:phpphp4dlls目录[PHP5为D:phpphp5]下的所有dll文件拷到c:Windowssystem32(win2000系统为 c:/winnt/system32/)下,覆盖已有的dll文件;
搜索
register_globals = Off
,将 Off 改成 On ,即得到register_globals = On;
注:这个对应PHP的全局变量功能,考虑有很多PHP程序需要全局变量功能故打开,打开后请注意-PHP程序的严谨性,如果不需要推荐不修改保持默认Off状态
再搜索
extension_dir =
,并将其路径指到你的 PHP 目录下的 extensions 目录,比如:修改extension_dir = "./"为extension_dir = "D:/php/php4/extensions/" ;
PHP扩展功能目录[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 =
去掉前面;号,本文这里将其设置置为
session.save_path = D:/php/tmp
其他的你可以选择需要的去掉前面的;然后将该文件另存为为php.ini到C:Windows ( Windows 2000 下为 C:WINNT)目录下,注意更改文件后缀名为ini,得到C:Windowsphp.ini ( Windows 2000 下为 C:WINNTphp.ini)
若路径等和本文相同可直接保存到C:Windows ( Windows 2000 下为 C:WINNT)目录下使用若路径等和本文相同可直接保存到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)”,单击“下一步”出现“应用程序服务器选项”,你可以选择和应用程序服务器一起安装的组件,默认全选即可,单击“下一步”,出现“选择总结界面”,提示了本次安装中的选项,配置程序将自动按照“选择总结”中的选项进行安装和配置。
打开浏览器,输入:http://localhost/,看到成功页面后进行下面的操作:
PHP 支持 CGI 和 ISAPI 两种安装模式,CGI 更消耗资源,容易因为超时而没有反映,但是实际上比较安全,负载能力强,节省资源,但是安全性略差于CGI,本人推荐使用 ISAPI 模式。故这里只解介绍 ISAPI 模式安装方法:(以下的截图因各个系统不同,窗口界面可能不同,但对应选项卡栏目是相同的,只需找到提到的对应选项卡即可)
在“控制面板”的“管理工具”中选择“Internet 服务管理器”,打开 IIS 后停止服务,对于WIN2000系统在”Internet 服务管理器“的下级树一般为你的”计算机名“上单击右键选择“属性”,再在属性页面选择主属性”WWW 服务“右边的”编辑“
对于XP/2003系统展开”Internet 服务管理器“的下级树一般为你的”计算机名“选择”网站“并单击右键选择“属性”
在弹出的属性窗口上选择“ISAPI 筛选器”选项卡找到并点击“添加”按钮,在弹出的“筛选器属性”窗口中的“筛选器名称”栏中输入:PHP ,再将浏览可执行文件使路径指向 php4isapi.dll 所在路径,如本文中为:D:phpphp4sapiphp4isapi.dll[PHP5对应路径为D:phpphp5php5isapi.dll]。
打开“站点属性”窗口的“主目录”选项卡,找到并点击“配置”按钮
在弹出的“应用程序配置”窗口中的”应用程序映射“选项卡找到并点击“添加”按钮新增一个扩展名映射,在弹出的窗口中单击“浏览”将可执行文件指向 php4isapi.dll 所在路径,如本文中为:D:phpphp4sapiphp4isapi.dll[PHP5对应路径为D:phpphp5php5isapi.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();
?>
打开浏览器,输入:http://localhost/php.php,将显示当前服务器所支持 PHP 的全部信息,可以看到 Server API的模式为:ISAPI 。
三、安装 MySQL :
对于MySQL4.0.26下载得到的是mysql-4.0.26-win32.zip,解压到mysql-4.0.26-win32目录双击执行 Setup.exe 一路Next下一步,选择安装目录为D:phpMySQL和安装方式为Custom自定义安装,再一路Next下一步即可。
安装完毕后,在CMD命令行中输入并运行:
D:phpMySQLbinmysqld-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加个密码chinaser.net
首先在进入CMD命令行,转到MYSQL目录下的bin目录,然后键入以下命令
mysqladmin -uroot password chinaser.net
注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。
D:phpMySQLbin>mysqladmin -uroot password chinaser.net回车后ROOT密码就设置为chinaser.net了
如果你下载的是 MySQL5.x或者MySQL4.1.x,例mysql-5.0.18-win32:解压后双击执行 Setup.exe ,Next下一步后选择Custom自定义安装,再Next下一步选择安装路径这里我们选择D:phpMySQL,继续Next下一步跳过Sign UP完成安装。
安装完成后会提示你是不是立即进行配置,选择是即可进行配置。当然一般安装后菜单里面也有配置向导MySQL Server Instance Config Wizar,运行后按下面步骤配置并设置ROOT密码即可
Next下一步后选择Standard Configuration
Next下一步,钩选Include .. PATH
Next下一步,设置ROOT密码,建议社设置复杂点,确保服务器安全!
Apply完成后将在D:phpMySQL目录下生成MY.INI配置文件,添加并启动MySQL服务。
四、安装 Zend Optimizer :
下载后得到 ZendOptimizer-2.6.2-Windows-i386.exe ,直接双击安装即可,安装过程要你选择 Web Server 时,选择 IIS ,然后提示你是否 Restart Web Server,选择是,完成安装之前提示是否备份 php.ini ,点确定后安装完成。我这里安装到D:phpZend
以下两步的目录根据你自己的默认WEB站点目录来选,当然也可以选择到D:phpZend目录
Zend Optimizer 的安装向导会自动根据你的选择来修改 php.ini 帮助你启动这个引擎。下面简单介绍一下 Zend Optimizer 的配置选项。以下为本人安装完成后 php.ini 里的默认配置代码(分号后面的内容为注释):
zend_extension_ts="D:phpZendlibZendExtensionManager.dll"
;Zend Optimizer 模块在硬盘上的安装路径。
zend_extension_manager.optimizer_ts="D:phpZendlibOptimizer-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 ,将其解压到D:php或者 IIS 根目录,改名phpMyAdmin-2.7.0为phpMyAdmin,并在IIS中建立新站点或者虚拟目录指向该目录以便通过WEB地址访问,这里建立默认站点的phpMyAdmin虚拟目录指向D:phpphpMyAdmin目录通过http://localhost/phpmyadmin/访问
找到并打开D:phpphpMyAdmin目录下的 config.default.php ,做以下修改:
查找:$cfg['PmaAbsoluteUri']
设置你的phpmyadmin的WEB访问URL,如本文中:$cfg['PmaAbsoluteUri'] = 'http://localhost/phpmyadmin/'; 注意这里假设phpmyadmin在默认站点的根目录下
搜索:$cfg['blowfish_secret'] =
设置COOKIES加密密匙,如xqin.com则设置为$cfg['blowfish_secret'] = 'chinaser.net';
搜索$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'] = 'chinaser.net';
搜索$cfg['DefaultLang'] ,将其设置为 zh-gb2312 ;
搜索$cfg['DefaultCharset'] ,将其设置为 gb2312 ;
打开浏览器,输入:http://localhost/phpMyAdmin/
首先点击权限进入用户管理,删除除ROOT和主机不为localhost的用户并重新读取用户权限表,这里同样可以修改和设置ROOT的密码,添加其他用户等
phpMyAdmin 的具体功能,请慢慢熟悉,这里不再赘述。至此所有安装完毕。
六、目录结构以及MTFS格式下安全的目录权限设置:
当前目录结构为
D:php
|
+—————+——————+———————+———————+
php4(php5) tmp MySQL Zend phpMyAdmin
D:php设置为管理员和SYSTEM完全权限即可,其他用户均无权限
对于其下的二级目录
php4(或者php5)、 tmp 给EVERYONE完全权限
MySQL 、Zend 管理员和SYSTEM完全权限
phpMyAdminWEB匿名用户读取运行权限
四、IIS的高级服务配置
为了使当前IIS Server提供的IIS服务更加安全可靠,应当进行高级服务配置,从某种意义上,IIS服务器代表着本企业或者校园网的形象,甚至作为网络办公的平台,其中往往涉及一些非常重要的数据资料,事实上,黑客们攻击的对象也大都是Web站点和FTP站点,因此IIS Server服务器的安全越来越显得重要,所以IIS服务器需要配置包括对Web站点的访问帐号验证及访问的IP地址授权以及对FTP站点的访问帐号验证,上传文件权限配置以及对FTP站点提供的IP地址授权等等。
此外,还可以在路由器Router2中做IP地址的访问控制ACL,通过ACL访问控制列表来拒绝或者接受来自各客户机的访问。
1.在IISserver中配置安全访问帐号
步骤○1为了在提供Web服务时进行身份验证,实例中,在IIS Server上建立一个用以提供Web访问的帐号webuser,并设置相应的密码为123456,如图19
图19
步骤○2为了在提供FTP服务时进行身份验证,实例中,在IIS Server上建立一个用以提供FTP访问的帐号ftpuser,并设置相应的密码为123456,如图20
图20
步骤○3添加IIS server的本地组webgroup,并将webuser添加至该组中,如图21
图21
步骤○4添加IIS server的本地组ftpgroup,并将ftpuser添加至该组中,如图22
图22
步骤○5打开在IIS server中为Web提供服务的主目录wwwroot的属性对话框,在安全选项卡中添加webuser用户,并为其设置相应的访问权限,如图23
图23
步骤○6打开IIS信息服务控制台,在默认的Web站点属性对话框中的目录安全性选项卡,将匿名访问前的复选框去掉,对WEB访问用户进行身份验证设置,如图24
图24
步骤○7打开IIS信息服务控制台,在默认的FTP站点属性对话框中的安全帐号选项卡,将允许匿名连接前的复选框去掉,并通过添加将ftpuser帐号加入其中,对FTP访问用户进行身份验证设置,如图25
图25
五、IIS高级服务测试
1.在PC1和PC2上做Web站点的访问测试
步骤○1在PC1和PC2中打开Internet Explorer浏览器,输入WEB站点的IP地址http://172.16.1.2,访问后如图26
图26
步骤○2此时如不输入正确的webuser帐号及密码或者使用取消,访问将被拒绝。如图27
图27
步骤○3访问时提供正确的webuser帐号及密码后,如图28
图28
步骤○4正确的帐号Webuser验证通过以后,Web站点访问成功,如图29
图29
2.在PC1和PC2上做FTP站点的访问测试
步骤○1在PC1和PC2中打开Internet Explorer浏览器,输入FTP站点的IP地址ftp://172.16.1.2,访问后如图30
图30
步骤○2此时如果不能提供正确的ftpuser帐户和密码,访问被拒绝,如果提供的帐号和密码正确,则如图31-图32
图31
图32
(3) 在PC4(Red Hat Linux 9)上做WEB站点及FTP站点测试,同样也需要提供正确的帐号和密码,在访问Web站点时提供webuser帐号,在访问FTP站点时提供ftpuser帐号。
(4) 比如使用RED HAT LINUX 9的终端登陆FTP站点,正常访问如图33,如果FTP站点配置了写入权限,还可以在PC4上上传文件至FTP站点,如图33中所示
图33
(5) 如果不能提供正确的ftpuser帐号和密码,访问将被拒绝。如图34
图34
六、在IIS server服务器上做访问控制配置
1.在IIS Server上做Web服务的IP地址及域名限制,打开默认web站点属性对话框,并在目录安全性选项卡中通过编辑IP地址及域名限制,配置如图35
图35
2.在IIS Server上做FTP服务的IP地址及域名限制,打开默认FTP站点属性对话框,并在目录安全性选项卡中通过编辑IP地址及域名限制,配置如图36
图36
3. 此时,在PC4(IPAddress:172.16.1.3)和PC2(IPAddress:192.168.1.2)上访问可通过,能正常使用IISServer所提供的Web站点或者FTP站点服务,而在PC1(IPAddress:192.168.2.2)上访问被拒绝,如图37,图38
图37
图38
七、远程管理Web站点
由于某些时候在IIS Server服务器上操作不是很方便,我们还需要对IIS服务器进行远程管理,这样,只要能够通过局域网或者在企业网内部,事实上在INTERNET上也可以与IIS server服务器相连,就可以使用IE浏览器来实现对WEB站点的远程管理。
步骤1.在控制台中选择管理Web站点,打开管理web站点属性对话框,此时应注意端口的配置,在实例中选择默认的3914端口。如图39
图39
步骤2:打开操作员选项卡,将Webuser帐号添加进来,今后通过webuser帐号可对IIS进行远程管理。如图40
图40
步骤3:出于IIS管理的安全性,不允许任何机器登陆IIS服务器进行配置,我们将IP地址及域名限制到管理员经常使用的PC2机上。如图41
图41
步骤4:此时在PC1和PC4的浏览器中输入http://172.16.1.2:3914,访问被拒绝,而在PC2上输入管理WEB站点的地址http://172.16.1.2:3914,访问正常,可对IIS做远程的WEB站点管理,如图42
图42
八、在路由上做访问控制
为了在IIS Server上提供更加安全可靠的服务,如当前IIS Server服务器向PC2和PC4提供IIS服务,而拒绝给PC1提供服务,这时候可以在路由器上做ACL访问控制表。
实例中我们以Router2作为ACL控制路由器,登陆到Router2后,对Router2做标准的访问控制
router2#config t
Enter configuration commands, one per line. End with CNTL/Z.
router2(config)#access-list 1 permit 192.168.1.0 0.0.0.255
router2(config)#int serial 0
router2(config-if)#ip access-group 1 in
router2(config-if)#exit
router2(config)#exit
router2#
使用show running-config 后可看到
ip classless
access-list 1 permit 192.168.1.0 0.0.0.255
snmp-server community public RO
!
这时从PC2(IPAdress 192.168.1.2)上访问IIS Server,服务被接受,访问正常。如果从PC1(IPAdress 192.168.2.2)上访问IIS Server,服务被觉得,无法正常访问。
总之,IIS在Intranet中提供了很重要的信息共享服务,但是在提供IIS服务时如果只是对其进行基本设置,提供匿名访问的话可能会带来许多安全性的问题,所以需要IIS Server的访问安全性做合理的规划,如访问身份验证和IP地址及域名访问控制,其中访问控制可以在IIS Server服务器本身或者在路由器中做ACL的访问控制表进行安全访问控制。此外IIS还提供了虚拟网站和虚拟目录,虚拟网站可以将一个IIS服务器配置成多个WEB站点。