Как использовать HMVC для Codeigniter 2.1.* При перемещении index.php?
Я пытаюсь создать приложение CodeIgniter с моим index.php внутри "публичной" папки /Applications/MAMP/htdocs/public/
в корне сайта. Я настроил свои vhosts и т. Д., Чтобы они указывали на этот файл index.php. Я хотел пойти на модульный подход и в итоге использовал модульные расширения - HMVC. Я поместил файлы ядра и файлы сторонних производителей в соответствующие папки и создал папку модулей в папке приложения. Затем я приступил к созданию модуля "login" внутри папки модулей с необходимыми "controllers/login.php", "models" и "views".
class Login extends MX_Controller{
public function index()
{
log_message('error','reached module');
}
}
Теперь, когда я пытаюсь загрузить http://localhost/login
Я получаю журнал ошибок в apache_error.log, говорящий
File does not exist: /Applications/MAMP/htdocs/public/login
http://localhost
отлично работает, отображая экран приветствия CodeIgniter
gniter
Это структура пути:
application/modules
└── login
├── config
│ └── routes.php
├── controllers
│ └── login.php
└── views
└── login.view.php
Содержимое модулей /login/config/rout.php
<?php
$route['login'] = 'login';
Конфигурация httpd-vhosts:
<VirtualHost *:80>
DocumentRoot "/Applications/MAMP/htdocs/public"
SetEnv APP_ENV development
<Directory "/Applications/MAMP/htdocs/public">
Options Indexes FollowSymLinks Includes execCGI
AllowOverride All
Order Allow,Deny
Allow From All
</Directory>
</VirtualHost>
1 ответ
Мне наконец удалось заставить мой код работать. Написал небольшое руководство по настройке. Вы можете отослать это здесь