Это работает локально на моем сервере WAMP, но когда я пытался использовать его на своем хосте, всегда выдается ошибка:
HTTP 404 (GET /)
• teste/index.php:17 Base->run()
Вы можете увидеть ошибку здесь: http://rafaelmsantos.com/teste/
Я понятия не имею, что происходит, я пробовал другой .htaccess, но он всегда показывает одну и ту же ошибку.
.Htaccess
# Enable rewrite engine and route requests to framework
RewriteEngine On
# Some servers require you to specify the `RewriteBase` directive
# In such cases, it should be the path (relative to the document root)
# containing this .htaccess file
#
# RewriteBase /
RewriteRule ^(lib|tmp)\/|\.(ini)$ - [R=404]
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L,QSA]
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
config.ini
[globals]
AUTOLOAD=public/pages/
DB.dns="mysql:host=localhost; dbname=lod; port=3306;"DB.user="root"DB.password=""
DEBUG=3
UI=assets/
index.php
<?php
$lod = require('lib/base.php');
$lod->config('config.ini');// HELPERS DEVELOPED BY ME
require_once 'helpers/base_helper.php';
//*-----------------------------------------------------------------*/
//* PÁGINAS */
//*-----------------------------------------------------------------*/
$lod->route('GET /', 'PagesController->index');
$lod->route('GET /project/@page', 'PagesController->index');$lod->run();
И моя структура папок:
попытайтесь установить RewriteBase в вашем .htaccess (как сказано выше):
RewriteBase /teste/
Оказывается, я должен был загрузить авто по-другому,
поставленный AUTOLOAD=public/pages/
на config.ini мне пришлось использовать $lod->set('AUTOLOAD','public/pages/');
после require_once
и до маршрутов.