Сайт разработан в Codeigniter только загружает домашнюю страницу - PullRequest
0 голосов
/ 05 января 2011

Я пытаюсь перенести сайт, разработанный в Codeigniter, с одного хоста на другой. Единственная разница между хостами заключается в том, что сервер, с которого перемещается сайт, - это сервер 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/';
    }
}

Любые идеи будут оценены. Спасибо.

1 Ответ

3 голосов
/ 05 января 2011

Возможно, вам потребуется изменить $ config ['uri_protocol'], чтобы он работал на вашем живом сайте. Это часто является причиной проблемы маршрутизации «только домашняя страница» в CodeIgniter.

Наиболее распространенным является REQUEST_URI, но иногда PATH_INFO работает лучше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...