現在我使用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)一切運行良好。
請給我意見.. 感謝
我的假設指向這裏的解決方案:http://stackoverflow.com/questions/1640738/zend-form-set-action-can-it-work-w-zend-application-built-in-subdirectory,但重新讀你的問題可能不是問題。還值得一試鏡頭;) – madflow