我在我的一个项目中使用codeigniter我解决了从本地URLS中删除index.php的问题,但昨天我在登台服务器上配置了我的代码我在登台服务器上启用了apache中的rewite mod。配置文件和.htaccess与我用于本地计算机的文件相同。但我仍然遇到URl
中的index.php问题我的config.php
$config['base_url'] = '';
$config['index_page'] = '';
$config['uri_protocol'] = 'AUTO';
$config['url_suffix'] = '';
我的数据库文件
$active_group = 'default';
$active_record = TRUE;
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'username';
$db['default']['password'] = 'password';
$db['default']['database'] = 'database';
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
我的.htaccess文件
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /mediabox
RewriteCond $1 !^(index\.php|css|images|js|robots\.txt)
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
RewriteCond %{REQUEST_URI} ^application.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>
<IfModule !mod_rewrite.c>
ErrorDocument 404 /index.php
</IfModule>
我的登台服务器的网址是
http://stage.carrier.com/home/box/12
当我尝试使用上面的url打开它时会给出404错误
但是当我尝试使用此网址打开时,它会打开
http://stage.carrier.com/index.php/home/box/12
可能是什么主要原因? 任何想法
谢谢
答案 0 :(得分:0)
您使用的是Microsoft-IIS / 7.5服务器。 .htaccess
文件用于Apache Web服务器,ASP.NET将忽略它们。
我确信IIS在其自身方面非常出色,但它可能不是PHP应用程序的最佳解决方案,我建议您为CI / PHP项目使用常规LAMP堆栈。