Ubuntu配置LAMP+MediaWiki及常見問題


/*在實驗室覺得文檔傳來傳去太麻煩了,干脆在實驗室內部搞個wiki算了,於是網上搜集搜集資料,配了一個,由於時間倉促,mediaWiki比較高級的東西沒來的及細看,等以后用的時候再完善吧*/

 

環境:Ubuntu 15.10 x64 

一、安裝LAMP

參考:http://www.cnblogs.com/CheeseZH/p/4694135.html

  1. 安裝Apache

使用apt-get管理工具安裝

sudo apt-get update
sudo apt-get install apache2

安裝apache2文檔和附屬工具【可選】

sudo apt-get install apache2-doc apache2-utils

測試:再瀏覽器中輸入http://[你的ip]如果出現如下結果,則說明安裝成功

  2.安裝MySQL

sudo apt-get install musql-server php5-mysql

安裝過程中需要設置MySQL的root用戶的密碼。

安裝之后需要配置MySQL環境,在一個終端運行

sudo mysql_install_db

再另一個終端運行

sudo mysql_secure_installation

按照自己的需求,修改root密碼、刪除示例用戶和數據、禁止遠程root登錄、MySQL實時響應等

  3. 安裝PHP

sudo apt-get install php5 libapache2-mod-php5 php5-mcrypt php5-curl php5-imagick php5-cli

 

如果還需要其他php模塊,可以通過下邊這個命令查看有哪些可以使用:

apt-cache search php5-

會看到

如果想查看某個包更詳細的信息:

apt-cache show package_name

目前,如果一個用戶訪問Server上的某一目錄,Apache將會首先找一個名為index.html的文件,我們修改這個設置,讓Apache首先找名為index.php的文件,首先以root身份用文本編輯器打開dir.cof文件:

sudo vim /etc/apache2/mods-enabled/dir.conf

將index.php放到前面就可以了:

<IfModule mod_dir.c>
    DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
</IfModule>

測試:

在Ubuntu中,“Web root”指向/var/www/html

新建腳本:

sudo vim /var/www/html/info.php

在文件中輸入:

<?php
phpinfo();
?>

保存。

再瀏覽器中輸入:

http://[ip_address]/info.php

如果看到如下頁面則說明安裝成功

然后就可以開始MediaWiki的配置了

 

二、准備

參考:http://blog.chinaunix.net/uid-29792372-id-4701619.html

  1. 新建wiki用戶【可選】
sudo useradd wiki -d /home/wiki -m wiki
passwd wiki

  2. 給wiki建立數據庫

登錄mysql數據庫

mysql –u root –p

新建數據庫

create database mediawiki;

將media數據庫權限賦給wiki賬號並設置密碼

grant all on mediawiki.* to wiki@localhost identified by '123456';

 

三、搭建Wiki網站

參考:https://help.ubuntu.com/community/MediaWiki

  1. 安裝MediaWiki
sudo apt-get install mediawiki

安裝其他附件【可選】,大約1G左右,時間較長

sudo apt-get install imagemagick mediawiki-math php5-gd

  2. 配置MediaWiki

sudo vi /etc/mediawiki/apache.conf

去掉注釋符號:

#Alias /mediawiki /var/lib/mediawiki

重啟apache2:

sudo service apache2 restart

  3. 設置MediaWiki

此時再瀏覽器中輸入:http://ip_address/mediawiki會提示404 Not Found,這是因為mediawiki的目錄在/var/lib/中,而apache的www路徑在/var/www/html中,所以要執行:

sudo cp -r /var/lib/mediawiki /var/www/html

然后重啟Apache 服務

sudo service apache2 restart

在瀏覽其中輸入:http://ip_address/mediawiki, 則會出現:(是不是有點污-_-)

點擊complete the installation進行設置

  4. 完成

設置完成后會生成一個LocalSettings.php,把它移動到/etc/mediawiki文件夾中,然后wiki服務器就搭建成功了。

 

個性化

1. 設置logo

  設計一個135*135的png格式的logo,假設文件名為mylogo.png,放到/usr/share/mediawiki/skins/common/images目錄下(mediawiki默認logo所在目錄下)。修改文件:

sudo vi /etc/mediawiki/LocalSettings.php

$wgLogo             = "$wgStylePath/common/images/wiki.png";

改為

$wgLogo             = "/mediawiki/skins/common/images/mylogo.png"; 

然后wiki的logo就修改為自己的logo。如下圖所示:

 2. 用戶權限設置

禁止新用戶注冊或編輯:

在LocalSettings.php中找到

修改對應的true或false值即可。

其他設置

3. 擴展上傳文件類型及大小

  • 修改大小:

  修改文件/etc/php5/apache2/php.ini中的參數:

upload_max_filesize = 20M
post_max_size = 20M
max_execution_time = 0
  • 修改文件類型

  修改DefaultSetting.php(我的在mediawikiRoot/includes/文件夾里)中屬性

$wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg', 'doc', 'docx', 'xls', 'xlsx', 'vsd', 'vsdx', 'zip','rar','tar', 'tar.gz','c','cpp','py','java','js' );

  這時候或發現py文件和js文件依然上傳不了,這是應為這些類型的文件在黑名單里,上傳這些文件會有安全問題

  • 取消文件校驗

  修改文件includes/DefaultSettings.php

$wgVerifyMimeType = false;

 

參考:https://www.mediawiki.org/wiki/Manual:Preventing_access/zh

 

常見問題

1. 上傳文件出現"Could not create directory "mwstore://local-backend/local-public/7/70"或“Could not create directory "mwstore://local-backend/local-public/d/d3”等問題

解決方法:這個問題是原因是沒有創建目錄的權限。只需要在/var/www/html/mediawiki(mediawiki項目的虛擬路徑)運行下面命令:

sudo chown -R www-data:www-data images/
sudo chmod -R 755 images/

參考:http://stackoverflow.com/questions/22303606/file-upload-error-in-mediawiki-1-22-3-could-not-create-directory-mwstore-lo

2. 發送郵件報錯“郵件發送器的返回信息:在 PHP 的 mail() 函數中的未知錯誤 ”

解決方法:這個問題的原因是服務器上沒有安裝postfix,sendmail等郵件發送服務程序。理論上安裝相應的郵件服務器程序就行了。但是還存在一個問題:即使本機能發送郵件了,但是發出去的郵件很可能被接收方當成垃圾郵件或者直接被屏蔽掉(現在大部分郵服務商都能自動屏蔽垃圾郵件)。所以這是一個麻煩而且不一定有效的解決方法。

所以推薦使用第三方smtp服務器:

在搭建mediawiki的時候,會在根目錄下生成LocalSettings.php配置文件,默認在此文件中沒有配置SMTP參數,但是我們打開 includes/DefaultSettings.php,會發現其中有一段默認被注釋掉得smtp配置:

把這段復制到LocalSettings.php文件中,取消注釋,填寫正確地smtp配置,比如:

同時,修改LocalSettings.php中的配置,確保此配置與username一致

這樣,mediawiki用第三方smtp發送郵件可以了。但是,請注意:要想此配置生效需要安裝pear 的mail包,通過下面命令查看已安裝的pear包:

list

如果沒有mail包就需要執行下面的命令安裝:

pear install MAIL Net_SMTP

如果是其他系統可以參考官方安裝文檔

安裝mail ,net_smtp包后,執行pear list結果如下:

安裝成功,重啟Apache

sudo service apache2 restart

發送郵件結果

 

參考:https://www.lichenhui.cn/archives/331

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM