[英]Configuring a website built with the Zend framework
我正在嘗試將使用Zend PHP框架構建的網站移至新服務器,並且難以啟動和運行它。 我最初不是構建站點的,並且之前從未使用過此框架,所以這一切對我來說都很令人困惑。
我收到的錯誤消息是:
Error : Invalid controller specified (~iswlp)
Trace info : #0 /home/iswlp/library/Zend/Controller/Front.php(954):
Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http)) #1 /home/iswlp/public_html/index.php(80):
Zend_Controller_Front->dispatch() #2 {main}
我嘗試從APPLICATION_PATH目錄(/ home / iswlp / application)刪除尾部的斜杠,但這沒什么區別。
有任何想法嗎?
謝謝。
如果/Users/Tim/Sites/iswlp.com.au/
是您的項目根目錄(包含名為application
, library
等的文件夾),則應將APPLICATION_PATH
設置為: /Users/Tim/Sites/iswlp.com.au/application/
而不是/home/iswlp/application/
。
問題似乎出在路由上。
我猜您正在通過mod_userdir
例如http://somedomain.com/~iswlp/foo
訪問應用程序,這是正確的嗎?
似乎是由於錯誤導致Zend Framework退出的錯誤,因為兩種情況下您的文檔根目錄都是相同的,但是從domain.com
與anotherdomain.com/~iswlp
調用時,您的baseUrl是不同的
解決方法是,您可以嘗試在PC上修改主機文件,並在嘗試訪問該站點時查看錯誤是否消失。
嘗試這個:
1.2.3.4 domain.com
添加到hosts文件,其中1.2.3.4是服務器IP, domain.com
是假定的站點域名,因為它是在Apache / IIS / OtherServer中配置的 在這種情況下,您還會收到錯誤消息嗎?
我從未嘗試過,但是如果將ZF應用程序托管在/~username
文件夾中,則可能必須對該應用程序進行小的配置更改。
配置/路由問題-需要檢查的幾件事:
顯然,有幾種方法可以安裝Zend,但是為了安全起見,大多數人將應用程序和庫文件夾放在服務器上www / public_html文件夾之外。 實際上,這就是Zend如何解決問題(或假設如此)的方式。 因此,這里有一些片段可能會對您有所幫助,因為您的某些配置可能已更改為適合以前的主機(同樣,假設您的應用程序和庫文件是一個深度級別(即,服務器上的公共目錄之外),則為ALL):
index.php文件片段:
// Define path to application directory
if (!defined('APPLICATION_PATH')) {
define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application'));
}
// Define the application root
if (!defined('APPLICATION_ROOT')) {
define('APPLICATION_ROOT', realpath(dirname(__FILE__) . '/..'));
}
// Ensure library/ is on include_path
set_include_path(
APPLICATION_ROOT . '/library' . PATH_SEPARATOR
. get_include_path()
);
htaccess文件片段
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} \.(js|css|gif|jpg|png|swf)$ [OR]
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
如果您沒有標准的Zend安裝,則必須編輯index.php和htaccess文件以適合。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.