我正在尝试将Codeigniter中开发的网站从一个主机移动到另一个主机。主机之间的唯一区别是站点正在移动的服务器是Windows服务器(安装了PHP等),新服务器是Linux。
但是,当我上传网站并更改了所有网址引用时,网站只会加载主页。
新网站的地址为http://pioneer.xssl.net/~admin341/
有一个htaccess文件,内容如下:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
#Removes access to the system folder by users.
#Additionally this will allow you to create a System.php controller,
#previously this would not have been possible.
#'system' can be replaced if you have renamed your system folder.
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
#Checks to see if the user is attempting to access a valid file,
#such as an image or css document, if this isn't true it sends the
#request to index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
#如果我们没有安装mod_rewrite,那么所有404都是 #可以发送到index.php,一切正常。 #提交人:ElliotHaughin
ErrorDocument 404 /index.php
config.php中与网址相关的行是:
$config['base_url'] = "http://pioneer.xssl.net/~admin341/index.php/";
$config['index_page'] = "";
此外,开发人员(我的前任)编写了一个url帮助文件:
function base_url($includeIndexPHP = true)
{
if($includeIndexPHP)
{
$CI =& get_instance();
return $CI->config->slash_item('base_url');
}
else
{
return 'http://pioneer.xssl.net/~admin341/';
}
}
任何想法都将不胜感激。感谢。
答案 0 :(得分:3)
您可能需要更改$ config ['uri_protocol']以使其在您的实际网站上运行。这通常是CodeIgniter中“仅限主页”路由问题的原因。
最常见的是REQUEST_URI,但有时PATH_INFO效果更好。