zoukankan      html  css  js  c++  java
  • 在iis中mantisbt配置过程

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

    • 搭建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 Filesphp5ext"
    
    
    
    	;定义启用哪些扩展
    
            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 Filesphp5

                        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%system32inetsrvfcgiconfig.js -add -section:"PHP"  ^
    -extension:php -path:"D:Program Filesphp5php-cgi.exe"
    


                 配置文件访问权限    

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

                

                 配置 FastCGI 和 PHP 的回收

    cscript %windir%system32inetsrvfcgiconfig.js -set -section:"PHP" ^
    -InstanceMaxRequests:10000
    
    cscript %windir%system32inetsrvfcgiconfig.js -set -section:"PHP" ^
    -EnvironmentVars:PHP_FCGI_MAX_REQUESTS:10000

                 配置 FastCGI 超时设定

    cscript %windir%system32inetsrvfcgiconfig.js -set -section:"PHP" ^
    -ActivityTimeout:90
    
    cscript %windir%system32inetsrvfcgiconfig.js -set -section:"PHP" ^
    -RequestTimeout:90

                 改变 php.ini 文件的位置

    cscript %windir%system32inetsrvfcgiconfig.js -set -section:"PHP" ^
    -EnvironmentVars:PHPRC:"D:Program Filesphp5"
    • 配置iis

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

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

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

             扩展名为.php   映射路径为C:WINDOWSsystem32inetsrvfcgiext.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';  

                          如果出现乱码则修改MantispluginsMantisGraphcoregraph_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


  • 相关阅读:
    MS-DOS命令
    寻找一条通过迷宫的路径
    linux文件基本操作和常用命令
    网络基础
    计算机基础---操作系统
    GIT 使用
    计算机基础
    秒角士网站
    咖啡项目
    winfrom面向对象1
  • 原文地址:https://www.cnblogs.com/wala-wo/p/5119232.html
Copyright © 2011-2022 走看看