我的实时服务器上的URL中的Index.php

时间:2012-03-29 15:30:16

标签: php codeigniter

我在我的一个项目中使用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 

可能是什么主要原因? 任何想法

谢谢

1 个答案:

答案 0 :(得分:0)

您使用的是Microsoft-IIS / 7.5服务器。 .htaccess文件用于Apache Web服务器,ASP.NET将忽略它们。

我确信IIS在其自身方面非常出色,但它可能不是PHP应用程序的最佳解决方案,我建议您为CI / PHP项目使用常规LAMP堆栈。