2012-03-08 2 views
2

Я пробовал довольно много ответов, но продолжаю сталкиваться с доброй атмосферой, 404 стеной ужаса. Я нахожусь в Windows 7, используя стек xamp. mod_rewrite включен.Удалить index.php с codeigniter в xamp

Я поместил файл htaccess в основной каталог «codeigniter», то есть каталог с приложением, системой и user_guide. Должен ли я помещать его в каталог приложения? Тот, у кого есть представления/model/config/etc.?

Вот мой текущий файл .htaccess:

RewriteEngine On 

# Put your installation directory here: 
# If your URL is www.example.com/, use/
# If your URL is www.example.com/site_folder/, use /site_folder/ 

RewriteBase /website/codeigniter/ 

# Do not enable rewriting for files or directories that exist 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 

# For reuests that are not actual files or directories, 
# Rewrite to index.php/URL 
RewriteRule .* index.php/$0 [PT] 

Доступ http://localhost/website/codeigniter/index.php/welcome работает Доступ http://localhost/website/codeigniter/welcome не

Мой config.php имеет

$config['base_url'] = 'http://localhost/website/codeigniter/'; 
$config['index_page'] = ''; 

Любая помощь с благодарностью!

Ошибка:

Object not found! 

The requested URL was not found on this server. If you entered the URL manually please check your spelling and try again. 

Error 404 

UPDATE О, просто думал о поиске в апача журналах, получаю эту ошибку:

[Thu Mar 08 18:28:25 2012] [error] [client ::1] File does not exist: C:/xampp/htdocs/website/codeigniter/welcome 

Так что, похоже, не будет подбирая правильное переадресация codeigniter? Не уверен?

ответ

0

Попробуйте изменить последнюю строку вашего HTAccess на:

RewriteRule .* index.php/$1 [L] 
+0

Просто пробовал, никаких изменений – Organiccat

0

попробуйте также изменить способ запроса в файл конфигурации из AUTO в REQUEST_URI.

+0

не пробовал, никаких изменений – Organiccat

2

Вы включили mod_rewrite в apache?

+0

Да, не добавил, что у меня было это сделано изначально. – Organiccat

+0

Зачем комментировать ответ на 2 года? Я уже отметил это для удаления –

4

сначала создать .htacess файл и вставьте код, приведенный ниже в этом RewriteEngine на

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

затем в конфигурационный файл

$config['index_page'] = 'index.php'; 

изменение

$config['index_page'] = ''; 

и наслаждаться

3

Попробуйте это:

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

изменение

$config['index_page'] = ''; 
0

Во-первых, включить «переписать модуль» Апача в XAMPP

Если вы используете XAMPP или WAMP пакет, то вы найдете файл по адресу:

{xampp_dir}/apache/conf/httpd.conf 
{wamp_dir}/apache/conf/httpd.conf 

Найдите следующую строку и снимите знак «#».

LoadModule rewrite_module modules/mod_rewrite.so 

На самом деле, мы можем сделать сверху всплывающее меню XAMPP: Apache -> Apache Modules -> rewrite module и выберите его, чтобы включить его.

Во-вторых, мы должны изменить HTAccess следующими:

RewriteEngine on 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 

RewriteRule ^(.*)$ index.php/$1 [L]