CodeIgniter:删除WAMP上URL中的“index.php”

时间:2011-08-16 19:58:07

标签: php codeigniter mod-rewrite wamp wampserver

在CodeIgniter中,我想在我的localhost(WAMP)上删除URL中的“index.php”。例如,http://localhost.com/ci/index.php/controller/functionhttp://localhost.com/ci/controller/function

我已经改变了

$config['index_page'] = 'index.php'; to $config['index_page'] = '';

我的.htaccess文件(位于根目录中,index.php所在的位置)如下:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /igniter

#Removes access to the system folder by users.
#Additionally this will allow you to create a System.php controller,
#previously this would not have been possible.
#‘system’ can be replaced if you have renamed your system folder.
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php/$1 [L]

#Checks to see if the user is attempting to access a valid file,
#such as an image or css document, if this isn’t true it sends the
#request to index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
#This last condition enables access to the images and css folders, and the robots.txt file
#Submitted by Michael Radlmaier (mradlmaier)
RewriteCond $1 !^(index\.php|images|robots\.txt|css)
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>

<IfModule !mod_rewrite.c>
# If we don’t have mod_rewrite installed, all 404’s
# can be sent to index.php, and everything works as normal.
# Submitted by: ElliotHaughin

ErrorDocument 404 /index.php
</IfModule>

我也进入了httpd.conf文件并取消注释LoadModule rewrite_module modules/mod_rewrite.so

最后,httpd.conf文件中的目录部分看起来像这样..

<Directory />
    Options FollowSymLinks
    AllowOverride All
    Order deny,allow
    Deny from all
</Directory>

我仍然无法让它工作..该页面显示:“在此服务器上找不到请求的URL / db / site。”

非常感谢任何帮助,谢谢!

1 个答案:

答案 0 :(得分:5)

尝试:

RewriteBase /

更改目录