更多文章:
Mindtouch (前身為 Dekiwiki),自 2013 年下半年起,官方對 OpenSource 版已停止繼續維護,最後版為 Mindtouch 10.1.4。
系統環境:
原始檔下載連結:
Installing Dependencies
http://fedoraproject.org/wiki/EPEL
// for CentOS 5 wget http://mirror01.idc.hinet.net/EPEL/5/i386/epel-release-5-4.noarch.rpm rpm -Uvh epel-release-5-4.noarch.rpm // for CentOS 6 yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
yum install bison gettext glib2 freetype fontconfig libpng libpng-devel libX11 libX11-devel glib2-devel libgdi* libexif glibc-devel urw-fonts java unzip gcc gcc-c++ automake autoconf libtool make bzip2 wget
Downloading and Compiling
http://origin-download.mono-project.com/sources/mono/
NOTE: 不要安裝新版 mono,會無法啟動授權檔。
cd /usr/src wget http://download.mono-project.com/sources/mono/mono-2.10.8.tar.gz tar xzf mono-2.10.8.tar.gz cd mono-2.10.8 ./configure --prefix=/opt/mono-2.10.8 make && make install
TIP:
如果安裝過程遇到錯誤 Out of memory 時,就執行
ulimit -v unlimited
Completed the installation
# /opt/mono-2.10.8/bin/mono --version Mono JIT compiler version 2.10.8 (tarball Sun Jul 6 02:48:03 EDT 2014) Copyright (C) 2002-2011 Novell, Inc, Xamarin, Inc and Contributors. www.mono-project.com TLS: __thread SIGSEGV: altstack Notifications: epoll Architecture: x86 Disabled: none Misc: softdebug LLVM: supported, not enabled. GC: Included Boehm (with typed GC and Parallel Mark)
for CentOS 6
yum install mysql-server httpd php-common php php-mysql php-gd \ php-mbstring php-mcrypt wv links tidy html2ps mod_ssl \ poppler-utils html2text mod_proxy_html
Install Prince
wget http://www.princexml.com/download/prince-11.3-1.centos6.x86_64.rpm rpm -ivh prince-11.3-1.centos6.x86_64.rpm
for Cent OS 6)
wget http://repo.mindtouch.com/CentOS_5/noarch/mindtouch-10.1.4-6.1.noarch.rpm rpm -ivh mindtouch-10.1.4-6.1.noarch.rpm
for CentOS 5)
cd /etc/yum.repos.d wget http://repo.mindtouch.com/CentOS_5/home:mindtouch.repo -O mindtouch.repo
或者,手動新增 /etc/yum.repo.d/mindtouch.repo
[home_mindtouch] name=mindtouch's Home Project (CentOS_5) type=rpm-md baseurl=http://repo.mindtouch.com/CentOS_5/ gpgcheck=1 gpgkey=http://repo.mindtouch.com/CentOS_5/repodata/repomd.xml.key enabled=1
開始安裝
yum install mindtouch
設定 Apache
新增 /etc/httpd/conf.d/deki-apache.conf
<VirtualHost *:80> ServerName www.example.com #ServerAlias ErrorLog /var/log/httpd/error-dekiwiki.log CustomLog /var/log/httpd/access-dekiwiki.log common DocumentRoot "/var/www/dekiwiki" RewriteEngine On RewriteCond %{REQUEST_URI} ^/$ RewriteRule ^/$ /index.php?title= [L,QSA,NE] RewriteCond %{REQUEST_URI} !^/(@api|editor|skins|config|deki)/ RewriteCond %{REQUEST_URI} !^/index\.php RewriteCond %{REQUEST_URI} !^/favicon\.ico$ RewriteCond %{REQUEST_URI} !^/robots\.txt$ RewriteCond %{REQUEST_URI} !^/error/(.*)\.var$ RewriteCond %{QUERY_STRING} ^$ [OR] %{REQUEST_URI} ^/Special:Search RewriteRule ^/(.*)$ /index.php?title=$1 [L,QSA,NE] # Bug: 5252 https rewrite/proxy rules RewriteCond %{HTTPS} =on RewriteCond %{REQUEST_URI} ^/@api/ RewriteCond %{QUERY_STRING} !^(.*)dream.in.scheme= [NC] RewriteRule ^/@api/(.*)$ http://localhost:8081/$1?dream.in.scheme=https [QSA,P,L] RewriteCond %{HTTPS} =on RewriteCond %{REQUEST_URI} ^/@api/ RewriteCond %{QUERY_STRING} ^(.*)dream.in.scheme= [NC] RewriteRule ^/@api/(.*)$ http://localhost:8081/$1 [QSA,P,L] # End Bug: 5252 # deki-api uses encoded slashes in query parameters so AllowEncodedSlashes must be On AllowEncodedSlashes On # FIXME: # Some php flags we need. These are only needed until all # the short php open tags are changed to long in the source code. php_flag short_open_tag on # Allow short open tags and turn off E_NOTICE messages php_value error_reporting "E_ALL & ~E_NOTICE" # Setting php memory parameters # php_value memory_limit "128M" # php_value post_max_size "64M" # php_value upload_max_filesize "64M" # mod_proxy rules ProxyPass /@api http://localhost:8081 retry=1 ProxyPassReverse /@api http://localhost:8081 SetEnv force-proxy-request-1.0 1 SetEnv proxy-nokeepalive 1 <Proxy *> AddDefaultCharset off Order deny,allow Deny from all Allow from all </Proxy> </VirtualHost> <Directory "/var/www/dekiwiki"> # Possible values for the Options directive are "None", "All", # or any combination of: # Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews # # Note that "MultiViews" must be named *explicitly* --- "Options All" # doesn't give it to you. # # The Options directive is both complicated and important. Please see # http://httpd.apache.org/docs-2.2/mod/core.html#options # for more information. Options None # AllowOverride controls what directives may be placed in .htaccess files. # It can be "All", "None", or any combination of the keywords: # Options FileInfo AuthConfig Limit AllowOverride All # Controls who can get stuff from this server. Order allow,deny Allow from all </Directory>
啟動服務
service httpd start chkconfig httpd on
設定 MySQL
service mysqld start chkconfig mysqld on mysql_secure_installation
http://server-ip-address/ , 透過網頁指引完成初始化安裝
TIPs:
Web Installation:
安裝程序完成時,頁面會顯示
Your Install Is Almost Complete!
Your MindTouch license could not be generated. Please follow the steps below to retrieve your license....
參考附檔:Installation Completed
繼續完成下述指令
cd /var/www/dekiwiki/config cp mindtouch.host.conf /etc/dekiwiki cp mindtouch.deki.startup.xml /etc/dekiwiki cp LocalSettings.php /var/www/dekiwiki/ chmod 0644 /etc/dekiwiki/mindtouch* chmod 0644 /var/www/dekiwiki/LocalSettings.php rm mindtouch.host.conf rm mindtouch.deki.startup.xml rm LocalSettings.php /etc/init.d/dekiwiki stop /etc/init.d/dekiwiki start
安裝完成。
開啟網站首頁,並以剛剛設定的管理員帳號登入。
TIPs:
第一次登入管理控制台,顯示網站尚未啟動授權,以致無法正常運作。上傳授權檔 license.xml 並啟動網站。
啟動服務時,如無法立即出現網頁,需等待數分鐘。
啟動授權作業時,需等待數分鐘直到網頁顯示
License Type: Mindtouch Core Perpetual licemse
參考附檔:License Activated
到此,一個新的 Mindtouch 網站已經完成。
NOTE:確認以下檔案已經存在
// 還原資料庫 mysql -u root -p wikidb < /data/wikidb.sql // 還原網頁檔的附件目錄 attachments cp -rp /data/dekiwiki/attachments/* /var/www/dekiwiki/attachments/ chown -R dekiwiki:apache /var/www/dekiwiki/attachments/
NOTE: 資料庫一旦還原完成,網站的管理者密碼與所有網站的參數設定都會變成舊網站的設定。
舊網站的客製化設定檔(選用)
/var/www/dekiwiki/LocalSettings.php:
... // $wgProfileApi = true; $wgDefaultTimezone = '+08:00'; //GMT offset // $wgDefaultEditorEngine = 'FCKeditor'; $wgDefaultEditor = 'FCKeditor'; // $wgForceCP = true;
網站小圖示:
cp /data/dekiwiki/favicon.ico /var/www/dekiwiki/
chkconfig mysqld on chkconfig httpd on chkconfig dekiwiki on service httpd start service dekiwiki start
舊網站資料庫還原後,重新開啟網頁出現錯誤:
HTTP Response Status Code: 500
An exception was thrown: Could not find specified column in results in MySql.Data
ANS:原因可能是舊網站是比較舊的 Mindtouch 或 Dekiwiki 版本,解決方式如下:
# cd /var/www/dekiwiki/maintenance/ # php update-db.php Updating wikidb on localhost Applying misc database updates...done added 'languages' config key Start update script added 'files/blacklisted-disposition-mimetypes' config key fixing recentchanges.rc_cur_id data dropping stored procedures adding user_seat column to users table dropping table `linkscc` dropping table `objectcache` dropping table `querycache` Done.
Images 0 | ||
---|---|---|
No images to display in the gallery. |