我找不出Zend Framework如何控制路由。我其實是想創建自己的控制器/路由類,寫了相同的代碼的Zend reccomends對的.htaccess重寫到位於網站的根目錄的index.php文件:Zend如何使用mod_rewrite在前端控制器中解析URL?
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
我不線不明白是最後一個。它沒有捕獲組和$變量。在index.php中,我無法捕捉$ _GET中的任何內容,該內容爲空。它的工作的唯一辦法是:
RewriteRule ^(.*)$ index.php?uri=$1 [NC,L]
,然後分析$ _GET [「URI」],這對我來說這將是其形式爲「控制器/動作/參數1/param1value」。
但是解決這個問題並不使用'uri'變量會很好。在Zend項目中,這只是起作用。有人能解釋我Zend如何用這種重寫來解析URL嗎?
因此,$ _SERVER ['REQUEST_URI']可以在解壓縮主機部分後解析。謝謝,這表明我朝着正確的方向前進。 – talereader