日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

IIS部署php项目——discuz论坛

發布時間:2023/12/13 综合教程 24 生活家
生活随笔 收集整理的這篇文章主要介紹了 IIS部署php项目——discuz论坛 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

  1、安裝CgiModule模塊

  首先,IIS要部署php項目,需要CgiModule模塊的支持,所以首先我們要確認這個模塊是否存在

  打開IIS管理器:

  

  我這里是存在的:

  

  如果不存在,可以自行在控制面板=》程序與功能=》啟用或者關閉windows功能:  

  

  2、下載安裝PHP和discuz

  PHP和discuz可以前往官網下載

  PHP官網:https://www.php.net/downloads

  discuz應用中心:https://addon.dismall.com/

  discuz包下載地址:https://www.dismall.com/thread-73-1-1.html

  百度云:https://pan.baidu.com/s/1HvkBASRkNDR4idppCHSbMw (提取碼: yff2)(這個是本文用到的版本)

  注:貌似這個地址會被百度網盤和諧掉,我不知道為什么,如果這個下載不了,那就只能去上面的discuz包下載地址去下載x3.4版本的包,如果discuz包下載地址也進不去,那就只能通過上面的discuz應用中心地址頁面最下面的Discuz程序下載鏈接去Discuz官方論壇找了。

  3、準備工作

  mysql:

  地址:192.168.18.129  

  端口:3306

  用戶:root

  密碼:123456

  數據庫:ultrax(論壇)、ucenter(用戶中心)這兩個數據庫實現創建好

  redis:

  地址:192.168.18.129

  端口:6379

  通過上面的百度云下載php和discuz的壓縮包,將php-5.6.38-nts-Win32-VC11-x64.zip解壓到D:php,作為php的安裝目錄,進入安裝目錄,復制一份php.ini-production,重命名為php.ini,使用文本打開后,修改配置并啟用一下模塊(去掉前面的分號):  

  #取消以下配置參數前面的分號和修改值

  extension_dir = "D:phpext" #設置php模塊路徑為同目錄下ext文件夾
  date.timezone = Asia/Shanghai #設置時區為中國時區
  cgi.force_redirect= 0 #開啟以CGI方式運行php
  fastcgi.impersonate= 1

  extension=php_mysql.dll
  extension=php_mysqli.dll
  extension=php_pdo_mysql.dll

  

  discuz壓縮包中upload的就是discuz的項目文件,將它解壓出來,我這里的解壓目錄是C:inetpubwwwrootdiscuz

  

  使用文本編輯打開config中的config_global_default.php和config_ucenter_default.php,然后分別配置數據庫信息和redis

  編輯config_global_default.php,并重命名為config_global.php:

  

  

  

<?php

/**
 *      [Discuz!] (C)2001-2099 Comsenz Inc.
 *      This is NOT a freeware, use is subject to license terms
 *
 *      $Id: config_global_default.php 36362 2017-02-04 02:02:03Z nemohou $
 */

$_config = array();

// ----------------------------  CONFIG DB  ----------------------------- //
// ----------------------------  數據庫相關設置---------------------------- //

/**
 * 數據庫主服務器設置, 支持多組服務器設置, 當設置多組服務器時, 則會根據分布式策略使用某個服務器
 * @example
 * $_config['db']['1']['dbhost'] = 'localhost'; // 服務器地址
 * $_config['db']['1']['dbuser'] = 'root'; // 用戶
 * $_config['db']['1']['dbpw'] = 'root';// 密碼
 * $_config['db']['1']['dbcharset'] = 'gbk';// 字符集
 * $_config['db']['1']['pconnect'] = '0';// 是否持續連接
 * $_config['db']['1']['dbname'] = 'x1';// 數據庫
 * $_config['db']['1']['tablepre'] = 'pre_';// 表名前綴
 *
 * $_config['db']['2']['dbhost'] = 'localhost';
 * ...
 *
 */
$_config['db'][1]['dbhost']  		= '192.168.18.129';
$_config['db'][1]['dbuser']  		= 'root';
$_config['db'][1]['dbpw'] 	 	= '123456';
$_config['db'][1]['dbcharset'] 		= 'utf8';
$_config['db'][1]['pconnect'] 		= 0;
$_config['db'][1]['dbname']  		= 'ultrax';
$_config['db'][1]['tablepre'] 		= 'pre_';

