最近需要安装个mantisbt,由于不想再安装个apache服务器,因此直接使用iis作为php解析服务器。同时为了方便管理安装包,将php安装包和扩展包能够独立存放在D:\Program Files\php5,而不是像网上很多文章说的拷贝到C:\WINDOWS\system32目录下。

  • 搭建php运行环境

windows2003 + iis6 + sqlserver2008

  • php版本选择

php安装软件从http://windows.php.net/download/上下载,不要见到最新的就下载最新的。

由于我的web服务器为iis6,因此只能选择5.3以及一下版本,iis7选择5.3以上版本

选择非线程安全版本,因为使用fastcgi.exe来执行,因此只会创建唯一的php进程,你不会存在线程耗尽问题

1、如果是用于 IIS 则选择 PHP 5.3 VC9 Non Thread Safe 或者VC6 Non Thread Safe

2、如果是用 IIS7 或更高版本以及 PHP 5.3+,则应选择 VC9 的包;

3、如果是用于 Apache 1 或 Apache 2 则选择 PHP 5.3 VC6 或者 PHP 5.2VC6

  • 配置php文件

1、将php.ini-product文件改名为php.ini

2、修改php.ini配置信息

        ;定义扩展文件绝对路径
extension_dir = "D:\Program Files\php5\ext"

	;定义启用哪些扩展

        extension=php_bz2.dll
        extension=php_curl.dll
        extension=php_fileinfo.dll
        extension=php_gd2.dll;生成图片
        ;extension=php_gettext.dll;多语言库
        extension=php_gmp.dll;数学运算
        ;extension=php_intl.dll
        ;extension=php_imap.dll
        ;extension=php_interbase.dll
        ;extension=php_ldap.dll
        extension=php_mbstring.dll
        extension=php_exif.dll      ; Must be after mbstring as it depends on it
        extension=php_mysql.dll
        extension=php_mysqli.dll
        ;extension=php_oci8.dll      ; Use with Oracle 10gR2 Instant Client
        ;extension=php_oci8_11g.dll  ; Use with Oracle 11gR2 Instant Client
        extension=php_openssl.dll
        ;extension=php_pdo_firebird.dll
        extension=php_pdo_sqlsrv_53_ts_vc9.dll
        extension=php_pdo_mysql.dll
        ;extension=php_pdo_oci.dll
        extension=php_pdo_odbc.dll
        ;extension=php_pdo_pgsql.dll
        ;extension=php_pdo_sqlite.dll
        ;extension=php_pgsql.dll
        ;extension=php_pspell.dll
        ;extension=php_shmop.dll;共享内存操作         extension=php_soap.dll
        extension=php_sockets.dll
        ;extension=php_sqlite.dll
        ;extension=php_sqlite3.dll
        ;extension=php_sybase_ct.dll
        extension=php_tidy.dll
        extension=php_xmlrpc.dll
        extension=php_xsl.dll
        ;extension=php_zip.dll

3、配置php环境变量  在path中添加php主目录路径, 定义扩展路径

a)在系统中定义环境变量PHPRC, 变量值为D:\Program Files\php5\

b)在path路径中添加%PHPRC%\ext;

  • 安装并配置fastcgi

从http://www.iis.net/downloads/microsoft/fastcgi-for-iis上面下载fastcgi.exe,需要根据版本选择,iis6选择FastCGI 1.5 for IISx86 /x64

修改php.ini文件,启用一下选项,并配置对应的值

       fastcgi.impersonate = 1
fastcgi.logging = 0
cgi.fix_pathinfo=1
cgi.force_redirect = 0

             配置 FastCGI 扩展以处理 PHP 请求

cscript %windir%\system32\inetsrv\fcgiconfig.js -add -section:"PHP"  ^
-extension:php -path:"D:\Program Files\php5\php-cgi.exe"

             配置文件访问权限

icacls D:\upload /grant IUSR:(OI)(CI)(M)

            

             配置 FastCGI 和 PHP 的回收

