CodeIgniter仅显示默认控制器

时间:2016-07-26 15:30:13

标签: php .htaccess codeigniter

在本地计算机上测试网站时,一切正常,但上传后只显示默认控制器。

这是我的设置:

URL: http://devilmay88.bplaced.net/live-access/

文件夹结构:

/live-access
   /application
   /system
   /assets

的config.php:

$config['base_url'] = 'http://devilmay88.bplaced.net/live-access/';
$config['index_page'] = '';
$config['uri_protocol'] = 'QUERY_STRING';

routes.php文件:

$route['default_controller'] = 'Welcome';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;
$route['assets/(:any)'] = 'assets/$1';
$route['login'] = 'Login';

htaccess的:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /live-access   
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ /live-access/index.php?/{controller}/{method}/$1 [L]
</IfModule>

.htaccess文件位于live-access文件夹中,因为我在测试其他内容时遇到错误,所以它似乎被解释了。当我更改uri_protocol时,我得到的是404.而codeIgniter版本是3.0.6。

有人看到这里有什么问题吗?

我刚刚发现uri_string()返回一个空字符串(也是迄今为止建议的.htaccess更改)。

1 个答案:

答案 0 :(得分:0)

为你的htaccess尝试更简单的事情,比如

RewriteEngine On
RewriteRule ^(application) - [F,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /live-access/index.php?/$1 [L]  

您也没有告诉我们 - 您尝试了哪些其他路线或网址?你得到了什么错误?