2011-07-12 70 views
1

現在我使用zf v.1.10。對於部署,我必須將我的項目上傳到子目錄上的共享主機。如果域名是www.mycompany.co.id,那麼我的項目地址將是www.mycompany.co.id/myproject/。在MyProject的目錄,我把htaccess文件是這樣的:Zend框架共享主機上的子目錄

RewriteEngine on 

RewriteRule ^(.*)$ /myproject/public/$1 

RewriteCond %{REQUEST_FILENAME} -f 
RewriteRule ^.*$ - [NC,L] 
RewriteRule ^public/.*$ /myproject/public/index.php [NC,L] 

,並在公共目錄,我把htaccess文件是這樣的:

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} -s [OR] 
RewriteCond %{REQUEST_FILENAME} -l [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^.*$ - [NC,L] 
RewriteRule ^.*$ index.php [NC,L] 

這裏是我的application.ini:

[production] 
phpSettings.display_startup_errors = 1 
phpSettings.display_errors = 1 
includePaths.library = APPLICATION_PATH "/../library" 
bootstrap.path = APPLICATION_PATH "/Bootstrap.php" 
bootstrap.class = "Bootstrap" 
appnamespace = "Application" 
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers" 
resources.frontController.params.displayExceptions = 1 
resources.frontController.baseUrl = "/myproject" 
resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts" 
resources.view.doctype = "XHTML1_TRANSITIONAL" 
autoloadernamespaces.cal = "Cal_" 
autoloadernamespaces.box = "Box_" 
autoloadernamespaces.report = "Report_" 
resources.db.adapter = PDO_MYSQL 
resources.db.params.host = localhost 
resources.db.params.username = uname 
resources.db.params.password = p4ssw0rd 
resources.db.params.dbname = myprojct 

我在我的項目中實現了zend_auth和zend_acl,所以第一頁將顯示登錄表單。
問題是當我執行表單登錄時,沒有響應。
登錄表單將被定向到(操作被設置爲)「認證」控制器和「loginauth」動作。
我試圖在loginauth「action」中回顯某些內容,但它仍顯示登錄表單。
鑑於我的本地計算機(Windows)一切運行良好。
請給我意見.. 感謝

回答

0

假設你用Zend_Form:

你可能會「告訴」 Zend_Form的使用控制器的baseUrl。嘗試子類Zend_Form並重寫setAction()方法。

或者,您可以使用表單實例中的setAction()mutator。

+0

我的假設指向這裏的解決方案:http://stackoverflow.com/questions/1640738/zend-form-set-action-can-it-work-w-zend-application-built-in-subdirectory,但重新讀你的問題可能不是問題。還值得一試鏡頭;) – madflow