У меня возникли проблемы с работой моего mod_rewrite, так что ссылки идут от http://domain.com/page?home.php
до http://domain.com/home
.Php, включая страницы с укладкой mod_rewrite, получает переменные проблемы
При вводе http://domain.com/
домашняя страница включена правильно.
При вводе http://domain.com/404
или http://domain.com/anythinghere
страница 404 включена правильно.
http://domain.com/home
При вводе ошибки 500 поднимается и я получаю эту ошибку: File does not exist: /var/www/html/domain/Dev/home
Почему это не работает?
Мой проект заключается в следующем: структура
Каталог:
Dev/
.htaccess
index.php
menu.php
pages/
404.php
home.php
resources/
css/
core.css
fonts/
.htaccess,:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^(\d+)*$ ./index.php?page=$1
index.php:
<?php
if (!isset($_GET['page']))
$_GET['page'] = 'home';
$pages = array('home');
$page = $_GET['page'];
include('menu.php');
if(in_array($page, $pages))
{
include('pages/' . $page . '.php');
}
else
{
include('pages/404.php');
}
?>
</body>
</html>
Вы действительно правильно благодарите, хотя я поставил точку infront /index.php ... потому что я не работал в корневой папке, но такой же. RewriteRule^([^ /] +) $ ./index.php?page=$1 [L] – user3828657