1

当我编辑 .htaccess 以从我的 url 中删除 index.php 时,我正在使用 CI 2.1.4(尝试使用)它不起作用。我的项目在一个子文件夹中:

http://myserver.dev/project/

我已经设置 base_url 从 $config['index_page'] = '' 中删除了 index.php 并粘贴了确切的代码形式http://ellislab.com/codeigniter/user-guide/general/urls.html

RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]

尝试了一些来自 stackoverflow.com 研究员的解决方案(一些使用 RewriteBase),但是,它不起作用。我该如何解决?

4

1 回答 1

2

我不认为这是因为.htaccess,这对我有用,也不是因为子文件夹。

这是我正在使用的 .htaccess 示例:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^/(index\.php|assets/|humans\.txt)
RewriteRule ^(.*)$ index.php/$1 [L]

在 base_url 或 this 中设置正确的 url:

$config['base_url']     = 'http' . ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') ? 's' : '')
                  .'://'.$_SERVER['HTTP_HOST'].str_replace('//','/',dirname($_SERVER['SCRIPT_NAME']).'/');

显然:

$config['index_page'] = '';

有了这个,它对我有用......

于 2013-07-29T00:28:17.200 回答