Отправить все входящие URL-запросы через 1 файл, получая параметры пути для PHP - PullRequest
0 голосов
/ 29 февраля 2012

Я хочу, чтобы большинство входящих URL-запросов указывали на глобальный файл процессора

**www.itsme.com/index.php**

URL-адреса могут иметь различного рода структуры, но всегда с '/' вместо '? | & | ='Например,

  • www.itsme.com / news / finance /
  • www.itsme.com / news / money / trading
  • www.itsme.com /sports

index.php должен иметь возможность распознавать URL-адрес и его параметры, из которых он был вызван, например,

array{[1]=>news,[2]=>finance})

Поскольку у меня много каталогов, я хочу лучше избегатьразмещение в каждом файле (.htaccess) отдельно для перенаправления.

Apache / Linux / PHP 5.3

Как это можно сделать? thx

Ответы [ 2 ]

0 голосов
/ 01 марта 2012

Так легко было.Поместить этот 1-лайнер в корень, как .htaccess сделает:

RewriteRule ^([^/]+)/([^/]+)/([^/]+)/([^/]+) index.php?var1=$1&var2=$2&var3=$3&var4=$4 [NC]

разве это не здорово?

0 голосов
/ 29 февраля 2012

Пусть Apache сделает всю работу за вас с mod_rewrite

RewriteRule ^news/(.*)/$ /index.php?parts[]=news&parts[]=$1 [L]
RewriteRule ^news/(.*)/(.*)/$ /index.php?parts[]=news&parts[]=$1&parts[]=$2 [L]
RewriteRule ^sports/(.*)/$ /index.php?parts[]=sports&parts[]=$1 [L]
...