XAMPP псевдоним или переписать?

У меня есть сайт, работающий на W2012 с XAMPP. У меня есть живой сайт, который был в подпапке /foo. Теперь его нужно изменить на /home.

I set up an alias 

Alias /foo "C:/xampp/htdocs/home"

Это приводит пользователей из foo -> домой ... однако они теряют страницу, на которую они собираются. Проблема в том, что многие страницы на foo были предоставлены в частном порядке, поэтому мы ожидаем, что пользователи поймут, что им нужно скопировать свою страницу на новый URL-адрес. Мне нужно, чтобы пользователь перешел на foo /client-demo, чтобы автоматически перейти к home /client-demo.

Дополнение: Вчера я настроил перенаправление.

Redirect foo/client-demo home/client-demo

Это работает. Тогда я подумал, что причина, по которой Alias ​​не работает, - это мой SSO. У меня есть сценарий входа SSO SAML, который перенаправляет пользователя на свою страницу входа. Поэтому, если пользователь начинает с foo /xyz, псевдоним удаляет их в home /xyz (возможно, на xyz), а затем они нажимают на скрипт входа и возвращаются на свою реферальную страницу.

2 голоса | спросил blankip 7 J0000006Europe/Moscow 2015, 08:43:10

1 ответ


1
  

... однако они теряют страницу, на которую они собирались.

Я не уверен, что вы подразумеваете под этим - они не должны «потерять» что-нибудь? Однако URL-адрес в адресной строке не будет обновлен - если это то, что вы подразумеваете? Apache Alias преобразует URL-адрес в путь файловой системы на стороне сервера (обычно для доступа к файлам, расположенным за пределами корня документа) - это не манипулирует URL-адресом.

Похоже, вы хотите внешнее перенаправление (301 - постоянный). Например, используя mod_alias (сопоставление префикса):

Redirect 301 /foo /home

Это предполагает, что вы еще не используете mod_rewrite для обработки перенаправления /перезаписи (например, с помощью WordPress). Если вы уже используете mod_rewrite для этой цели, вы также должны использовать mod_rewrite для этого перенаправления, так как порядок выполнения может быть не таким, как ожидалось. Например:

RewriteRule ^/?foo(.*) /home$1 [R=301,L]
ответил DocRoot 8 J0000006Europe/Moscow 2015, 17:36:36

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132