Zoph/安裝
首先,確保您滿足上一章中的所有要求。
您可以在臨時目錄中解壓縮tarball。在本例中,我們將使用/tmp並假設您已將下載的 Zoph 版本 0.9 放入/home/user/Downloads
$ cd /tmp $ cp /home/user/Downloads/zoph-0.9.tar.gz . $ tar -xvzf zoph-0.9.tar.gz $ cd zoph-0.9
$ mysql -u root -p -e "CREATE DATABASE zoph CHARACTER SET utf8 COLLATE utf8_general_ci" $ mysql -u root -p zoph < sql/zoph.sql
我建立了兩個使用者:zoph_rw 由應用程式使用,zoph_admin 在我直接使用 mysql 時使用,因此我不必使用 root。
$ mysql -u root -p mysql> grant select, insert, update, delete on zoph.* to zoph_rw@localhost identified by 'PASSWORD';
mysql> grant all on zoph.* to zoph_admin identified by 'PASSWORD';
在 Web 伺服器的文件根目錄下建立 zoph/ 目錄,或使用新的文件根目錄建立虛擬主機。
$ mkdir /var/www/html/zoph
$ cp -r php/* /var/www/html/zoph/
為了更好的安全性,您可能需要設定 Zoph 檔案的訪問許可權。(您可能想在測試 Zoph 是否有效後執行此操作,在這種情況下,您就會知道是什麼原因導致它在更改後停止工作)
首先,您需要弄清楚 Apache 在哪個使用者下執行。通常是apache用於使用者和組。要確定這一點,請檢視httpd.conf或使用
ps -ef | grep httpd
您可能需要將所有檔案歸使用者apache和組apache所有。您可以使用
chown -R apache:apache /var/www/html/zoph
您可以選擇僅允許該使用者/組讀取(更安全):440,所有使用者都可以讀取:444,或所有使用者都可以讀取和寫入:666。最後一種情況意味著您不需要 root 許可權來編輯 config.inc.php 或對其他 php 檔案進行更改(例如升級到新版本)。請記住,授予 .php 檔案的寫入許可權實際上相當於授予對 Zoph 的控制權。如果您在系統上還有其他使用者,則應選擇第一個選項。此外,您的 mysql 密碼在/etc/zoph.ini中,因此,如果您在系統上還有其他使用者不允許知道密碼,則也應將其保護起來,使其無法讀取。目錄應具有執行許可權:550(最大安全性)或 777(所有使用者都可以訪問)。
為此,首先轉到 Zoph 目錄的上級目錄,在本例中為 /var/www/html
cd /var/www/html chmod [dir] zoph cd zoph find -type f | xargs chmod [file] find -type d | xargs chmod [dir]
用您為目錄選擇的訪問模式替換 [dir],並用檔案選擇的訪問模式替換 [file]。
仔細檢查您是否使用的是正確的目錄,以及您是否輸入正確。如果您不小心輸入了 "/[空格]var/www/html/zoph" 或類似的命令,您將更改系統上所有檔案的apache/apache所有者 - 這可不是好事)。
在許多情況下,您可以簡單地將照片目錄的訪問許可權保留為預設值。但是,如果您使用 CLI 和 Web 介面來訪問照片,您可能需要更改為更高階的訪問許可權管理方式,使用 Linux 和大多數其他 POSIX 作業系統中的setgid 功能。
- 建立新的 Unix 組(在本例中為“photo”)
groupadd photo
- 將所有使用 CLI 和/或被允許修改磁碟上照片的使用者新增到該組(在本例中,使用者名稱為“jeroen”)
useradd -g photo jeroen
- 此外,apache 使用者也被新增到該組中。在我的系統上,該使用者名稱為“apache”,但“www-data”也是經常使用的。
useradd -g photo apache
- 將照片目錄的所有權更改為您的使用者和組 photo
chown jeroen:photo /data/images
- 根據您的需要設定該目錄的許可權,例如 775(使用者和組擁有完全許可權,其他使用者擁有讀取許可權)或 770(使用者和組擁有完全許可權,其他使用者無訪問許可權)。
chmod 775 /data/images
現在在 dir 上設定“setgid”。這會導致新建立的檔案和目錄使用“photo”組。
chmod g+s /data/images
有關詳細資訊,請參閱有關配置的章節。
您需要建立一個zoph.ini檔案,通常位於/etc/zoph.ini中,用於定義資料庫設定。一個簡單的例子
[zoph] db_host = "localhost" db_name = "zoph" db_user = "zoph_rw" db_pass = "pass" db_prefix = "zoph_" php_location = /var/www/html/zoph
有關詳細資訊,請參閱zoph.ini。
嘗試訪問https:///zoph/logon.php。您應該看到登入螢幕。使用“admin”作為使用者名稱和“admin”作為密碼登入。
如果您看到 404 錯誤...
- 確保 Web 伺服器可以看到 zoph/ 資料夾和模板。
如果您看到一堆程式碼...
- 確保 Apache 已配置為處理 PHP
- Apache 配置需要包含以下內容
LoadModule php5_module /usr/lib/apache2/modules/libphp5.so AddType application/x-httpd-php .php
如果您看到 MySQL 訪問被拒絕錯誤...
- 確保您在 zoph.ini 中指定的資料庫使用者確實有權訪問資料庫。如果您的資料庫不在 localhost 上,則需要授予 zoph_rw@hostname 對該主機的許可權。