Codeigniter может только получить доступ к диспетчеру маршрута по умолчанию

Я подозреваю, что это может быть webserver изменением конфигурации, которое произошло, и мой поставщик услуг хостинга не сказал никому, но так или иначе...

Мне настраивали случай Codeigniter со следующей структурой каталогов:

/root
   /codeigniter
        /app
        /sys
   /www
        /sandbox
            /ci
                /js
                /css
                /img
                .htaccess
                index.php

Поэтому в index.php, у меня есть следующие переменные:

$application_folder = '../../../codeigniter/app';
$system_path = '../../../codeigniter/sys';

Это относительные определения из-за него являющийся общим поставщиком услуг хостинга, однако это, действительно кажется, прокладывает себе путь так, я не думаю, что это - проблема (в WAMP, мне определили те пути к папкам явно, например, c:/wamp/ci/application),

В config.php мне установили следующие переменные:

$config['base_url'] = 'http://******.co.uk/sandbox/ci/';
...
$config['index_page'] = '';
...
$config['uri_protocol'] = 'AUTO';

и мой .htaccess файл в www/sandbox/ci установлен как так:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]

Вплоть до несколько дней назад, это все хорошо работало, однако, я заменил справедливое небольшое количество файлы непосредственно перед Рождеством и, возможно, случайно переписал что-то, не понимая его. Эта установка хорошо работает на моем сервере WAMP, но терпит неудачу на моем живом сервере, Если я пытаюсь получить доступ к какой-либо функции в каком-либо диспетчере, который не является тем, определенным в routes.php.

Мой routes.php похож на это:

$route['default_controller'] = "home_controller";
$route['404_override'] = '';

home_controller кажется прекрасным, однако если я пытаюсь сделать что-то как логин (который обрабатывается через форму ПОЧТА к auth_controller/login), это терпит неудачу с 404. У меня нет дополнительных функций в home_controller.

Я не получаю ничего интересного от устанавливания регистрирующегося порога к 4, и ChromePHP просто предполагает, что это не может найти путь к диспетчерам.

mod_rewrite, кажется, работает, потому что, если я добавляю что-нибудь простой текст к .htaccess файлу, я получаю ошибку сервера 500, и кроме того index.php переписывают, работает. У меня также есть набор rewrite_short_tags к ИСТИННОМУ.

Я попробовал все типы uri_protocol в config.php, и ни один, кажется, не имеет никакого значения, таким образом, я чувствую себя подобно, является ли это что-то, что я сделал, я или пропускаю что-то от routes.php или чего-то отсутствующего в моем .htaccess.

Любые мысли ценились бы. Как я сказал, эта вся установка работы над моим сервером WAMP без проблемы.

1
nl ja de

1 ответы

Я думаю, что проблема находится в вашем htaccess. Попробуйте этот htaccess на мгновение..



RewriteEngine On

# Set the rewritebase to your CI installation folder
RewriteBase /sandbox/ci/


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

 

Я надеюсь, что это выручает вас.

3
добавлено
Вы, сэр, являетесь богом среди мужчин. Я не забываю возиться с htaccess файлом только что, таким образом, я, должно быть, переписал rewritebase в какой-то момент и скопировал его назад на мое принимающее пространство. Слова благодарности так!
добавлено автор Stephen Wright, источник
XAMPP - альтернатива WAMP для OS X. Что касается RewriteBase, могло случиться так, что мой случай WAMP был доволен им, потому что index.php существует в месте "по умолчанию", т.е. (c:/wamp/www/index.php), тогда как на моем веб-сервере, it' s 2 уровня понижаются в структуре каталогов (/var/www/sandbox/ci/index.php). Так или иначе все хорошо с моим миром снова:)
добавлено автор Stephen Wright, источник
You' приветствие ре! It' s возможный, что WAMP гибок с RewriteBase, но I' m не уверенный.. It' s давным-давно я использовал WAMP. Я надеюсь, что это прибудет когда-нибудь в Mac:)
добавлено автор Paul Oostenrijk, источник
phpGeeks
phpGeeks
3 620 участник(ов)

Best PHP chat Еще: @dbGeeks - базы данных @phpGeeksJunior - новичкам @moscowProgers - IT Москва @ebanoePhp - весёлый канал о PHP @laravel_pro - Laravel @jobGeeks - вакансии @jsChat - JS Правила: https://t.me/phpGeeks/764859 ДР - 28.03.2016

PHP
PHP
1 309 участник(ов)

Группа про современный PHP. Обсуждаем ООП, TDD, BDD, DDD, SOLID, GRASP и прочие крутые базворды Для ознакомления: https://gist.github.com/mkusher/711bd46f0b62fbae851182e6fb3b1839 Группа PHP для новичков @phpGeeksJunior Вакансии: https://t.me/fordev

PHP — вакансии, поиск работы и аналитика
PHP — вакансии, поиск работы и аналитика
1 251 участник(ов)

Публикуем вакансии и запросы на поиск работы по направлению PHP, Laravel, Symfony, Yii и т.д. Здесь всё: full-time, part-time, remote и разовые подработки. См. также: @qa_jobs, @devops_jobs, @javascript_jobs, @nodejs_jobs, @uiux_jobs, @products_jobs

phpGeeksJunior
phpGeeksJunior
980 участник(ов)

Группа для новичков. Не стесняйтесь задавать вопросы по php. Не флудить!!!! Правила и полезные ссылки https://gist.github.com/exileed/a53dd0617b35a705ff44b38c8028e6a5 Бест от пхпгикс https://t.me/best_of_phpgeeks

phpclub.ru
phpclub.ru
872 участник(ов)

Официальный чат phpclub.ru - остерегайтесь подделок #rules Правила группы - уважайте друг друга. Скриншоты -> ссылками. Код -> pastebin.com. Вакансии строго -> https://goo.gl/4bNxym, в чат ссылку. За рекламу и мат - БАН!

Devall | PHP
Devall | PHP
272 участник(ов)

Пристанище для восходящих звёзд разработки, которые перейдут на более адекватные языки. http://combot.org/chat/-1001014863761 Инвайт: j.mp/devallphp