codeigniter问题 - 迁移后站点重定向到localhost

时间:2011-05-23 09:04:21

标签: .htaccess codeigniter

我刚刚将CI文件从服务器复制到我的localhost,我在运行该网站时遇到了问题。

每当我点击WAMP中的站点链接时 http://localhost/CmpOnline/

它显示了与localhost

相同的文件夹列表

这是我的htaccess文件

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

并在配置文件中

$config['base_url'] = "http://localhost/CmpOnline/";

$config['index_page'] = "";

$config['uri_protocol'] = "REQUEST_URI";

我将此更改为所有其他可用选项但仍然无法正常工作

我试过这个 .htaccess and codeigniter not working 还有这个 Remove index.php From URL - Codeigniter 2

但它仍然无效。

任何帮助?

3 个答案:

答案 0 :(得分:1)

您应该有RewriteBase

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

因为RewriteRule正在将所有内容发送到RewriteBase的根目录,默认为/(CodeIgniter仍然需要base_url设置,因为它的内部内容)。

答案 1 :(得分:1)

如果

$config['uri_protocol'] = "REQUEST_URI";

将其更改为

$config['uri_protocol'] = 'PATH_INFO';

如果使用此

$config['uri_protocol'] = 'ORIG_PATH_INFO';

使用重定向或标题位置到url不在htaccess中将无法正常工作你必须在htaccess中添加url才能工作

答案 2 :(得分:0)

Options +FollowSymLinks
RewriteEngine on

# Send request via index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]