Updated : January 2011
Deki Wiki 8.08の設定
Apache
「conf/httpd.conf」ファイルの編集
Deki Wikiはポート8081でリスンしているので、ApacheをDeki Wikiのリバースプロキシとして構成する。
(赤字箇所はインストールなど個別依存部分)
PHP関連(以下の形式でPHPをインストールした時に自動的に設定されているので確認)
#BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
PHPIniDir "C:/PHP/"
LoadModule php5_module "C:/PHP/php5apache2_2.dll"
#END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
PROXY関連
「mod_proxy.so」「mod_proxy_http.so」「mod_rewrite.so」がコメントアウトされているので、「#」を削除する。
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule rewrite_module modules/mod_rewrite.so
初期設定したファイルが、「<deki>/config/deki-apache.conf」にあるので、それを利用する。
(Includeでファイルを取り込むか、コピーをして使用する。)
最低限以下の赤字箇所の修正・確認を行う。
<VirtualHost *>
ServerName dekiwiki
#ServerAlias
ErrorLog C:/Apache2.2/logs/error-dekiwiki.log
CustomLog C:/Apache2.2/logs/access-dekiwiki.log common
DocumentRoot "C:/dekiwiki/web"
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^/$ /index.php?title= [L,QSA,NE]
RewriteCond %{REQUEST_URI} ^/@gui/[^.]+$
RewriteRule ^/@gui/(.*)$ /proxy.php?path=$1 [L,QSA,NE]
RewriteCond %{REQUEST_URI} !^/(@api|editor|skins|config|@gui|deki-cp)/
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]
# 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 "C:/dekiwiki/web">
# 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>設定後、Apacheを再起動する。
Deki Wikiの自動構成
前提ソフトウェアのインストール後、自動構成スクリプトにより環境設定を行う。
留意点
Intranet環境などでInternetと接続できないサーバの場合、最初に接続した時にエラーとなることがある。
これは、Extensionsの中に、Manifestを外部サーバに取りに行くものがあるためであり、これらのExtensionのサービス起動時にエラーとなっているためである。
「ツール」?「コントロールパネル」?「System Settings」で、 「unable to initialize service (invalid extension manifest)」が表示されているExtensionsを削除する。