/**
 * 數據庫從服務器設置( slave, 只讀 ), 支持多組服務器設置, 當設置多組服務器時, 系統根據每次隨機使用
 * @example
 * $_config['db']['1']['slave']['1']['dbhost'] = 'localhost';
 * $_config['db']['1']['slave']['1']['dbuser'] = 'root';
 * $_config['db']['1']['slave']['1']['dbpw'] = 'root';
 * $_config['db']['1']['slave']['1']['dbcharset'] = 'gbk';
 * $_config['db']['1']['slave']['1']['pconnect'] = '0';
 * $_config['db']['1']['slave']['1']['dbname'] = 'x1';
 * $_config['db']['1']['slave']['1']['tablepre'] = 'pre_';
 * $_config['db']['1']['slave']['1']['weight'] = '0'; //權重:數據越大權重越高
 *
 * $_config['db']['1']['slave']['2']['dbhost'] = 'localhost';
 * ...
 *
 */
$_config['db']['1']['slave'] = array();

//啟用從服務器的開關
$_config['db']['slave'] = false;
/**
 * 數據庫 分布部署策略設置
 *
 * @example 將 common_member 部署到第二服務器, common_session 部署在第三服務器, 則設置為
 * $_config['db']['map']['common_member'] = 2;
 * $_config['db']['map']['common_session'] = 3;
 *
 * 對于沒有明確聲明服務器的表, 則一律默認部署在第一服務器上
 *
 */
$_config['db']['map'] = array();

/**
 * 數據庫 公共設置, 此類設置通常對針對每個部署的服務器
 */
$_config['db']['common'] = array();

/**
 *  禁用從數據庫的數據表, 表名字之間使用逗號分割
 *
 * @example common_session, common_member 這兩個表僅從主服務器讀寫, 不使用從服務器
 * $_config['db']['common']['slave_except_table'] = 'common_session, common_member';
 *
 */
$_config['db']['common']['slave_except_table'] = '';

/**
 * 內存服務器優化設置
 * 以下設置需要PHP擴展組件支持,其中 memcache 優先于其他設置,
 * 當 memcache 無法啟用時,會自動開啟另外的兩種優化模式
 */

//內存變量前綴, 可更改,避免同服務器中的程序引用錯亂
$_config['memory']['prefix'] = 'discuz_';

/* reids設置, 需要PHP擴展組件支持, timeout參數的作用沒有查證 */
$_config['memory']['redis']['server'] = '192.168.18.129';
$_config['memory']['redis']['port'] = 6379;
$_config['memory']['redis']['pconnect'] = 1;
$_config['memory']['redis']['timeout'] = 0;
$_config['memory']['redis']['requirepass'] = '';
/**
 * 是否使用 Redis::SERIALIZER_IGBINARY選項,需要igbinary支持,windows下測試時請關閉,否則會出>現錯誤Reading from client: Connection reset by peer
 * 支持以下選項,默認使用PHP的serializer
 * [重要] 該選項已經取代原來的 $_config['memory']['redis']['igbinary'] 選項
 * Redis::SERIALIZER_IGBINARY =2
 * Redis::SERIALIZER_PHP =1
 * Redis::SERIALIZER_NONE =0 //則不使用serialize,即無法保存array
 */
$_config['memory']['redis']['serializer'] = 1;

$_config['memory']['memcache']['server'] = '';			// memcache 服務器地址
$_config['memory']['memcache']['port'] = 11211;			// memcache 服務器端口
$_config['memory']['memcache']['pconnect'] = 1;			// memcache 是否長久連接
$_config['memory']['memcache']['timeout'] = 1;			// memcache 服務器連接超時

$_config['memory']['apc'] = 0;							// 啟動對 APC 的支持
$_config['memory']['apcu'] = 0;							// 啟動對 APCu 的支持
$_config['memory']['xcache'] = 0;						// 啟動對 xcache 的支持
$_config['memory']['eaccelerator'] = 0;					// 啟動對 eaccelerator 的支持
$_config['memory']['wincache'] = 0;						// 啟動對 wincache 的支持
$_config['memory']['yac'] = 0;     						//啟動對 YAC 的支持
$_config['memory']['file']['server'] = '';				// File 緩存存放目錄,如設置為 data/cache/filecache ,設置后啟動 File 緩存
// 服務器相關設置
$_config['server']['id']		= 1;			// 服務器編號,多webserver的時候,用于標識當前服務器的ID

