Ильюха
Новичок
Дата регистрации:
21.11.2013 22:53:48
Сообщений: 18
Прошу помощи. Имею код для загрузки контента исходя из выбранного языка и адреса в URL из меню - всё работает. Хочу отвязаться
от языка, меняю RewriteRule в .htaccess - всё рушится.
index.php:
define('ROOT_DIR',dirname(__FILE__));
$pages = file("pages.txt", FILE_IGNORE_NEW_LINES); // "pages.txt" - перечислены все файлы с контентом.
$page = isset($_GET['page']) && in_array($_GET['page'], $pages) ? trim($_GET['page']) : $pages[0];
...
include ROOT_DIR.'/pages/'.$page; // Загрузка контента из файла в папке /pages.
.htaccess
RewriteEngine on
RewriteCond %{HTTP_HOST} ^my_site.ru
RewriteRule ^(.*)/([a-zA-Z.]{1,250}.php)$ index.php?page=$2 // Работает
или
RewriteRule ^([a-zA-Z0-9.]{1,250}.php)$ index.php?page=$1 // Не работает!
RewriteRule ^([a-zA-Z0-9.]{1,250})$ index.php?page=$1 // Не работает!
RewriteRule ^(.*)$ index.php?page=$1 // Не работает!
Вместо языка в меню (/ru/file.php или /eng/file.php) может быть даже любая абракадабра (/bla-bla-bla/file.php)) но без этой лишней виртуальной директории ничего не работает. (<a href ="file.php"> - рушится вся страница
index.php, на экране висит только разбитое подменю. Или с добавлением
слеша к файлу в меню (<a href ="/file.php"> выскакивает "ошибка
404 (файл не найден)". Не понимаю почему.
Я завис. Отгадку найти не могу.