cscript %windir%\system32\inetsrv\fcgiconfig.js -set -section:"PHP" ^
-InstanceMaxRequests:10000 cscript %windir%\system32\inetsrv\fcgiconfig.js -set -section:"PHP" ^
-EnvironmentVars:PHP_FCGI_MAX_REQUESTS:10000

             配置 FastCGI 超时设定

cscript %windir%\system32\inetsrv\fcgiconfig.js -set -section:"PHP" ^
-ActivityTimeout:90 cscript %windir%\system32\inetsrv\fcgiconfig.js -set -section:"PHP" ^
-RequestTimeout:90

             改变 php.ini 文件的位置

cscript %windir%\system32\inetsrv\fcgiconfig.js -set -section:"PHP" ^
-EnvironmentVars:PHPRC:"D:\Program Files\php5\"
  • 配置iis

1、 配置 IUSR_SERVER对php安装包目录的读写权限

2、设置网站的默认首页为index.php

3、在iis网站属性中的主目录中的应用程序中添加扩展映射

         扩展名为.php   映射路径为C:\WINDOWS\system32\inetsrv\fcgiext.dll
  • sqlserver扩展安装

1、要选择对应的线程安全版本

从微软官网上下载php连接sqlserver驱动sqlsrv, 选择sqlsrv2.0.exe,解压后里面包含有线ts(线程安全) nts(非线程安全) vc9(5.3以上版本) vc6(5.2以下版本)

php 5.3以上版本

php_sqlsrv_53_nts_vc9.dll

php_pdo_sqlsrv_53_nts_vc9.dll

php5.2以下版本

php_sqlsrv_52_nts_vc6.dll

php_pdo_sqlsrv_52_nts_vc6.dll

由于我安装的是5.3非线程安全版本, 因此将以下php_sqlsrv_53_nts_vc9.dll和php_pdo_sqlsrv_53_nts_vc9.dll拷贝到ext扩展库中,并在php.ini中添加

extension=php_pdo_sqlsrv_53_nts_vc9.dll
extension=php_sqlsrv_53_nts_vc9.dll

2、安装Microsoft SQL Server 2012 Native Client

在使用SQLSRV30.exe, 需要安装这个东东,不过在我这个环境中只能使用sqlsrv20.exe

  • 安装mantisbt

1、执行http://ip/admin/install.php, 进入安装界面

hostName:主机名+端口号.mssql与其他数据库不大一样。例子:mssql为”8.8.8.8,10000“,mysql为“8.8.8.8:10000”

userName:数据库用户名

password:数据库密码

Database name:数据库名称

Database Table Prefix:表前缀

Database Plugin Table Prefix :插件表前缀

Default Time Zone:选择亚洲上海(Asia > Shanghai)

Print SQL Queries instead of Writing to the Database    :打印数据库语句,不要选择这一项,否则不会自动创建数据库

2、配置为中文

修改Mantis目录中的config_defaults_inc.php文件

          $g_fallback_language = 'english';
修改为
$g_fallback_language = 'chinese_simplified';

3、配置报表

/*配置图图表*/
$g_use_jpgraph = ON;
$g_jpgraph_path = 'D:/Program/jpgraph-3.5/'; # JPGraph路径
$g_graph_font = 'simsun';
$g_graph_window_width = 800;
# bar graph aspect ration (height / width)
$g_graph_bar_aspect = 0.9;
# how many graphs to put in each row in the advanced summary page
$g_graph_summary_graphs_per_row = 2;
$g_system_font_folder = 'C:/WINDOWS/Fonts/';
$g_font_per_captcha = 'simsun.ttf';

如果出现乱码则修改Mantis\plugins\MantisGraph\core\graph_api.php文件中的

		if( isset( $t_font_map[$t_font] ) ) {
$t_font = $t_font_map[$t_font];
} else {
$t_font = 'simhei.ttf';//arial.ttf
}

4、配置上传附件

在Mantisbt中创建上传目录upload并设置为iis进程可以进行写入、读取、修改的权限

在Mantisbt的项目管理中的“上传文件存放路径”配置上传路径为upload