// 附件下載相關
//
// 本地文件讀取模式; 模式2為最節省內存方式,但不支持多線程下載
// 1=fread 2=readfile 3=fpassthru 4=fpassthru+multiple
$_config['download']['readmod'] = 2;

// 是否啟用 X-Sendfile 功能(需要服務器支持)0=close 1=nginx 2=lighttpd 3=apache
$_config['download']['xsendfile']['type'] = 0;

// 啟用 nginx X-sendfile 時,論壇附件目錄的虛擬映射路徑,請使用 / 結尾
$_config['download']['xsendfile']['dir'] = '/down/';

// 頁面輸出設置
$_config['output']['charset'] 			= 'utf-8';	// 頁面字符集
$_config['output']['forceheader']		= 1;		// 強制輸出頁面字符集,用于避免某些環境亂碼
$_config['output']['gzip'] 			= 0;		// 是否采用 Gzip 壓縮輸出
$_config['output']['tplrefresh'] 		= 1;		// 模板自動刷新開關 0=關閉, 1=打開
$_config['output']['language'] 			= 'zh_cn';	// 頁面語言 zh_cn/zh_tw
$_config['output']['staticurl'] 		= 'static/';	// 站點靜態文件路徑,“/”結尾
$_config['output']['ajaxvalidate']		= 0;		// 是否嚴格驗證 Ajax 頁面的真實性 0=關閉,1=打開
$_config['output']['iecompatible']		= 0;		// 頁面 IE 兼容模式

// COOKIE 設置
$_config['cookie']['cookiepre'] 		= 'discuz_'; 	// COOKIE前綴
$_config['cookie']['cookiedomain'] 		= ''; 		// COOKIE作用域
$_config['cookie']['cookiepath'] 		= '/'; 		// COOKIE作用路徑

// 站點安全設置
$_config['security']['authkey']			= 'asdfasfas';	// 站點加密密鑰
$_config['security']['urlxssdefend']		= true;		// 自身 URL XSS 防御
$_config['security']['attackevasive']		= 0;		// CC 攻擊防御 1|2|4|8

$_config['security']['querysafe']['status']	= 1;		// 是否開啟SQL安全檢測,可自動預防SQL注入攻擊
$_config['security']['querysafe']['dfunction']	= array('load_file','hex','substring','if','ord','char');
$_config['security']['querysafe']['daction']	= array('@','intooutfile','intodumpfile','unionselect','(select', 'unionall', 'uniondistinct');
$_config['security']['querysafe']['dnote']	= array('/*','*/','#','--','"');
$_config['security']['querysafe']['dlikehex']	= 1;
$_config['security']['querysafe']['afullnote']	= 0;

$_config['security']['creditsafe']['second'] 	= 0;		// 開啟用戶積分信息安全,可防止并發刷分,滿足 times(次數)/second(秒) 的操作無法提交
$_config['security']['creditsafe']['times'] 	= 10;

$_config['admincp']['founder']			= '1';		// 站點創始人:擁有站點管理后臺的最高權限,每個站點可以設置 1名或多名創始人
								// 可以使用uid,也可以使用用戶名;多個創始人之間請使用逗號“,”分開;
$_config['admincp']['forcesecques']		= 0;		// 管理人員必須設置安全提問才能進入系統設置 0=否, 1=是[安全]
$_config['admincp']['checkip']			= 1;		// 后臺管理操作是否驗證管理員的 IP, 1=是[安全], 0=否。僅在管理員無法登陸后臺時設置 0。
$_config['admincp']['runquery']			= 0;		// 是否允許后臺運行 SQL 語句 1=是 0=否[安全]
$_config['admincp']['dbimport']			= 1;		// 是否允許后臺恢復論壇數據  1=是 0=否[安全]

/**
 * 系統遠程調用功能模塊
 */

// 遠程調用: 總開關 0=關  1=開
$_config['remote']['on'] = 0;

// 遠程調用: 程序目錄名. 出于安全考慮,您可以更改這個目錄名, 修改完畢, 請手工修改程序的實際目錄
$_config['remote']['dir'] = 'remote';

// 遠程調用: 通信密鑰. 用于客戶端和本服務端的通信加密. 長度不少于 32 位
//          默認值是 $_config['security']['authkey']	的 md5, 您也可以手工指定
$_config['remote']['appkey'] = md5($_config['security']['authkey']);

