[英]testlink installation failed: checking if /var/testlink/logs/ directory exists
今天,我安裝了testlink。 在我選擇“新安裝”並選擇“我同意”選項后,它在第二步失敗了。 失敗的消息如下:
讀/寫權限
出於安全原因,我們建議在以下消息中標記為 [S] 的目錄將從瀏覽器變為 UNREACHEABLE
檢查 C:\\xampp\\htdocs\\testlink\\gui\\templates_c 目錄是否存在 OK
檢查 C:\\xampp\\htdocs\\testlink\\gui\\templates_c 目錄是否可寫(由用戶用來運行網絡服務器進程) OK
檢查 /var/testlink/logs/ 目錄是否存在 [S]失敗!
檢查 /var/testlink/upload_area/ 目錄是否存在 [S]失敗!
那么,有人可以幫我嗎? 非常感謝!
在C:\\xampp\\htdocs\\testlink\\config.inc.php
文件中,更改
$g_repositoryPath = 'C:\xampp\htdocs\testlink\upload_area';
$tlCfg->log_path = 'C:\xampp\htdocs\testlink\logs';
為我工作,確保最后沒有斜線。
即,確保它不是:
$g_repositoryPath = 'C:\xampp\htdocs\testlink\upload_area\';
$tlCfg->log_path = 'C:\xampp\htdocs\testlink\logs\';
如果您在其他目錄中安裝了 XAMPP 或 testlink,請相應地更改上面的路徑。
轉到 config.inc.php 和日志目錄 ( $tlCfg->log_path
) 編輯C:\\xampp\\testlink\\logs
的路徑並將目錄 ( $g_repositoryPath
) 上傳到C:\\xampp\\testlink\\upload_area
在某些情況下,您會這樣做:
轉到C:\\xampp\\htdocs\\testlink\\config.inc.php1
和日志目錄( $tlCfg->log_path )編輯路徑到C:\\xampp\\htdocs\\testlink\\logs
並將目錄( $g_repositoryPath )上傳到C:\\xampp\\htdocs\\testlink\\upload_area
然后你有:
$g_repositoryPath = 'C:\xampp\htdocs\testlink\upload_area';
$tlCfg->log_path = 'C:\xampp\htdocs\testlink\logs';
Ubuntu 12.04 - 你所要做的就是chmod 777
這些目錄,失敗將成為通過。
~$ cd into /var/www/testlink
~$ sudo chmod 777 ./gui/templates_c/
~$ sudo chmod 777 ./upload_area/
~$ sudo chmod 777 ./logs/
無論說明說什么都是完全BS。 使瀏覽器無法訪問這些目錄是可選的,這造成了混亂。 如果您chmod 777
它們,您的失敗將變成通過,現在您將能夠繼續執行 testlink 安裝的第 3 步。 使用 testlink 版本 1.9.5 進行測試。
我的路徑設置正確,用戶、組和訪問權限設置正確,但仍然無法擺脫問題。 我花了很長時間才找到根本原因,問題在於由於 SELinux 政策,at-http 守護程序無法訪問相關文件。 如此簡單的 chown,chmod 無濟於事(組和用戶訪問)。 對於 testlink 1.16,我通過使用 sudo 用戶重新安裝來解決它,但是對於升級,即使使用 sudo 用戶也再次出現問題。
並通過執行以下命令解決了問題,我希望這會有所幫助。 (注意:您可能需要修改屬性才能成功運行它)
$chcon -t httpd_sys_content_rw_t "<path_to_testlink_folder>/gui/templates_c/"
$chcon -t httpd_sys_content_rw_t "/<path_to_testlink_folder>/upload_area/"
$chcon -t httpd_sys_content_rw_t "<path_to_testlink_folder>/logs"
$semanage fcontext -a -t httpd_sys_content_rw_t "<path_to_testlink_folder>(/.*)?"
$restorecon -R -v path_to_testlink_folder
在 Linux 上; 確保路徑如下:
$tlCfg->log_path $g_repositoryPath
是
/var/www/html/testlink/logs/ /var/www/html/testlink/upload_area/
對於Mac OS 用戶,請在 1.9.19 版本中嘗試此操作:
請確保您的文件夾名稱。
在 config.inc.php 文件中:
$tlCfg->log_path = TL_ABS_PATH 。 '日志' 。 目錄_分隔符;
$g_repositoryPath = TL_ABS_PATH 。 '上傳_區域' 。 目錄_分隔符;
在此之后,如果您獲得讀寫權限問題失敗。
轉到 testlink -> 日志/upload_area -> 按 Command + I -> 在權限中啟用對所有人的讀寫。
適用於 ubuntu 16.04 LTS 添加權限
改變:
$g_repositoryPath = 'var/www/html/testlink/upload_area'; //linux user
$tlCfg->log_path = 'var/www/html/testlink/logs';
~$ cd into /var/www/testlink
~$ sudo chmod 777 ./gui/templates_c/
~$ sudo chmod 777 ./upload_area/
~$ sudo chmod 777 ./logs/
在 CentOS 中轉到/var/www/html/testlink-code-1.9.16
並編輯文件custom_config.inc.php
替換這兩行// $tlCfg->log_path = '/var/testlink-ga-testlink-code/logs/'; /* unix example */ // $g_repositoryPath = '/var/testlink-ga-testlink-code/upload_area/'; /* unix example */
// $tlCfg->log_path = '/var/testlink-ga-testlink-code/logs/'; /* unix example */ // $g_repositoryPath = '/var/testlink-ga-testlink-code/upload_area/'; /* unix example */
與$tlCfg->log_path = '/var/www/html/testlink-code-1.9.16/logs/'; $g_repositoryPath = '/var/www/html/testlink-code-1.9.16/upload_area/';
$tlCfg->log_path = '/var/www/html/testlink-code-1.9.16/logs/'; $g_repositoryPath = '/var/www/html/testlink-code-1.9.16/upload_area/';
確保您已禁用 selinux。 如果不這樣做,請編輯文件/etc/sysconfig/selinux
並將變量SELINUX
更改為disabled
並重新啟動機器。 現在這些錯誤應該已經消失了。
在ubuntu 18.04 上,需要運行
apt-get remove apparmor
為了安裝它
解決問題:在 Centos 7 上檢查 /var/www/html/testlink-1.9.16/gui/templates_c 目錄是否可寫(用於運行 webserver 進程的用戶)。禁用 SELinux,然后重新啟動系統。 您不應再收到此錯誤消息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.