#配置上传参数
$g_allow_file_upload     = ON;
$g_file_upload_method     = DISK;#DATABASE; # or DISK
$g_absolute_path_default_upload_folder = 'D:/Program/Mantis/upload'; # used with DISK, must contain trailing \ or /.
$g_max_file_size         = 5000000;    # in bytes
$g_preview_attachments_inline_max_size = 5 * 1024 * 1024;/*当图片大小小于5M显示*/
$g_allowed_files         = 'txt,jpg,jepg,gif,bmp,doc,docx,xls, xlsx,ppt,pptx';        # extensions comma separated, e.g. 'php,html,java,exe,pl'
# $g_disallowed_files   = '';        # extensions comma separated

5、配置邮件系统

从https://github.com/PHPMailer/PHPMailer上下载phpMailer,然后解压到指定路径比如D:/Program/PHPMailer/,然后修改Mantisbt中config_inc.php添加以下配置内容,并设置对应的值。网上一些资料说的不是很正确,导致刚开始的时候配置后,无法发送邮件,基本上按照config_inc.php.sample中的邮件配置建议进行配置就可以正常。

/*配置邮件服务器*/
$g_use_phpMailer = ON;
$g_phpMailer_path = 'D:/Program/PHPMailer/';
$g_phpMailer_method = PHPMAILER_METHOD_SMTP;#PHPMAILER_METHOD_MAIL; # or PHPMAILER_METHOD_SMTP, PHPMAILER_METHOD_SENDMAIL
$g_smtp_host = 'smtp.exmail.qq.com'; # used with PHPMAILER_METHOD_SMTP
$g_smtp_username = 'service@qq.com'; # used with PHPMAILER_METHOD_SMTP
$g_smtp_password = '123456'; # used with PHPMAILER_METHOD_SMTP
$g_administrator_email = 'service@qq.com';
$g_webmaster_email = 'service@qq.com';
$g_from_email = 'service@qq.com'; # the "From: " field in emails
$g_return_path_email = 'service@qq.com'; # the return address for bounced mail
$g_from_name = 'Mantis Bug Tracker';
$g_email_receive_own = OFF;
$g_email_send_using_cronjob = OFF;
  • Mantisbt运行错误

在Mantisbt/php_errors.log 可以看到Mantisbt运行的错误日志

  • 参考资料

1、http://www.blogjava.net/qileilove/archive/2011/10/27/362175.html

2、http://php.net/install.windows

3、http://blog.csdn.net/yuchou123456789/article/details/12859431

4、http://wenku.baidu.com/link?url=Hzb9xVQK0TyN24Q-J_nnfjZdKaBsZFuOOiX7BKQvbHR1rVcs47q9t4cnEQFqqb2s2Rlc2r6ZQMSjaM1ACQgi_wODsek6nfRaYXL33cscfMK

5、http://wenku.baidu.com/link?url=4Ufx-xhMHaJA4mezBPBzDU7S9XLhWlrqHLefHoszyHmPEuFUoyybU1tSTY2HCLhqSsirkDg7lFNmE_VpUke3KFxTr-sHaFRxWPSjU3wdnha

