Windows server 2012 IIS8下安装PHP FastCGI支持
IIS8下安装PHP FastCGI支持
1. php5.4下载:php/downloads.php ,因为安装FastCgi(微软Windows7 IIS7后推荐方式,据测试性能比ISAPI方式好,切崩溃后只影响当前用户)模式,因此下载nts的(非线程安全)安装包.
2. 将下载的Zip文件解压到X:\php,并保证系统有执行权限,在此文件夹下复制一份php.ini-development,并更名为php.ini.
3. 编辑php.ini 并保存
4.
o fastcgi.impersonate = 1;(记得删除最前面的分号,下同)
o cgi.force_redirect = 0;
o extension_dir = "./ext";
o default_charset = "UTF-8"
o date.timezone = "Asia/Shanghai"
o date.default_latitude = 31.5167
o date.default_longitude = 121.4500
(以上三项可以到php/date.timezone去需要的对应参数)
(以上三项可以到php/date.timezone去需要的对应参数)
o extension=php_bz2.dll
o extension=php_curl.dll
o extension=php_fileinfo.dll
o extension=php_gd2.dll
o extension=php_gettext.dll
o extension=php_gmp.dll
o extension=php_intl.dll
o extension=php_imap.dll
o (等等,根据需要去掉前面分号,注意,某些模块需要加载相关的驱动,比如firebird 需要fbclient.dll,所以在没安装这些数据驱动之前,不要删除相关项的分号,以后用到再修改)
5. 在cmd窗口下运行x:\ -info 检查各模块的依赖情况.如果有依赖的模块没有会报告.
6. 打开IIS管理,在服务器下的"处理程序映射" 按下图添加php的fastcgi 处理模块.点"确定"然后点"是"即可
7. 为了开发时(发布时其实也应该如此)互不影响,将php文件夹放在网站主文件夹以外,然后
按引用程序添加到主网站,并给其单独设置应用程序池,注意:目前php的Windows版好像只有32位(至少官方是这样),因此若在64位Windows8下,最好将"启用32位应用程序:设为True.具体设置可以参照前文《iis8下设置asp asp ISAPI》。
8. 测试:
· phpinfo.php
<?php
phpinfo();
?>
<?php
phpinfo();
?>
· hello.php
<html>
<body>
<?php
echo "<p><H3>Hello World!</H3></P> ";
<html>
<body>
<?php
echo "<p><H3>Hello World!</H3></P> ";
echo "<p><H2>Hello PHP!</H2></P> ";
echo "<p><H1>你好白忙剩人!</H1></p> ";
?>
</body>
</html>
(注意:保存为utf-8编码)
随着Windows 8的发布,其服务器版本Windows Server 2012也相继推出,本篇将全面介绍如何在Windows Server 2012搭建安装DedeCMS所需要的PHP+MySQL环境,同时也将介绍如何在Windows Server 2012中设定服务器站点的安全。
echo "<p><H1>你好白忙剩人!</H1></p> ";
?>
</body>
</html>
(注意:保存为utf-8编码)
随着Windows 8的发布,其服务器版本Windows Server 2012也相继推出,本篇将全面介绍如何在Windows Server 2012搭建安装DedeCMS所需要的PHP+MySQL环境,同时也将介绍如何在Windows Server 2012中设定服务器站点的安全。
1.添加IIS服务器角
点击任务栏左下角的“服务器管理器”,在“安装类型”选项卡中选择“基于角或基于功能的安
装”,服务器选择中直接选择当前服务器即可,在服务器角中选择“Web服务器”(如图1-1)。
然后到“Web服务器角(IIS)”中选择需要的IIS组件。这里需要额外勾选:请求筛选、IP和域限制、URL授权、Windows身份验证、HTTP重定向、CGI、ISAPI扩展、ISAPI筛选器。
选择完毕后确认安装,在同时“功能”选项卡中选择安装“.NET Framework 3.5”,系统将会安装IIS以及相关的服务组件。
我们在浏览器中输入localhost,如果看到以下页面则表明我们已经安装完毕。
2.安装MySQL服务器
Windows Server2012中安装MySQL同以往版本安装并没有什么不同。
2.1.从MySQL官方:sql/downloads/mysql/5.1.html下载Windows (x86, 64-bit), MSI Installer。
2.2.双击安装包进行安装,我们选择“Custom”模式,将安装目录存放在“D:MySQL”中,数据库文件存放在“D:MySQLdata”中;
2.3.设定默认root管理员的帐号密码,这里由于我们是本地测试,所以设定密码为:123456,如果是用于服务器环境,需要根据情况将密码、端口重设;
至此MySQL服务器已经安装完毕了(如图:2-1)。
3.安装PHP
3.1.我们这里选择下载PHP5.3,可以从官方:windows.php/download/获取。这里由于我们将采用Fast-cgi模式安装,所以选择VC9 x86 Non Thread Safe。
3.2.双击包进行安装,将安装目录更改为“D:PHP”,选择服务器“IIS FAST-CGI”;
3.3.确认安装,安装完毕后在命令行中输入“php -v”,看到如图信息则表示已经安装完成。(如图3-1)
4.安装IIS PHP Manager管理器
为了方便的对PHP管理,我们选择安装IIS的PHP Manage组件,可以从:phpmanag
er.codeplex下载,这个安装过程非常简单,这里不再详细介绍。
5.安装DedeCMS
5.1.创建IIS权限控制帐户
为了对站点文件进行权限控制,我们需要添加一个专门用户对站点目录文件权限控制的用户,我们可以在“服务器管理器”中的“工具(T)”菜单栏中选择“计算机管理器”,在这里我们来管理帐号。
我们首先在“本地用户和组”中添加一个名为“WebUsers”的用户组。
然后添加一个名为“IIS_DEDECMSUSER”的帐号,这个帐号隶属于“WebUsers”用户组。
这里需要注意取消帐号的远程控制权限,同时在用户属性“远程桌面服务配置文件”中“拒绝用户登录到远程桌面桌面会话主机服务器的权限”(如图5.1-1)。
5.2.创建IIS站点
接下来我们需要创建一个站点:
(1)我们将站点根目录放在“D:Websiteswww.dedewww”中;
(2)IIS中添加站点,域名设定为“www.dede”;
(3)我们如果需要测试访问,需要在host中添加:127.0.0.1 www.dede
完成后立即启动站点。(如图5.2-1)
5.3.安装DedeCMS程序
(1)我们从DedeCMS下载最新版本的DedeCMS程序:www.dedecms/products/dedecms/downloads/;
(2)下载解压安装包,将uploads文件夹下的文件拷贝到站点更目录“D:Websiteswww.dedewww”中;
(3)在浏览器中输入“www.dede”,这时候我们能够看到安装页面,按照安装提示进行安装(如图5.3-1);
(4)数据库设定密码为“123456”,确定后就完成了本次安装(如图5.3-2);
6.站点安全设置
6.1.站点目录权限配置
(1)首先我们在IIS中绑定设定的用户帐号,在站点的功能试图中的“身份验证”,双击进入后,在“匿名身份验证”中设定之前我们添加的用户帐号“IIS_DEDECMSUSER”(如图6.1-1);
(2)站点根目录文件夹设定权限“D:Websiteswww.dedewww”,我们在文件夹右键属性,在“安全”选项卡的“高级”中设定文件夹权限(如图6.1-2);
(3)我们需要取消uploads、data以及生成静态html文件目录的执行权限,可以在mysql下载之后是个文件夹IIS站点功能试图的“处理程序映射”中“编辑功能权限...”,取消脚本执行权限(如图6.1-3)。
6.2.管理后台分离
接下来我们需要对后台进行分离,这样能够确保系统的安全性。
(1)创建管理后台站点,将系统更目录下的dede管理后台文件夹移动到“D:Websiteswww.dedeadmin”中,创建一个名为“admin.dede”的站点(如图6.2-1);
hosts中添加纪录:127.0.0.1 admin.dede
(2)按照5.1的方法,创建后台管理文件夹控制帐号“IIS_DEDECMSADMIN”;
(3)按照6.1(1)中的办法,绑定admin.dede站点目录“IIS_DEDECMSADMIN”权限;
(4)按照6.1(2)中的办法,给“D:Websiteswww.dedewww”以及“D:Websiteswww.dedeadmin”都添加“IIS_DEDECMSADMIN”的管理权限,其中www目录给予可写入权限(如图6.2-2);
(5)调整文件
到D:Websiteswww.dedeadminconfig.php,将第12行
require_once(DEDEADMIN.'/../include/common.inc.php');
改为
require_once(DEDEADMIN.'/../www/include/common.inc.php');
然后在这段代码下面加上:
$cfg_plus_dir = $cfg_phpurl = $cfg_basehost."/".$cfg_plus_dir;
到D:Websiteswww.dedeadminlogin.php,将11行
require_once(dirname(__FILE__).'/../include/common.inc.php');
改为
require_once(dirname(__FILE__).'/../www/include/common.inc.php');
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论