2015-01-20 3 views
1

Прошу простить меня, потому что я не знаю правильных ключевых слов для этого. Как я могу сделать любые варианты, например example.com/page/23920, перенаправлять на example.com/page/?Как настроить базовую маршрутизацию URL

Я хранение идентификаторов, передаваемые из моего приложения в URL-адрес в формате: example.com/page/12345

и то, что я хочу сделать, это прочитать значение ID из URL. Я новичок в веб-разработке, и я не понимаю, как настроить эти случайно создаваемые страницы - сейчас все страницы не существуют на моем сервере, поэтому они все 404s.

В моем файле .htaccess я пытался:

RewriteEngine on 
RewriteRule ^page/$1 /page/? [L,R=301] 

я все еще получаю ошибку, что результирующая страница не была найдена на сервере.

Я читал о «контроллерах действий», но я понятия не имею, как это работает.

+0

С document.referer. Это грубо, но это работает. – scott

ответ

3

Это два разных вопроса.

Если вы хотите, чтобы передать некоторые значения к URL, вы должны создать URL-адреса, которые выглядят, как это, например:

http://www.example.tld/evaluate_id?id=12345 

На странице (что я переименован в «evaluate_id») у вас есть GET Параметр с именем «id» с заданным значением.

Однако, чтобы перенаправить все страницы ниже этого уровня на главную страницу, вы просто должны изменить правила переадресации следующим образом:

RewriteRule ^page/[0-9]+ /page/? [L,R=301] 

Или для достижения такого же результата, как уже упоминалось:

RewriteRule ^page/([0-9]+) /page/?id=$1 [L,R=301] 

$ -параметры используются для ссылки на соответствующие части регулярного выражения на левой стороне в части перенаправления.

Смежные вопросы