Перенаправить все на index.php

Я пытаюсь сделать чистые URL-адреса, взорвав $_SERVER['REQUEST_URI'] а затем переключаясь между результатами.

Однако, как только пользователь выходит за пределы index.php , я предполагаю, что мне нужно перенаправить их обратно в index.php , чтобы обработать URL, который они хотят достичь. Как я могу это сделать?

Так, например, если пользователь перейдет на сайт www.domain.com/home/johndoe/... Я бы хотел, чтобы index.php ( domain.com/index.php ) попал, чтобы он мог обрабатывать /home/johndoe/ через request_uri .

.htaccess:

 RewriteEngine on RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?param=$1 [QSA,L] 

Вам понадобятся изображения и другие файлы, которые будут отображаться в index.php.

 RewriteEngine On 

Включает Rewite Engine

 RewriteCond %{REQUEST_FILENAME} !\.(jpg|jpeg|gif|png|css|js|pl|txt)$ 

Если имя файла не равно JPG, JPEG …, которое необходимо для index.php

 RewriteRule ^(.*)$ index.php?q=$1 [QSA] 

«Перенаправить» на index.php.

В использовании:

С PHP $_GET q даст вам /articles/1987/12/20/Répa's birthday/

Если вы разделите переменную в каждой косой чертой с помощью

 list($type, $date_year, $date_month, $date_day, $title) = split('[/-]', $_GET['q']); 

Вы получите именно то, что хотите.

Вы можете использовать mod_rewrite от Apache для сопоставления URL-адресов на основе регулярных выражений, включая отправку всего на index.php ,