Как скрыть .php, используя .htaccess?

Скажите, как сделать адрес вида site.ru/index.php таким site.ru/index?

И чтобы, если пользователь напрямую обратится к site.ru/index.php, его "перекинуло" по этому адресу site.ru/index?
  • Вопрос задан
  • 4276 просмотров
Пригласить эксперта
Ответы на вопрос 6
@frees2
Проблема не в том. что откроет посетитель а какие ссылки вы будете прописывать с запросами.
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
Ответ написан
Комментировать
dabich
@dabich
Web Developer
/page.php будет доступна по адресу /page
RewriteEngine on
RewriteRule ^/([^/]+)/?$	$1.php  [L,QSA]
Ответ написан
Комментировать
@GreatRash
Это называется ЧПУ (человеко-понятный урл). Гуглите по запросу "PHP чпу".
Ответ написан
azrail_dev
@azrail_dev
RewriteEngine On
RewriteRule ^(\w+)$ $1.php [NC]
Ответ написан
@netz-sanya Автор вопроса
Нашел способ:
в .htaccess прописал:
RewriteEngine On
RewriteRule ^(\w+)$ $1.php [NC]

в php файле:
<?
if ($_SERVER['REQUEST_URI'] == '/name/friends.php') {
header('Location: http:// localhost/name/friends');
};
?>

Насколько такой способ правильный?
Ответ написан
@young8junkie
Если хотите сделать грамотно - читайте про front controller.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы