Дружественные URL CodeIgniter 2.0 не работают на Mac OS X Snow Leopard - PullRequest
1 голос
/ 18 сентября 2010

По какой-то причине в CI 2.0 URL-адреса не работают.

http://localhost/myapp/ - will open the default controller (bc it finds index.php)
http://localhost/myapp/index.php/home/ - will open the default controller 
http://localhost/myapp/home/ - will show path not found

Я не уверен, что это проблема с 2.0 или специфическая проблема с моей конфигурацией.

Iя использую Apache 2 на Mac OS X Snow Leopard.

Я искал решение .htaccess, но не смог найти ничего для CI 2.0.

Ответы [ 6 ]

4 голосов
/ 18 сентября 2010

У вас есть правило переписывания в apache для обработки codeigniter, подобного этому?см .: http://codeigniter.com/wiki/mod_rewrite/

  • Первый по умолчанию будет работать (по умолчанию index.php)
  • секунд, одна будет работать, потому что вы передаете его в index.php
  • третий вариант без правила перезаписи.
3 голосов
/ 18 сентября 2010

Реальная проблема заключалась в том, что в Snow Leopard фактическая конфигурация Каталога, обычно расположенная в /private/etc/apache2/httpd.conf, теперь находится в /private/etc/apache2/users/[USERNAME].conf По умолчанию FollowSymlinks и AllowOverride там отключены, поэтому вы должны пойти и исправить это вручную, даже если он включен в обычном httpd.conf

Tricky. Спасибо всем. В противном случае все, что вам нужно, это обычный .htaccess, как уже отмечали люди.

1 голос
/ 18 сентября 2010

.htaccess решения для CodeIgniter 1.7 также будут работать для CodeIgniter 2.0. .htaccess используется для настройки веб-сервера Apache, который не зависит от CodeIgniter.

(поэтому рекомендуемая конфигурация из руководства CodeIgniter должна работать нормально.)

0 голосов
/ 08 апреля 2014

Лучший способ установить XAMPP, работать со мной.

просто остановите локальный apache и поместите ваше приложение в htdocs (XAMPP).

Вы увидите, что ваша заявка подчиняется дружественным URL.

Удачи

0 голосов
/ 07 августа 2013

Вы можете найти его здесь .Он находится ниже заголовка «Удаление файла index.php».

Удаление файла index.php

По умолчанию файл index.php будет включен в ваши URL-адреса:

example.com / index.php / news / article / my_article Вы можете легко удалить этот файл, используя файл .htaccess с некоторыми простыми правилами.Вот пример такого файла, использующего «отрицательный» метод, в котором все перенаправлено, кроме указанных элементов:

RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]

В приведенном выше примере любой HTTP-запрос, отличный от запросов для index.php,images, а файл robots.txt обрабатывается как запрос вашего файла index.php.

0 голосов
/ 19 августа 2011
$ sudo sudo chgrp staff /Library/WebServer/Documents/
$ sudo chmod 775 /Library/WebServer/Documents/

После этого все мое приложение будет находиться в папке / Library / WebServer / Documents /

Как и 'testing'

/ Library / WebServer / Documents / testing

$ echo "Hello World" >> /Library/WebServer/Documents/testing/index.php
http://localhost/testing 
==> it should appear Hello World

теперь в папке '/ Library / WebServer / Documents /' вы поместите папку CI, которую вам нужно будет добавить

.htaccess 

RewriteEngine On
RewriteCond $1 !^(index\.php)
RewriteRule ^(.+)$ index.php?$1 [L]
AddHandler php5-script .php

в ваш CI_Folder / application / config.php

$config['index_page'] = '';

И я думаю, это все!Наслаждайтесь!

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