在iis中mantisbt配置过程的更多相关文章

  1. MVC 发布到IIS中的配置方法

    MVC 发布到IIS中的配置方法  http://msdn.microsoft.com/zh-cn/library/gg703322(v=vs.98).aspx

  2. 在IIS中如何配置SSL(https)

    1.打开IIS管理界面>“服务器证书”>“创建自签名证书”>输入名称>点“完成” 2.在“网站”上右键“添加网站”,在“绑定”的“类型”中选择“Https”,在“SSL证书&q ...

  3. 在IIS 中如何配置URL Rewrite,并且利用出站规则保持被重写的Cookie的域

    Url Rewrite配置 xx.aa.com/bb/test1.aspx 会重写到 bb.aa.com/test1.aspx 具体怎么配置入站 出站规则 结果:

  4. Windows Server 2008 如何在IIS中添加MIME类型

    用户可以通过使用MIME以设置服务器传送多媒体文件,如声音和视频等.MIME是一种技术规范,现在可以用于浏览器上,传送可以供浏览器识别的信息 如果我们的网站提供下载服务,有时传上去的文件比如 xxx. ...

  5. IIS WebDAV安全配置

    本文为转载,原文地址:http://www.2cto.com/article/201307/228165.html IIS WebDAV安全配置 2013-07-16 12:13:00 作者:瞌睡龙收 ...

  6. 图解IIS配置过程

    环境介绍: 操作系统:win7,64位.IIS7 开发软件:VS2010,32位 图解IIS配置过程: 此过程之前确保已安装了IIS. 1.在"控制面板"中找到"管理工具 ...

  7. office web apps安装部署,配置https,负载均衡(七)配置过程中遇到的问题详细解答

    该篇文章,是这个系列文章的最后一篇文章,该篇文章将详细解答owa在安装过程中常见的问题. 如果您没有搭建好office web apps,您可以查看前面的一系列文章,查看具体步骤: office we ...

  8. pdf.js在IIS中配置使用笔记

    最近在手机App开发Android版本时候遇到需要显示PDF文件的需求,记得之前直接使用系统浏览器或者WebView就可以显示,但是现在不可以了,只能另寻其他办法. 最终找到PDF.JS来进行实现,但 ...

  9. vs2008+cmake2.8+OpenCV2.8.4配置过程中OpenCV.sln重编译部分工程失败

    解决方法来自此链接 http://www.tuicool.com/articles/qiQBb2N vs2008+cmake2.8+OpenCV2.8.4配置过程 1.解压opencv2.4.8 2. ...

随机推荐

  1. 【Xamarin挖墙脚系列:最重要的布局ListView】

    原文:[Xamarin挖墙脚系列:最重要的布局ListView] 安卓的几个重要的布局 线性布局 相对布局  Table布局 Tab布局  表格Grid布局 列表布局. 这几种基本的布局的方式,最重要 ...

  2. SharedPreference.Editor的apply跟commit方法的異同

    相同点: 1.二者都可提交preference的修改数据 2.二者都是原子操作 区别: 1.apply没有返回值而commit返回boolean表明修改是否提交成功 2.apply是将修改数据原子提交 ...

  3. 力控ADO组件数据源设置

    1.mysql的ODBC驱动如何下载及安装 地址:http://dev.mysql.com/downloads/connector/odbc/5.1.html Mysql跟力控ado进行交互 第一步: ...

  4. WCF中的由于目标计算机积极拒绝,无法连接

    1.第一种情况 百度上找到了这篇文章  http://blog.sina.com.cn/s/blog_6b44b2ba01016j0z.html 讲的是使用了using用完之后就释放了,得到启发,仔细 ...

  5. Firebug控制台详解

    转自:http://www.ruanyifeng.com/blog/2011/03/firebug_console_tutorial.html 作者: 阮一峰 日期: 2011年3月26日 Fireb ...

  6. HDU 5965 扫雷 【模拟】 (2016年中国大学生程序设计竞赛(合肥))

    扫雷 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submissi ...

  7. 判斷作業系統為 64bit 或 32bit z

    有時我們在開發Windows 桌面應用程式時,會發生一些弔詭的事情,作業系統位元數就是一個蠻重要的小細節,若您寫的應用程式在Windows 的32bit 作業系統上可以完美的運行,但不見得在64bit ...

  8. Sql Server CONVERT获取当前日期及日期样式

    Sql Server CONVERT获取当前日期及日期样式(转)(2012-06-06 12:00:24) 转载▼ // 标签: 杂谈 分类: SQL Sql Server CONVERT样式 获取当 ...

  9. Can't initialize OCI. Error -1

    今天使用Toad连接Oracle时出现"Can't initialize OCI. Error -1" 解决方法 因为是刚做的windows 7系统,所以没有设置更改通知的时间 把 ...

  10. hive中sql解析出对应表和字段的调查

    ---恢复内容开始--- .阿里的druid中的sql parser有各种关系数据库sql的解析,但hive的不支持. druid初期的版本中是包含hive的,将以前版本中的hive dialect对 ...