2013-09-25 5 views
1

Я знаю, что этот вопрос уже может быть предложены тысячи раз прежде, я посмотрел на большинстве из них и не мог исправить для моего случая: sCodeigniter Нет входной файл не указан

Я устанавливали рамки CodeIgniter на GoDaddy хостинга компания и я читал, что я должен создать файл .htacces и поместить этот код в:

<IfModule mod_rewrite.c> 
Options +FollowSymLinks 
RewriteEngine on 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php?/$1 [QSA,L] 
</IfModule> 

Но это не исправить для моего случая, это, что у меня есть этот сайт, размещаемый под другим доменом? напр структура моего FTP выглядит следующим образом: / facelajm Studenti fxclod

и я пытаюсь получить сайт следующий URL-адрес www.facelajm.com/studenti, который открывается главная страница отлично, но когда я пытаюсь войти или зарегистрировать его, просто возвращает меня. Не указан входной файл.

Любой может мне помочь?

+0

Попробуйте заменить эту строку: (. *) 'RewriteRule^$ index.php/$ 1 [QSA, L]' с этим:? 'EwriteRule^(. *) $ Index.php/$ 1 [QSA , L] ' – Manolo

+0

все еще не работает: s – Lulzim

+0

Это то, что у меня есть:' RewriteRule^(. *) $ Index.php [QSA, L] '. – Manolo

ответ

0

Вот файл .htaccess я есть на GoDaddy и она отлично работает:

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

Ваша проблема может быть RewriteBase линия, если CodeIgniter не в корне.

+0

Да, его нет в корне мое приложение для кодирования – Lulzim

+0

Я пробовал свой код, но, похоже, не работает .. – Lulzim

+0

Как выглядит ваш оригинальный url. my look выглядит как mysite.com/app/welcome (нет index.php - welcome.php - файл контроллера. app - это корень установки codeigniter) –

0

Пожалуйста, попробуйте этот код:!

RewriteEngine на
RewriteCond% {REQUEST_FILENAME} -f
RewriteCond% {REQUEST_FILENAME} -d
RewriteRule^(.) $/Индекс. PHP [L] или RewriteRule^(.) $ index.php?/$ 1 [QSA, L]

2

Кажется, что в определенной конфигурации S ядро ​​CI пропускает правила, то .htaccess я использую сейчас:

RewriteEngine On 
RewriteCond %{REQUEST_URI} ^/system.* 
RewriteRule ^(.*)$ index.php?/$1 [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.+)$ index.php?/$1 [L] 
ErrorDocument 404 index.php 

В моем случае (Dev: подпапку, тычок: «домен аддон») магия была предоставлена ​​этими двумя дополнительными линиями :

RewriteCond %{REQUEST_URI} ^/system.* 
RewriteRule ^(.*)$ index.php?/$1 [L] 

Источник: http://www.diegodicamillo.com.ar/blog/2012/09/19/no-input-file-specified-codeigniter-error-problema-resuelto/

+0

Спасибо @alo Malbarez это сработало :) –

1

из вашего вопроса, что я понимаю, вы работаете в codeignitor в подпапках ("Studenti") домена ("www.facelajm.com"). Таким образом, код ниже .htaccess будет работать.

<IfModule mod_rewrite.c> 
Options +FollowSymlinks 
RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php?/$1 [QSA,L] 
</IfModule> 

А также не забыли изменить BaseUrl в конфигурационном файле (application/config/config.php), как показано ниже.

$config['base_url'] = "http://www.facelajm.com/studenti" 

Вышеупомянутый .htaccess, который вы использовали в своем вопросе, будет работать для поддомена. Итак, вы также можете указать create a sub domain and map the folder в поддомену и использовать код, который вы использовали в своем вопросе (для справки i, добавленный ниже).

<IfModule mod_rewrite.c> 
Options +FollowSymLinks 
RewriteEngine on 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php?/$1 [QSA,L] 
</IfModule> 

А также не забыли изменить BaseUrl в конфигурационном файле (application/config/config.php) для нового поддомена (assuming new sub domain as http://codeignitor.facelajm.com/), как показано ниже.

$config['base_url'] = "http://codeignitor.facelajm.com/" 
Смежные вопросы