Codeigniter работает на одном сервере, но не на другом сервере

Я разработал веб-приложение с использованием codeigniter. В моем локальном хосте это работает правильно. Но пока я размещаю его на живом сервере (общий сервер), он не работает.
Я получаю домашнюю страницу при вызове основного URL на работающем сервере, но любой URL через контроллер не работает

При звонке по URLhttp://my_domain.in/pages/second_page«получить следующую ошибку

The requested URL /my_domain.in/my_domain.in/index.php/pages/second_page was not found on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
Apache Server at my_domain.in Port 80

Я заметил в URL-адресе строки ошибки, что мое доменное имя повторяется, но на реальном URL-адресе это не так, и index.php также найден. Поэтому я много раз менял коды .htaccess, чтобы решить эту проблему. В этот раз URL-адрес сообщения об ошибке изменяется, но успешный результат не был получен.

Наконец я разместил его на сервере моего друга. тогда он работает как мой локальный хост. Подскажите, пожалуйста, в чем будет проблема моего сервера? Есть ли что-то, чтобы включить или отключить при использовании codeigniter на этом сервере? Платформа codeigniter никогда не используется на этом сервере.

0

Решение

Для получения лучшего ответа необходимо указать имя хостинг-провайдера. Вы можете попробовать с помощью следующего .htaccess.

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index.php?/$1
0

Другие решения

Похоже, вы прячете index.php, но ошибка упоминает об этом
==> /my_domain.in/my_domain.in/index.php/ pages / second_page не был найден

Вы тоже удалили его на странице конфигурации?
\ Config \ config.php

убедитесь, что $ config [‘index_page’] = »;
и добавьте файл .htaccess с этими строками


RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php/$0 [PT,L]

У меня была эта проблема при тестировании на машинах с Windows и Linux, и я настроил config.php следующим образом.



if (file_exists(FCPATH.'.htaccess')) {
$config['index_page'] = '';
}
else {
$config['index_page'] = 'index.php';
}

Первый тест без файла .htacsess
Если все прошло хорошо, поместите файл .htaccess в корень и попробуйте снова.

Если вы по-прежнему получаете эту ошибку, посмотрите на ссылки, которые вы закодировали, и посмотрите, упоминается ли в нем index.php.

0