开发者

Zend Server CE Apache mod_rewrite REQUEST_FILENAME SCRIPT_FILENAME Problem

there! I use this .htaccess file in a project:

开发者_运维知识库
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

It works well in Apache 2.2

Recently I started to use Zend Server CE , the ReWrite Rule didn't work ! And this works:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

This is what Apache's document say:

The variables SCRIPT_FILENAME and REQUEST_FILENAME contain the same value - the value of the filename field of the internal request_rec structure of the Apache server. The first name is the commonly known CGI variable name while the second is the appropriate counterpart of REQUEST_URI (which contains the value of the uri field of request_rec).

Anyone can figure out why? Appreciate!


Sorry,EveryOne! I made a mistake, this will work:

   `RewriteEngine On`
   `RewriteCond %{SCRIPT_FILENAME} !-f`
   `RewriteCond %{SCRIPT_FILENAME} !-d`
   `RewriteRule ^(.*)$ /index.php  [L]`

It appears that FastCGI process url like index.php/anything_here as a true url , not index.php with pathinfo.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