How to resolve following htaccess code
<IfMod开发者_运维百科ule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
</IfModule>
can any body explain me how above htaccess rule works e.g. if I have URL http://mydomain/edituser so what php script will match with given URL
earlier I write different rules for each given URL but in above case how I know that witch php script get run please help me
That rewrite rule matches any request that does not match an existing file, and routes the request to to index.php using PATH_INFO
Translation of the above code is like that:
RewriteEngine On
: Activate the RewriteEngine if not already activated
RewriteCond %{REQUEST_FILENAME} !-f
: If the requested file name is not a regular file
RewriteCond %{REQUEST_FILENAME} !-d
: If the requested file name is not a regular directory
RewriteCond $1 !^(index\.php|images|robots\.txt)
: If the request is not the index.php, the images or robots.txt file
RewriteRule ^(.*)$ /index.php/$1 [L]
: Send the request to index.php and stop ([L])
This looks as a part from WordPress. If the file doesn't exists (-f)
and a directory also not exists (-d)
and the request is not for index.php
or images
or robots.txt
when call index.php
with the path as a parameter.
精彩评论