WIKI使用導(dǎo)航
站長(zhǎng)百科導(dǎo)航
站長(zhǎng)專(zhuān)題
- 網(wǎng)站推廣
- 網(wǎng)站程序
- 網(wǎng)站賺錢(qián)
- 虛擬主機(jī)
- cPanel
- 網(wǎng)址導(dǎo)航專(zhuān)題
- 云計(jì)算
- 微博營(yíng)銷(xiāo)
- 虛擬主機(jī)管理系統(tǒng)
- 開(kāi)放平臺(tái)
- WIKI程序與應(yīng)用
- 美國(guó)十大主機(jī)
EZ Publish/EZ Publish手動(dòng)安裝
EZ Publish | EZ Publish安裝與卸載 | EZ Publish的使用 | EZ Publish常見(jiàn)問(wèn)題 | EZ Publish其他 |
手動(dòng)安裝
這種安裝方法只適用于高級(jí)用戶(hù),因?yàn)樗募夹g(shù)要求極強(qiáng),初次接觸者建議還是使用“EZ Publish正常安裝”來(lái)進(jìn)行安裝。 手動(dòng)安裝需要一個(gè)已經(jīng)安裝了WEB 服務(wù)器,數(shù)據(jù)庫(kù)等必須軟件的系統(tǒng)。需要下載并解壓eZ Publish。與安裝向?qū)Р煌械呐渲镁ㄟ^(guò)系統(tǒng)的命令行完成。
系統(tǒng)需求[ ]
eZ Publish 需要五個(gè)軟件系統(tǒng):
web 服務(wù)器
- 服務(wù)器端PHP 腳本引擎
- eZ Components 庫(kù)
- 數(shù)據(jù)庫(kù)
- 圖像處理系統(tǒng)(可選)
前四個(gè)系統(tǒng)在安裝eZ Publish 之前就必須已經(jīng)存在。圖像處理系統(tǒng)是可選的并且只有在需要eZ Publish 動(dòng)態(tài)處理圖像時(shí)才需要。web 服務(wù)器與PHP 引擎必須運(yùn)行在同一臺(tái)服務(wù)器。數(shù)據(jù)庫(kù)可以運(yùn)行于不同的服 務(wù)器。目前,可以使用以下軟件解決方案:
web 服務(wù)器
目前,只支持Apache 服務(wù)器。在Linux/UNIX 系統(tǒng),推薦使用最新的2.x 版本,但是Apache 必須運(yùn)行 于"prefock"模式,而不是"threaded"模式。因?yàn)槟承㏄HP 庫(kù)或擴(kuò)展不是線(xiàn)程安全的。
在windows 平臺(tái),建議使用最新的1.3 版本。(Apache2.x 在Windows 平臺(tái)只支持"threaded"模式) Apache 是一款自由,開(kāi)源的軟件,它是最廣泛使用的web 服務(wù)器??梢詮?a target="_blank" rel="nofollow noreferrer noopener" class="external text" >阿帕奇官網(wǎng) 下載。
- 服務(wù)器端的PHP 腳本引擎
eZ Publish 主要使用PHP 腳本語(yǔ)言,PHP(hypertext preprocessor)服務(wù)器端引擎是必須的。確保已安裝 PHP5.1.6 以上版本。建議使用最新的5.x 版本,因?yàn)閑Z Publish 在更新的PHP 版本上運(yùn)行得更快, 而且某些擴(kuò)展(如:eZ Flow)需要PHP5.2 以上的版本。確保您的PHP 版本符合所有軟件模塊的需求。 PHP 是自由軟件??梢詮?a target="_blank" rel="nofollow noreferrer noopener" class="external text" >PHP官網(wǎng) 下載。
下表列出了需要編譯的PHP 模塊。
模塊名稱(chēng) | 簡(jiǎn)介 |
MySQLi(建議使用)或MySQL | 需要,如果使用MySQL 數(shù)據(jù)庫(kù) |
PostgreSQL | 需要,如果您使用PostgreSQL 數(shù)據(jù)庫(kù) |
Zlib | 需要 |
DOM | 需要 |
Session | 需要 |
PCRE | 需要 |
GD2 | 需要,如果ImageMagick 沒(méi)有安裝 |
CLI | 建議 |
CURL | 建議 |
mbstring | 建議 |
Exif | 建議 |
確保PHP 支持zlib,否則安裝向?qū)o(wú)法解壓下載的軟件包。
大多數(shù)情況下,PHP 支持DOM,因?yàn)镻HP 內(nèi)核已經(jīng)包含了對(duì)DOM的支持。但是,某些Linux 發(fā)行版本的PHP 沒(méi)有預(yù)編譯對(duì)DOM的支持,需要安裝一個(gè)稱(chēng)為"php-xml"的RPM包。這個(gè)RPM包會(huì)安裝一個(gè) 共享模塊來(lái)支持DOM。
- PHP CLI
建議安裝PHP CLI,否則您將無(wú)法使用某些系統(tǒng)特性如:通知,延遲的檢索索引,升級(jí)腳本,協(xié)作系統(tǒng),從命令行清除緩存,等等。
建議支持CURL,否則將無(wú)法使用某些系統(tǒng)特性如:通過(guò)代理服務(wù)器連接,eZSoap 的SSL 支持。
- PHP 內(nèi)存限制
eZ Publish 的安裝向?qū)е辽傩枰?4MB 的內(nèi)存。如果使用的是PHP5.2.0 或更早的版本,需要在"php.ini"中增加"memory_limit"的值。(修改之后,需要重啟Apache 服務(wù)器)
然而,建議保留64MB 或更高的內(nèi)存限制,因?yàn)閑Z Publish 在運(yùn)信某些任務(wù)(如:重建索引,執(zhí)行升級(jí)腳本等)時(shí)會(huì)消耗很多內(nèi)存。另外,多語(yǔ)言的站點(diǎn)也需要至少64MB 內(nèi)存。
如果使用的是PHP5.2.1 或更新的版本,不需要修改"memory_limit"(系統(tǒng)默認(rèn)值為128MB)。
- PHP 時(shí)區(qū)
需要在"php.ini"中設(shè)置"date.timezone"。如果不指定時(shí)區(qū),在用PHP5 運(yùn)行eZ Publish 時(shí),很有可能收到“依賴(lài)系統(tǒng)時(shí)區(qū)并不安全”之類(lèi)的錯(cuò)誤。PHP 時(shí)區(qū)配置示例:
date.timezone = Asia/Shanghai
參考http://www.php.net/timezones 了解所有支持的時(shí)區(qū)代碼。修改后,需要重啟Apache 服務(wù)器。
- eZ Components 庫(kù)
eZ Publish 是一個(gè)應(yīng)用程序。每一個(gè)類(lèi)的定義保存在一個(gè)獨(dú)立的PHP 源文件中。eZ Publish 4用__autoload()來(lái)裝載所需要的類(lèi)。eZ Publish 安裝之后,所有eZ Publish 內(nèi)核類(lèi)文件的路徑都被包含在"autoload/ezp_kernel.php"中。除此以外,"autoload/ezp_extension.php"將用來(lái)保留擴(kuò)展中類(lèi)定義文件的路徑。這些路徑很可能需要被修改(例如:如果安裝了一個(gè)新的擴(kuò)展或通過(guò)后臺(tái)“設(shè)置-擴(kuò)展”來(lái)配置現(xiàn)有的擴(kuò)展)。需要安裝 eZ Components 2007.1.1 或更高版本來(lái)支持對(duì)autoload path 的更新。特別需要注意的是,至少需要安裝File 和Base 組件("ezcBase"與"ezcFile"),否則eZ Publish 無(wú)法更新autoload path。
eZ Components 是一套基于PHP 的企業(yè)級(jí)通用組件庫(kù),它可以單獨(dú)或與其他庫(kù)共同用于PHP 應(yīng)用程序的開(kāi)發(fā)??梢詮膆ttp://ezcomponents.org/download 下載。將來(lái),eZ Components 將與eZ Publish 綁定。參閱http://ezcomponents.org/docs/install 了解如何安裝eZ Components。
數(shù)據(jù)庫(kù)
- eZ Publish 用數(shù)據(jù)庫(kù)保存多種數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)。這意味著您的數(shù)據(jù)庫(kù)必須一直可用。eZ Publish 默認(rèn)支持
以下數(shù)據(jù)庫(kù):
- MySQL4.1 以上版本,5.x(推薦)
- PostgreSQL7.3 以上版本
- 如果數(shù)據(jù)庫(kù)與安裝向?qū)н\(yùn)行于同一臺(tái)服務(wù)器,安裝向?qū)?huì)自動(dòng)檢測(cè)數(shù)據(jù)庫(kù)類(lèi)型。eZ Publish 4 需要使用UTF-8 數(shù)據(jù)庫(kù)。
- eZ Publish 4 不支持基于PostgreSQL 的集群。集群代碼針對(duì)使用InnoDB 存儲(chǔ)引擎的MySQL 數(shù)據(jù)庫(kù)性能做過(guò)專(zhuān)門(mén)的優(yōu)化。
- 如果不需要在集群環(huán)境運(yùn)行eZ Publish,雖然InnoDB 不是必須的,但是仍推薦使用。
- InnoDB 支持事務(wù),因此可以在MySQL 數(shù)據(jù)庫(kù)中使用事務(wù)安全型表(eZ Publish 默認(rèn)支持?jǐn)?shù)據(jù)庫(kù)事務(wù)。這一特性能保證數(shù)據(jù)庫(kù)的完整性不會(huì)被錯(cuò)誤或異常中斷的處理破壞)。
- 如果希望使用PostgreSQL,確保"pgcrypto"模塊已經(jīng)安裝。在Linux/UNIX 平臺(tái)中,可能需要安裝一個(gè)單獨(dú)的軟件包-"postgresql-contrib","pgcrypto"模塊提供了用于PostgreSQL 的加密函數(shù),包括"digest",后者是eZ Publish 需要的。在為eZ Publish 配置PostgreSQL 數(shù)據(jù)庫(kù)的時(shí)候,需要在數(shù)據(jù)庫(kù)中注冊(cè)這些函數(shù)。
eZ Publish Oracle? 擴(kuò)展1.8 版本(http://ez.no/doc/extensions/database)將在eZ Publish 4.0.1 以上版本中支持Oracle 數(shù)據(jù)庫(kù)。注意:之前的版本不能用于eZ Publish 4。
為了縮放,變換或修改圖片,eZ Publish 需要調(diào)用圖像處理系統(tǒng)??梢赃x擇使用以下系統(tǒng)中的一種(均為自由軟件):
- GD2 (由PHP 提供)
- ImageMagick (http://www.imagemagick.org)
Linux/UNIX 安裝[ ]
確保系統(tǒng)滿(mǎn)足手動(dòng)安裝的系統(tǒng)需求。確保系統(tǒng)運(yùn)行于Linux/UNIX,并且已經(jīng)安裝Apache,PHP,MySQL 或PostgreSQL。如前所述,數(shù)據(jù)庫(kù)可與WEB 服務(wù)器運(yùn)行于不同服務(wù)器。手動(dòng)安裝需要以下幾個(gè)步驟:
- 配置數(shù)據(jù)庫(kù)(MySQL 或PostgreSQL)
- 下載eZ Publish
- 解縮eZ Publish
- 手動(dòng)配置eZ Publish
手動(dòng)安裝與正常安裝的不同只在于最后一步。手動(dòng)安裝通過(guò)手動(dòng)配置若干文件來(lái)配置eZ Publish,而不啟動(dòng)安裝向?qū)?。不同之處在手?dòng)配置一節(jié)中描述。
Windows 安裝[ ]
確保系統(tǒng)滿(mǎn)足手動(dòng)安裝的系統(tǒng)需求。確保系統(tǒng)運(yùn)行于Windows,并且已經(jīng)安裝Apache,PHP,MySQL 或PostgreSQL。如前所述,數(shù)據(jù)庫(kù)可與WEB 服務(wù)器運(yùn)行于不同服務(wù)器。
手動(dòng)安裝需要以下幾個(gè)步驟:
- 配置數(shù)據(jù)庫(kù)(MySQL 或PostgreSQL)
- 下載eZ Publish
- 解縮eZ Publish
- 手動(dòng)配置eZ Publish
手動(dòng)安裝與正常安裝的不同只在于最后一步。手動(dòng)安裝通過(guò)手動(dòng)配置若干文件來(lái)配置eZ Publish,而不啟動(dòng)安裝向?qū)А2煌幵谑謩?dòng)配置一節(jié)中描述。
手動(dòng)配置[ ]
以下步驟適用于Linux/UNIX 與Windows。
1、初始化數(shù)據(jù)庫(kù)
2、可以通過(guò)導(dǎo)入兩個(gè)重要的SQL 腳本("kernel_schema"和"cleandata")來(lái)初始化eZ Publish 數(shù)據(jù)庫(kù)。
注意:運(yùn)行這兩個(gè)腳本之前,需要?jiǎng)?chuàng)建一個(gè)空數(shù)據(jù)庫(kù)
3、第一個(gè)腳本創(chuàng)建必要的數(shù)據(jù)庫(kù)結(jié)構(gòu),第二個(gè)腳本導(dǎo)入預(yù)定義的數(shù)據(jù)。
4、使用哪一個(gè)"kernel_schema"腳本取決于使用的數(shù)據(jù)庫(kù)。"cleandata"腳本適用于 MySQL與PostgreSQL 數(shù)據(jù)庫(kù)。
MySQL
用以下命令行執(zhí)行MySQL 的"kernel_schema"腳本:
$ mysql -u USERNAME -pPASSWORD DATABASE < PATH/kernel/sql/mysql/kernel_schema.sql
這個(gè)腳本將使用InnoDB 存儲(chǔ)引擎創(chuàng)建數(shù)據(jù)表。確保數(shù)據(jù)庫(kù)的默認(rèn)存儲(chǔ)引擎也被設(shè)置為InnoDB,否則將來(lái)的系統(tǒng)升級(jí)將會(huì)造成混合的表類(lèi)型。
使用以下腳本運(yùn)行通用的"cleandata“腳本:
$ mysql -u USERNAME -pPASSWORD DATABASE < PATH/kernel/sql/common/cleandata.sql
USERNAME | MySQL 用戶(hù)名 |
PASSWORD | MySQL 密碼 |
DATABASE | 數(shù)據(jù)庫(kù)名 |
PATH | eZ Publish 的安裝的絕對(duì)路徑 例:/opt/ezp |
文件權(quán)限
Windows 用戶(hù)可以跳過(guò)這一步。如果eZ Publish 安裝于Linux/UNIX 系統(tǒng),某些文件的權(quán)限需要重新設(shè)置。
可以使用eZ Publish 自帶的腳本來(lái)設(shè)置文件權(quán)限。這個(gè)腳本必須被執(zhí)行,否則eZ Publish 無(wú)法正常運(yùn)行。
這個(gè)腳本需要在eZ Publish 的安裝目錄中運(yùn)行。
$ cd /opt/ezp $ bin/modfix.sh
把"/opt/ezp"替換為您eZ Publish 安裝目錄的絕對(duì)路徑。
"modifx"腳本遞歸地修改eZ Publish 安裝目錄中以下目錄的權(quán)限:
var/* settings/* design/*
如果知道WEB 服務(wù)器的用戶(hù)與用戶(hù)組,建議使用以下的權(quán)限: <pew>
- chown -R user.usergroup var/
- chmod -R 770 var/
"user.usergroup"必須被替換為WEB 服務(wù)器的用戶(hù)與用戶(hù)組。
配置eZ Publish
eZ Publish 目錄中的"settings/override/site.ini.append.php"必須被修改,否則eZ Publish 不能正常運(yùn)行。這個(gè)文件是site.ini 文件的一個(gè)全局的重設(shè)文件。這個(gè)文件中有很多選項(xiàng)需要配置(數(shù)據(jù)庫(kù),郵件發(fā)送系統(tǒng),var 目錄等等)。以下是一個(gè)通用的site.ini.append.php 示例:
<?php /* #?ini charset="iso-8859-1"? [DatabaseSettings] DatabaseImplementation=ezmysql Server=localhost User=root Password=Database=my_database [FileSettings] VarDir=var/example [Session] SessionNameHandler=custom [SiteSettings] DefaultAccess=example SiteList[] SiteList[]=example [SiteAccessSettings] CheckValidity=false AvailableSiteAccessList[] AvailableSiteAccessList[]=example AvailableSiteAccessList[]=example_admin RelatedSiteAccessList[] RelatedSiteAccessList[]=example RelatedSiteAccessList[]=example_admin MatchOrder=host;uri # Host matching HostMatchMapItems[]=www.example.com;example HostMatchMapItems[]=admin.example.com;example_admin [InformationCollectionSettings] EmailReceiver=webmaster@example.com [MailSettings] Transport=sendmail AdminEmail=webmaster@example.com EmailSender=test@example.com [RegionalSettings] Locale=eng-GBContentObject Locale=eng-GBText Translation=disabled */ ?>
在上例中,"[SiteAccessSettings]"章節(jié)中的"AvailableSiteAccessList[]"數(shù)組定義了兩個(gè)可用的站點(diǎn)入口:"example" 和"example_admin"。"CheckValidity"應(yīng)設(shè)置為false,否則訪(fǎng)問(wèn)這個(gè)站點(diǎn)時(shí)安裝向?qū)?huì)被觸發(fā)。
除此以外,還需創(chuàng)建兩個(gè)站點(diǎn)入口的配置文件。一個(gè)公共站點(diǎn)入口("example"),一個(gè)管理站點(diǎn)入口("examle_admin")。在eZ Publish 根目錄下創(chuàng)建以下站點(diǎn)入口目錄:
? settings/siteaccess/example
? settings/siteaccess/example_admin
兩個(gè)站點(diǎn)入口都需要一個(gè)獨(dú)立的"site.ini.append.php"文件。
公共站點(diǎn)入口
<?php /* #?ini charset="iso-8859-1"? [SiteSettings] SiteName=Example SiteURL=www.example.com LoginPage=embedded [SiteAccessSettings] RequireUserLogin=false ShowHiddenNodes=false [DesignSettings] SiteDesign=example [ContentSettings] ViewCaching=disabled [TemplateSettings] TemplateCache=disabled TemplateCompile=disabled #ShowXHTMLCode=enabled #Debug=enabled [DebugSettings] DebugOutput=enabled Debug=inline #DebugRedirection=enabled [RegionalSettings] SiteLanguageList[] SiteLanguageList[]=eng-GB ShowUntranslatedObjects=disabled */ ?>
管理站點(diǎn)入口
<?php /* #?ini charset="iso-8859-1"? [SiteSettings] SiteName=Example SiteURL=admin.example.com LoginPage=custom [SiteAccessSettings] RequireUserLogin=true ShowHiddenNodes=true [DesignSettings] SiteDesign=admin [ContentSettings] CachedViewPreferences[full]=admin_navigation_content=0;admin_navigation_details=0;admin_navi gation_languages=0;admin_navigation_locations= 0;admin_navigation_relations=0;admin_navigation_roles=0;admin_navigation_policies=0;admin_na vigation_content=0;admin_navigation_translatio ns=0;admin_children_viewmode=list;admin_list_limit=1;admin_edit_show_locations=0;admin_url_l ist_limit=10;admin_url_view_limit=10;admin_sec tion_list_limit=1;admin_orderlist_sortfield=user_name;admin_orderlist_sortorder=desc;admin_s earch_stats_limit=1;admin_treemenu=1;admin_boo kmarkmenu=1;admin_left_menu_width=13 [DebugSettings] DebugOutput=disabled Debug=inline [RegionalSettings] SiteLanguageList[] SiteLanguageList[]=eng-GB ShowUntranslatedObjects=enabled */ ?>
注意: 在"settings/override/site.ini.append.php"中定義的數(shù)據(jù)庫(kù)配置,郵件配置,區(qū)域配置與其它配置適用于所 有的站點(diǎn)入口。在本例中,"Database=my_database"在這個(gè)文件中的"[DatabaseSettings]“定義,因 此"example"與"example_admin"均會(huì)使用這個(gè)數(shù)據(jù)庫(kù)。參閱“基本概念”中的“站點(diǎn)管理”與“配置” 兩個(gè)章節(jié)了解更多內(nèi)容。
Unicode 支持
不需要重設(shè)"i18n.ini"文件,因?yàn)閑Z Publish 4 默認(rèn)啟用對(duì)unicode 的支持。
語(yǔ)言
可用語(yǔ)言與優(yōu)先級(jí)可以通過(guò)修改每個(gè)站點(diǎn)入口中的"site.ini.append.php"中的"[RegionalSettings]"章節(jié)中 的"SiteLanguageList"配置來(lái)定義。如果不指定,系統(tǒng)會(huì)使用舊的"ContentObjectLocale“配置,因此只有默 認(rèn)語(yǔ)言會(huì)被顯示。參閱“配置站點(diǎn)語(yǔ)言”章節(jié)了解更多內(nèi)容。
"cleandata.sql"腳本只創(chuàng)建一種英式英文(eng-GB)一種語(yǔ)言。 其它語(yǔ)言需要通過(guò)管理界面的“設(shè)置- 語(yǔ)言”來(lái)添加(在本例中:http://admin.example.com)。
動(dòng)態(tài)樹(shù)狀菜單
如果站點(diǎn)有很多節(jié)點(diǎn),建議為管理站點(diǎn)入口啟用"Dynamic"選項(xiàng)。這會(huì)使管理界面左側(cè)的樹(shù)狀 菜單速度更快并減少對(duì)網(wǎng)絡(luò)帶寬的消耗。
系統(tǒng)管理員的登錄名與密碼
"cleandata.sql"會(huì)創(chuàng)建以下的管理員登錄名與密碼。
登錄名: admin
密碼:publish
建議立即修改管理員的密碼。
注意: 如果需要另外的管理員帳號(hào),可以創(chuàng)建新的管理員帳號(hào);用新帳號(hào)登錄管理界面; 刪除舊管理員帳號(hào)。