安裝 FAQ
From LimeSurvey Manual
目錄:
在您的電腦上安裝
LimeSurvey 可以透過 MAMP/XAMPP 或任何其他系統安裝在您的電腦上。請注意,您的電腦並不是網頁伺服器,其他使用者無法透過網路存取。
若要讓其他使用者能透過網路存取您的問卷,您需要:
- 擁有伺服器或向主機供應商租用網頁空間
- 或尋找專門支援 LimeSurvey 的主機供應商
開始安裝
如何透過命令列在 MySQL 中建立資料庫和使用者?
您必須在 MySQL 中輸入以下命令:
create database <your_database_name>;
create user <your_database_username>;
create user <your_database_username>@localhost;
set password for <your_database_username> = PASSWORD('<your_database_password>');
set password for <your_database_username>@localhost = PASSWORD('<your_database_password>');
grant all on <your_database_name>.* to '<your_database_username>';
grant all on <your_database_name>.* to '<your_database_username>'@'localhost';
在終端機中,<your_database_name>、<your_database_username> 和 <your_database_password> 必須替換為相應或所需的值。
我應該設定甚麼權限?
一般而言,安裝程式會先建立新的資料庫,再建立資料表結構。但是,如果您的伺服器/ISP 沒有給予您在 MySQL 中建立新資料庫的管理員權限,您就需要聯絡伺服器管理員,請他們建立所需的資料庫(或在取得必要權限後自行建立)。新建立的空白資料庫應具備適當的存取權限(即:讀取/寫入/建立)。接著,您就可以開始 LimeSurvey 安裝,安裝程式會在新建立的資料庫中建立資料表。
存取安裝頁面時出現空白頁
此問題並非發生在 LimeSurvey 安裝過程中,而是發生在 PHP 安裝上。
- 請確認您已安裝 MySQL PHP 模組(php-mysql)。
- 請確認您的 PHP 載入的是您所修改的 PHP.ini 檔案,而不是系統上的其他 PHP.INI 檔案。
- 請確認 PHP.ini 中以下設定的位置和權限:
upload_tmp_dir="/temp"
session.save_path="/temp"
- 請確認您的伺服器執行的是合適的 PHP版本。
因資源不存在而出現的錯誤訊息
有時檔案未能正確上傳,或在上傳過程中損毀,這會導致多種不同的錯誤訊息。大多數錯誤訊息都是指找不到某個檔案或檔案中的某個函式。
解決方法:請使用 FTP 程式的二進位模式重新上傳所有檔案。
需求頁面
什麼是 mbstring(Multibyte String Functions)函式庫?
mbstring 函式庫是一個 PHP 函式庫,可將字元集由一種語言轉換為另一種語言。若要執行 LimeSurvey,您需要此函式庫。若要檢查是否已安裝,請使用網頁瀏覽器開啟以下網址:
http://<your_server>/<your_limesurvey_directory>/admin/install/phpinfo.php
畫面會顯示大量資訊。請在設定區段中搜尋字串 'mbstring'。如果您找到 mbstring 區段,表示一切正常,您可以繼續進行 LimeSurvey 安裝!
如果您找不到 mbstring 區段,可能就有問題需要處理。有以下三種可能情況:
- 如果是主機供應商的伺服器,請要求他們在 PHP 中啟用該擴充功能,或詢問如何啟用的詳細資訊——如果您的伺服器有完善的管理面板,您或許可以自行啟用
- 如果是您自己的 Linux 伺服器,您可能需要重新編譯 PHP 並包含 mbstring 函式庫。請向 Linux 專家詢問如何操作。不過,您也可以使用 Linux 套件管理員來安裝,現今幾乎所有 Linux 發行版都有提供
- 如果您使用的 Linux 版本支援 'yum'(CentOS、RedHat、Fedora)...
- ...請使用終端機(以超級使用者身分)輸入:yum install php-mbstring
- ...請務必更新 /etc/php.ini,並取消註解各項 mbstring 參數
- ...安裝後請務必重新啟動 apache:/etc/init.d/httpd restart
- 如果您使用的 Linux 版本支援 'yum'(CentOS、RedHat、Fedora)...
- 如果是您自己的 Windows 伺服器,請在系統中搜尋 php.ini,使用編輯器開啟,並搜尋 mbstring。包含該字串的那一行很可能被分號註解掉了。請移除分號,儲存並重新啟動您的網頁伺服器
卡在檢查檔案系統權限
如果已啟用 SELinux(主要出現在 CentOS),即使目錄清單為空,您也可能會收到檔案系統權限不正確的錯誤。即使權限設定為 777 或 755,SELinux 仍會阻止寫入。若要為您的伺服器正確設定 SELinux,請參閱 SELinux 文件。
資料庫建立之後
資料庫建立後出現空白頁
症狀
- LimeSurvey 已正確安裝且資料庫已建立,但您看到的不是管理頁面,而是空白頁
- 網頁伺服器日誌顯示 "Fatal error: Call to a member function on a non-object in /path/to/limesurvey/admin/login_check.php on line 69"
解決方法
這可能與 config.php 中 $rooturl 或 $rootdir 的設定不正確有關。config.php 檔案會嘗試透過呼叫 dirname('''FILE''') 來正確設定 $rootdir。雖然這通常有效,但當 LimeSurvey 安裝在使用者的家目錄或 public_html 目錄,且家目錄是透過 NFS 掛載時,可能會失效。若要手動設定 $rootdir(您的 shell 或 pwd 命令可能會顯示類似 /disks/hostname/home/username/public_html/limesurvey 的路徑),請嘗試使用 /home/username/public_html/limesurvey。
存取管理頁面時,瀏覽器持續執行,最終無法顯示頁面
症狀
- LimeSurvey 已正確安裝且資料庫已建立。但是,當您存取管理頁面時,瀏覽器持續執行,最終無法顯示頁面
- 檢查網頁伺服器存取日誌時,發現其檔案大小變得相當大(某些情況下超過 2 GB)
- 在存取日誌中,日誌被以下訊息塞滿:
解決方法
這可能是由 mbstring.func_overload 設定所造成。請在 php.ini 檔案中變更下列設定:
mbstring.func_overload = 0
存取管理頁面時,瀏覽器顯示 Fatal error: Call to a member function gT() on a non-object in login_check.php on line 76
症狀
- LimeSurvey 已正確安裝且資料庫已建立,但在重新導向至管理頁面時,瀏覽器顯示上述錯誤。
$rootdir和$rooturl已在 config.php 中正確設定。- LimeSurvey 安裝目錄的磁碟路徑名稱包含下列其中一個字元:'(',')' 或 '+'。
解決方法
請移動或重新命名 LimeSurvey 安裝目錄,使路徑名稱不包含下列任何字元:'(',')' 或 '+'。
安裝之後
若在成功安裝後遇到其他任何問題,請參閱疑難排解頁面。