zend framework MVC框架的單入口的實現方式(隨記)

無論是zf1還是zf2,爲了實現單入口方式,都借用了apache中的mod_rewriter組件,其具體結構中的實現如下:

在public文件下放置.htaccess,其內容如下:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteCond %{REQUEST_URI}::$1 ^(/.+)(.+)::\2$
RewriteRule ^(.*)$ - [E=BASE:%1]
RewriteRule ^(.*)$ %{ENV:BASE}index.php [NC,L]


利用以上規則,當請求地址的內容在public文件夾下不存在時,所有請求都被轉向到index.php文件。


例:

   當前請求URL: http://localhost/lesson1/public/a/b

   public文件夾下,並不存在a文件夾,這時利用htaccess中的規則,請求的url會被修改爲

   http://localhost/lesson1/public/index.php/a/b

  接下來通過index.php中的代碼,從而把當前的請求引導到mvc框架中。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章