Лечить request перенаправление через Htaccess


изучаю о маршрутизации, пытаются (заново)создать решение для маршрутизации моего.

Всегда использовал следующий .htaccess pra перенаправить мои requests:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?url=$1 [L]

Там это было легко, это было только поймать $_GET['url'] index.php и лечения, как я и хотел. Но я-я натыкаюсь на следующее .htacesss:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]

Моя сомневаетесь, как взять то, что было в прошлом, так что он не играет по запросу на $_GET['url'].

Author: José Camelo de Freitas, 2015-11-20

1 answers

Способ, которым вы могли бы сделать это следующим образом,, где .htaccess будет выглядеть так:

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

И php-скрипт будет выглядеть следующим образом:

<?php

$uri = $_SERVER['REQUEST_URI'];
$uriParts = explode('/', $uri);

var_dump($uriParts);

Так, предполагая, что вы. следующий url-адрес, например:

Http://localhost/seu_projeto/segmento_1/segmento_2/segmento_3

Примет следующий output:

array (size=5)
  0 => string '' (length=0)
  1 => string 'seu_projeto' (length=11)
  2 => string 'segmento_1' (length=10)
  3 => string 'segmento_2' (length=10)
  4 => string 'segmento_3' (length=10)

Таким образом, таким образом, используя массив $uriParts, вы можете прийти и обрабатывать запросы, сделанные в его приложение.

 2
Author: Yure Pereira, 2015-11-20 17:51:41