// 遠程調用: 開啟外部 cron 任務. 系統內部不再執行cron, cron任務由外部程序激活
$_config['remote']['cron'] = 0;

// $_GET|$_POST的兼容處理,0為關閉,1為開啟;開啟后即可使用$_G['gp_xx'](xx為變量名,$_GET和$_POST集合的所有變量名),值為已經addslashes()處理過
$_config['input']['compatible'] = 1;

// Addon Setting
//$_config['addonsource'] = 'xx1';
//$_config['addon'] = array(
//    'xx1' => array(
//	'website_url' => 'http://127.0.0.1/AppCenter',
//	'download_url' => 'http://127.0.0.1/AppCenter/index.php',
//	'download_ip' => '',
//	'check_url' => 'http://127.0.0.1/AppCenter/?ac=check&file=',
//	'check_ip' => ''
//    )
//);

?>

config_global.php

  編輯config_ucenter_default.php并重命名為config_ucenter.php:

  

  

<?php

/**
 *      [Discuz!] (C)2001-2099 Comsenz Inc.
 *      This is NOT a freeware, use is subject to license terms
 *
 *      $Id: config_ucenter_default.php 11023 2010-05-20 02:23:09Z monkey $
 */

// ============================================================================
define('UC_CONNECT', 'mysql');				// 連接 UCenter 的方式: mysql/NULL, 默認為空時為 fscoketopen(), mysql 是直接連接的數據庫, 為了效率, 建議采用 mysql
// 數據庫相關 (mysql 連接時)
define('UC_DBHOST', '192.168.18.129');			// UCenter 數據庫主機
define('UC_DBUSER', 'root');				// UCenter 數據庫用戶名
define('UC_DBPW', '123456');				// UCenter 數據庫密碼
define('UC_DBNAME', 'ucenter');				// UCenter 數據庫名稱
define('UC_DBCHARSET', 'utf8');				// UCenter 數據庫字符集
define('UC_DBTABLEPRE', '`ucenter`.uc_');		// UCenter 數據庫表前綴
define('UC_DBCONNECT', '0');				// UCenter 數據庫持久連接 0=關閉, 1=打開

// 通信相關
define('UC_KEY', 'yeN3g9EbNfiaYfodV63dI1j8Fbk5HaL7W4yaW4y7u2j4Mf45mfg2v899g451k576');	// 與 UCenter 的通信密鑰, 要與 UCenter 保持一致
define('UC_API', 'http://localhost/ucenter/branches/1.5.0/server'); // UCenter 的 URL 地址, 在調用頭像時依賴此常量
define('UC_CHARSET', 'utf-8');				// UCenter 的字符集
define('UC_IP', '127.0.0.1');				// UCenter 的 IP, 當 UC_CONNECT 為非 mysql 方式時, 并且當前應用服務器解析域名有問題時, 請設置此值
define('UC_APPID', '1');				// 當前應用的 ID

// ============================================================================

define('UC_PPP', '20');

?>

config_ucenter.php

  同時,將C:inetpubwwwrootdiscuz目錄權限添加到Everyone,右鍵C:inetpubwwwrootdiscuz,選擇【安全】選項卡,添加用戶Everyone,并給予可讀可寫的權限;

  

  4、IIS部署discuz

  新建站點:

  

  添加模塊映射,請求路徑:*.php  模塊:FastCgiModule  可執行文件:D:phpphp-cgi.exe  D:php是php的安裝目錄

  

  添加默認文檔:index.php

  

  運行站點之后,打開瀏覽器輸入http://localhost:82 ,就可以打開discuz的安裝向導了

  

  同意之后,進入環境檢查頁面,看頁面是否全部都是綠的的勾勾,是的話進入下一步,不是則逐個處理:

  

  設置運行環境,我這里選擇【全新安裝 Discuz! X (含 UCenter Server)】

  

  安裝數據庫,這個配置是前面我們配置過了,所以只需要添加管理員賬號即可:

  

  點擊下一步即開始安裝:  

  

  到這里discuz安裝即完成了,可以在瀏覽器直接輸入http://localhost:82進入,我們還可以使用上面添加的管理員賬號進入http://localhost:82/admin.php進入后臺管理員頁面,可以進行人員管理,郵件設置等等功能,還能檢驗discuz安裝是否完善等等,這就是后臺操作的東西了:

  

  

總結

以上是生活随笔為你收集整理的IIS部署php项目——discuz论坛的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。