Apache переписать правила для строки запроса - PullRequest
1 голос
/ 07 ноября 2011

Возможно, то, что мне нужно сделать, невозможно, но я просто не могу найти соответствующую информацию об этом.

Проблема: я унаследовал веб-сайт с уродливыми и бессмысленными URL-адресами, и меня попросили облегчить их запоминание (это должно было быть сделано в первую очередь!), Так что теперь я должен включить это: *

http://www.domain.com/page.php?id=XXX

в это:

http://www.domain.com/name-of-page-that-refers-to-id-xxx

(например, www.domain.com/page.php?id=100 => www.domain.com/agenda)

Можно ли это сделать?

1 Ответ

1 голос
/ 07 ноября 2011

Вам нужно будет установить соединение от agenda до id 100 где-нибудь. Если это не изменится (я не думаю, что это так), вы можете определить одно правило для каждого сайта.

Если он не статичен, вам придется изменить приложение и, возможно, схему базы данных. На мой взгляд, проще всего было бы добавить столбец sitename в таблицу БД, в которой хранятся сайты, и создать для него уникальный индекс. Чем вам нужно изменить приложение, чтобы разрешить URL-адреса, такие как page.php?sitename=agenda.

Затем вы можете добавить правила перезаписи, которые переводят www.domain.com/agenda в www.domain.com/page.php?sitename=agenda

...