最近有須求要建立一個 wiki 站編寫一些需要記錄的相關訊息,經過挑選後,選擇比較熱門且有持續維護的 Mediawiki 來使用
Mediawiki 就是你我常見的維基百科使用一樣的 wiki,優點是套件非常的多,你可以複雜化,也可以單純化,延展性非常的好
此篇記錄安裝 mediawiki 1.26.2
Required software:
- Web server with PHP 5.3.3 or higher.
- A SQL server, the following types are supported
- MySQL 5.0.3 or higher
- PostgreSQL 8.3 or higher
- SQLite 3.3.7 or higher
- Oracle 9.0.1 or higher
- Microsoft SQL Server 2005 (9.00.1399)
環境介紹:
- CentOS 6.7
- Nginx 1.8.0
- php 5.3.3
- php-fpm
- mysql-server 5.1.73
安裝 MediaWiki with Nginx
Step.1 準備 Mediawiki 環境
$ yum install -y php-pecl-apc php-gd php-intl
Step.2 建立 Mediawiki
$ wget https://releases.wikimedia.org/mediawiki/1.26/mediawiki-1.26.2.tar.gz $ tar zxvf mediawiki-1.26.2.tar.gz $ mv mediawiki-1.26.2 /usr/share/nginx/html/mediawiki $ chown -R nginx.nginx /usr/share/nginx/html/mediawiki
Step.3 建立 mediawiki database
mysql> create database mediawiki; mysql> grant all privileges on mediawiki.* to wiki_USER@'localhost' identified by 'password'; mysql> flush privileges;
Step.4 設定 nginx
$ vim /etc/nginx/conf.d/mediawiki.conf server { listen 80; server_name mediawiki.server.com; access_log /var/log/nginx/mediawiki_access.log; error_log /var/log/nginx/mediawiki_error.log warn; root /usr/share/nginx/html/mediawiki; index index.php index.html; client_max_body_size 50m; client_body_buffer_size 1024k; location / { index index.php index.html; try_files $uri $uri/ /index.php; } location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; fastcgi_read_timeout 120; } } $ service nginx restart
如果你的主機資源足夠,可以提供多一點的資源,讓編輯文章的時候可以更快速的進行
client_max_body_size 50m; client_body_buffer_size 1024k;
Step.5 用 mediawiki 內建的 setup 建立設定檔
訪問 http://mediawiki.server.com
一步一步設定後完成就會看到 mediawiki 首頁,實際上是建立 LocalSettings.php 這一支主要的設定檔
$ vim /usr/share/nginx/html/mediawiki/LocalSettings.php $wgSitename = "這是維基的抬頭名稱"; $wgServer = "http://mediawiki.server.com"; $wgLogo = "$wgResourceBasePath/resources/assets/wiki.png"; #LOGO圖片 #管理員通知 $wgEnableEmail = true; $wgEnableUserEmail = true; # UPO $wgEmergencyContact = "scott@mail.com"; $wgPasswordSender = "scott@mail.com"; # Database settings $wgDBtype = "mysql"; $wgDBserver = "192.168.10.5"; $wgDBname = "mediawiki"; $wgDBuser = "wiki_USER"; $wgDBpassword = "password"; # Shared memory settings $wgMainCacheType = CACHE_ACCEL; $wgMemCachedServers = array(); #如果你有memcache server就可以支援 # 圖片上傳和轉檔 $wgEnableUploads = true; $wgUseImageMagick = true; $wgImageMagickConvertCommand = "/usr/bin/convert";
主要的設定大致上必須知道以上,之後再補上 Mediawiki Plugin 的部份如何使用。