Использование htaccess в движке PHP

Для того, чтобы сделать движок сайта, для начала нужно сделать так, чтобы запрос любого URL сайта обрабатывался одним файлом PHP.

Это делается с помощью специального файла .htaccess. Давайте создадим этот файл и включим его, написав в начале его текста следующие строки:

.htaccessRewriteEngine On
RewriteBase /

После этого мы можем указывать, какой файл должен обрабатывать запрощенный URL. Это делается с помощью команды RewriteRule.

Посмотрим на работу этой команды на практике. К примеру, сделаем так, чтобы адрес /test был обработан файлом index.php:

.htaccessRewriteRule /test index.php

Первым параметром команда RewriteRule на самом деле принимает регулярное выражение. Давайте с его помощью сделаем так, чтобы все URL обрабатывались файлом index.php:

.htaccessRewriteRule .+ index.php

Однако, часть адресов все-таки не должны перенаправляться. Это адреса, которые ведут к файлам ресурсов: к CSS, JavaScript, картинкам и так далее.

Отменим их перенаправление с помощью команды RewriteCond:

.htaccessRewriteCond %{REQUEST_URI} !\.(js|css|ico|jpg|png)$
RewriteRule .+ index.php

На странице index.php мы можем получить запрошенный URL с помощью суперглобального массива $_SERVER:

index.php<?php
  $url = $_SERVER['REQUEST_URI'];
?>
Задание 1

Создайте файл .htaccess. С его помощью реализуйте перенаправление всех запросов на index.php.

Задание 2

Выведите на index.php запрошенный URL.