2011-01-05 143 views
0

我試圖在移動開發笨從一個主機到另一個站點。主機之間唯一的區別在於,網站所在的服務器是Windows服務器(安裝了PHP等),新服務器是Linux。網站只加載主頁

然而,當我上傳的網站,並改變了所有的URL引用,該網站只加載主頁。

新網站的地址是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,涉及到URL中的線路有:

$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/'; 
    } 
} 

任何想法,將不勝感激。謝謝。

回答

3

您可能需要更改$配置[「uri_protocol」]圍繞得到它的工作在實時網站。這通常是CodeIgniter中「僅限主頁」路由問題的原因。

最常見的是REQUEST_URI但有時PATH_INFO效果更好。

+0

感謝菲爾。從來沒有遇到過,但工作的一種享受。 – 2011-01-05 11:31:52

+0

你太棒了!在我找到這個解決方案之前,將我的腦袋砸了近4個小時。謝謝 – 2016-11-09 18:53:26