После RewriteRule для PHP-скрипта выполните внутреннее перенаправление из PHP. - PullRequest
0 голосов
/ 17 января 2009

У меня есть некоторые перезаписи mod_rewrite, которые правильно перенаправляют URL-адреса в скрипт. Из скрипта я хочу перейти к другому файлу, не вызывая другой запрос / не меняя URL.

Я экспериментировал с локациями и мета-обновлениями, но они не такие гладкие, как хотелось бы.

Есть ли способ перейти к сценарию или даже вернуть данные в правила перезаписи, чтобы их можно было переписать?

improfane.domain.com отправляется в скрипт, который получает идентификатор пользователя из базы данных, затем я перенаправляю на страницу профиля с идентификатором пользователя. Я хочу, чтобы он был более плавным, без перенаправления. Это означает, что improfane.domain.com останется в URL, а не перейдет на domain.com/?profile=6

.

Спасибо

Ответы [ 2 ]

3 голосов
/ 17 января 2009

Вы можете включить настоящий целевой файл в одну из следующих директив php:

include(filename)
require(filename)
include_once(filename)
require_once(filename)
1 голос
/ 17 января 2009

Вы должны использовать фронт-контроллер (также называемый bootstrapping ), чтобы определить маршрут и включить правильный сценарий (а не перенаправить). Фронт-контроллер является единственной точкой входа в ваше приложение и позволяет вам управлять маршрутизацией по своему усмотрению.

Большинство фреймворков имеют хорошую реализацию фронт-контроллера, но для простых целей вы можете свернуть свой собственный.

...