XAMPPを使用してW2012で実行しているサイトがあります。サブフォルダー/ fooにあるライブサイトがあります。ここで/ homeに変更する必要があります。
I set up an alias
Alias /foo "C:/xampp/htdocs/home"
これにより、ユーザーはfoo-> home ...に移動しますが、ユーザーは目的のページを失います。問題は、fooの多くのページが個人的に提供されているため、ユーザーが新しいURLにページをコピーする必要があることをユーザーに理解してもらうことです。 foo/client-demoに移動して、home/client-demoに自動的に移動するユーザーが必要です。
追加:昨日、リダイレクトを設定しました。
Redirect foo/client-demo home/client-demo
これは動作します。それから、エイリアスが機能しない理由は私のSSOだと思いました。ユーザーにエントリページをリダイレクトするSSO SAMLログインスクリプトがあります。そのため、ユーザーがfoo/xyzで開始すると、エイリアスによってhome/xyz(xyzにある可能性があります)にキックされ、ログインスクリプトにアクセスして紹介ページに戻ります。
...しかし、彼らはしようとしていたページを失います。
これが何を意味するのかわかりません-彼らは何も「失う」べきではありませんか?ただし、アドレスバーの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]