Discuz!是一套通用的社群論壇軟體系統,使用者可以在不需要任何程式設計的基礎上,通過簡單的設定和安裝,在網際網路上搭建起具備完善功能、很強負載能力和可高度定制的論壇服務。Discuz! 的基礎架構采用世界上最流行的web程式設計組合PHP+MySQL實作,是一個經過完善設計,适用于各種伺服器環境的高效論壇系統解決方案。
1、下載下傳discuz!安裝包 建立www目錄存放discuz安裝檔案
1
2
3
<code>[root@yong src]</code><code># mkdir /data/www</code>
<code>[root@yong src]</code><code># cd /data/www/</code>
<code>[root@yong www]</code><code># wget http://download.comsenz.com/DiscuzX/3.2/Discuz_X3.2_SC_GBK.zip</code>
解壓下載下傳的包,解壓之後有3個目錄,readme是安裝資訊,utility是更新的資訊,可以删除這2個目錄;隻保留upload目錄。
<a href="http://download.comsenz.com/DiscuzX/3.2/Discuz_X3.2_SC_GBK.zip" target="_blank"></a>
<code>[root@yong www]</code><code># unzip Discuz_X3.2_SC_GBK.zip </code>
<code>[root@yong www]</code><code># ls</code>
<code>Discuz_X3.2_SC_GBK.zip readme upload utility</code>
upload目錄的所有檔案移動到目前www目錄下
<code>[root@yong www]</code><code># mv upload/* .</code>
<code>[root@yong www]</code><code># rm -rf upload/</code>
啟動apache
<code>[root@yong www]</code><code># /usr/local/apache2/bin/apachectl start</code>
可以給apachectl指令做一個軟連接配接,以後就不用輸絕對路徑了
<code>[root@yong www]</code><code># ln -s /usr/local/apache2/bin/apachectl /usr/bin/</code>
<code>[root@yong www]</code><code># apachectl -t</code>
<code>Syntax OK</code>
2、配置虛拟主機
編輯apache主配置檔案# vim /usr/local/apache2/conf/httpd.conf
找到這一行
#Include conf/extra/httpd-vhosts.conf
删除前面的#号,讓這個配置檔案生效,儲存退出;
編輯虛拟主機配置檔案# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf
一共有2段VirtualHost,删除一段多餘的;
<VirtualHost *:80>
DocumentRoot "/usr/local/apache2/docs/dummy-host.example.com" #存放檔案的位址
ServerName dummy-host.example.com #網站域名,可以自定義一個;
ErrorLog "logs/dummy-host.example.com-error_log" #錯誤日志
CustomLog "logs/dummy-host.example.com-access_log" common #自定義的日志;
</VirtualHost>
更改設定,隻保留下面的幾行:
<VirtualHost *:80>
DocumentRoot "/data/www"
儲存退出後,檢測apache是否正常工作,使用curl解析一下網站,出現It works!說明沒有成功;
4
<code>[root@yong www]</code><code># curl -x127.0.0.1:80 www.123.com</code>
<code><html><body><h1>It works!<</code><code>/h1</code><code>><</code><code>/body</code><code>><</code><code>/html</code><code>></code>
優雅地重新開機apache,報錯:提示端口已經在使用,不能綁定到指定的端口上。
5
6
<code>[root@yong www]</code><code># apachectl graceful</code>
<code>httpd not running, trying to start</code>
<code>(98)Address already </code><code>in</code> <code>use: make_sock: could not bind to address [::]:80</code>
<code>(98)Address already </code><code>in</code> <code>use: make_sock: could not bind to address 0.0.0.0:80</code>
<code>no listening sockets available, shutting down</code>
<code>Unable to </code><code>open</code> <code>logs</code>
解決方法:ps檢視httpd程序,然後殺掉,殺掉之後再重新開機,就不會報錯;
<code>[root@yong www]</code><code># ps aux |grep httpd</code>
<code>[root@yong www]</code><code># killall httpd</code>
curl解析網站,沒有任何資訊輸出,表示正确。加-I顯示網站的資訊,提示302錯誤;location為install,說明解析正确。
7
8
<code>[root@localhost www]</code><code># curl -x127.0.0.1:80 www.123.com</code>
<code>[root@localhost www]</code><code># curl -x127.0.0.1:80 www.123.com -I</code>
<code>HTTP</code><code>/1</code><code>.1 302 Found</code>
<code>Date: Wed, 29 Apr 2015 07:37:13 GMT</code>
<code>Server: Apache</code><code>/2</code><code>.2.29 (Unix) DAV</code><code>/2</code> <code>PHP</code><code>/5</code><code>.3.28</code>
<code>X-Powered-By: PHP</code><code>/5</code><code>.3.28</code>
<code>location: </code><code>install</code>
<code>Content-Type: text</code><code>/html</code>
問題排錯:如果解析結果報錯為403的話,需要進行如下的排錯
<code>[root@yong www]</code><code># curl -x127.0.0.1:80 www.123.com -I</code>
<code>HTTP</code><code>/1</code><code>.1 403 Forbidden</code>
<code>Date: Wed, 29 Apr 2015 07:24:34 GMT</code>
<code>Server: Apache</code><code>/2</code><code>.2.15 (CentOS)</code>
<code>Accept-Ranges: bytes</code>
<code>Content-Length: 4954</code>
<code>Connection: close</code>
<code>Content-Type: text</code><code>/html</code><code>; charset=UTF-8</code>
出現403錯誤,原因是沒有權限通路網站,需要編輯apache配置檔案,
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
更改為:order allow,deny
allow from all
儲存退出後,需要重新開機apache,問題解決;
當啟動apache的時候,如果出現“NameVirtualHost *:80 has no VirtualHosts”錯誤時,大部分是因為修改了apache的httpd.conf配置檔案,将extra/vhosts.conf檔案引入到httpd.conf中了。
<code>[root@yong www]</code><code># apachectl restart</code>
<code>[Thu Apr 30 09:49:15 2015] [warn] NameVirtualHost *:80 has no VirtualHosts</code>
虛拟主機httpd-vhost.conf檔案中有一句配置語句為
NameVirtualHost *:80
下面有一段代碼<>内要配置和上面的語句一緻,就不會出現錯誤了。
DocumentRoot "/data/www"
ServerName www.123.com
在實體機C:\Windows\System32\drivers\etc\hosts
手動增加一行 192.168.20.20 www.123.com 通路域名123.com就解析到本地的ip;
來自 192.168.20.20 的回複: 位元組=32 時間=6ms TTL=64
來自 192.168.20.20 的回複: 位元組=32 時間=2ms TTL=64
來自 192.168.20.20 的回複: 位元組=32 時間<1ms TTL=64
繼續下面的操作,打開IE浏覽器輸入 www.123.com 自動添加/install/ 出現Discuz !安裝向導界面。
<a href="http://s3.51cto.com/wyfs02/M01/6C/3C/wKioL1VB9LWzdznFAASRW-1bV_w057.jpg" target="_blank"></a>
點選我同意到下一個頁面,紅色叉叉代表目前目錄不存在或不可寫。
<a href="http://s3.51cto.com/wyfs02/M02/6C/3C/wKioL1VB9ayCybA4AAKLESkBdSY265.jpg" target="_blank"></a>
ps aux 檢視httpd程序,發現apache的運作賬号為daemon
<a href="http://s3.51cto.com/wyfs02/M02/6C/40/wKiom1VB9G_h940EAAPr8d8j4Yg160.jpg" target="_blank"></a>
<a href="http://s3.51cto.com/wyfs02/M02/6C/3C/wKioL1VB9lTQQWzqAAGCSKUNas8303.jpg" target="_blank"></a>
根據提示,修改對應目錄的權限,讓這幾個目錄支援apache運作賬号可寫操作;
<code>[root@yong www]</code><code># chown -R daemon data/ config/ uc_server/data/ uc_client/data/</code>
回到IE浏覽器,按F5重新整理,發現狀态為可寫
<a href="http://s3.51cto.com/wyfs02/M02/6C/3C/wKioL1VB9nayV-7tAACPY3Xdx10074.jpg" target="_blank"></a>
下一步,選擇全新安裝Discuz!( UCenter 使用者中心,儲存使用者的資料資訊)
<a href="http://s3.51cto.com/wyfs02/M02/6C/40/wKiom1VB8yTRhRNvAACoVqpxATM675.jpg" target="_blank"></a>
需要填寫資料庫資訊
<a href="http://s3.51cto.com/wyfs02/M00/6C/3C/wKioL1VB9pDTEYkKAAE0QheQ1SI367.jpg" target="_blank"></a>
3、配置mysql,給Discuz !增加一個賬戶
給mysql root賬戶設定密碼,然後指令行進入mysql,建立新的庫,并建立一個新的帳号對該庫有所有權限:
> grant all on discuz.* to 'username'@'localhost' identified by '123456';
指令解釋: 允許所有權限針對discuz庫的所有表 使用者@本地 定義使用者的密碼
mysql裡面的執行指令較多,可以寫到PATH裡面,或添加到/etc/profile裡面。
<code>[root@yong www]</code><code># PATH=$PATH:/usr/local/mysql/bin/</code>
首先給mysql設定一個密碼,實際環境中要設定複雜密碼,安全性考慮。
<code>[root@yong www]</code><code># mysqladmin -uroot password '123456'</code>
使用使用者名密碼登入,-p後面直接輸入密碼,或者在互動時輸入密碼。
<code>[root@yong www]</code><code># mysql -uroot -p123456</code>
<code>[root@yong www]</code><code># mysql -uroot -p</code>
<code>Enter password:</code>
使用mysql指令進入終端,建立一個discuz庫,建立一個discuz資料庫,建立一個新使用者及密碼;
<code>mysql> create discuz;</code>
<code>mysql> create database discuz; </code>
<code>mysql> grant all on discuz.* to </code><code>'yong'</code><code>@</code><code>'localhost'</code> <code>identified by </code><code>'yong123'</code><code>; </code>
<code>mysql> quit</code>
使用建立立的使用者登入mysql測試是否正常。
<code>[root@yong www]</code><code># mysql -uyong -pyong123</code>
填寫資料庫資訊,然後點選下一步就安裝完成啦!
<a href="http://s3.51cto.com/wyfs02/M02/6C/3C/wKioL1VB9y-ifgrjAAFn-u4xwa4347.jpg" target="_blank"></a>
<a href="http://s3.51cto.com/wyfs02/M01/6C/3C/wKioL1VB91Tinz-7AAM2pFUaW5U008.jpg" target="_blank"></a>
admin 賬号密碼登入,選擇管理中心背景,登入之後可以進行背景操作。
<a href="http://s3.51cto.com/wyfs02/M01/6C/40/wKiom1VB9gSgCN46AAEqWwf8YuE964.jpg" target="_blank"></a>
Discuz!論壇搭建完畢,論壇背景設定及功能設定有需要的朋友自行查找資料了解。
本文轉自 模範生 51CTO部落格,原文連結:http://blog.51cto.com/mofansheng/1641011,如需轉載請自行聯系原作者