ユーザーにクリーンな URL を提供するために、リダイレクトを実行したいと考えています。
変わりたい:
http://mydomain.com/main/username/profile
に:
http://mydomain.com/username/profile
書き直しまたはエイリアンでこれを行いますか?どのようにしますか?
ユーザーにクリーンな URL を提供するために、リダイレクトを実行したいと考えています。
変わりたい:
http://mydomain.com/main/username/profile
に:
http://mydomain.com/username/profile
書き直しまたはエイリアンでこれを行いますか?どのようにしますか?
まず、リダイレクトとエイリアスの違いを理解する必要があります。
リダイレクト/main/username/profile
は、リクエストしたユーザーを に送信します/username/profile
。ブラウザの URL が変わります。これは、検索エンジンが URL にアクセスできる場合に特に重要です。そうしないと、同じページが 2 回インデックスに登録されてしまう (コンテンツの重複) ためです。
リダイレクトを使用する場合は、URL がそのままであることを確認してください。その理由はCool URIs don't changeです。
リダイレクトの例:
server {
# ...
location / {
# ...
location ~ /main/([a-zA-Z0-9]+)/profile$ {
# SEO effective redirect
return 301 /$1/profile;
}
# ...
}
}
エイリアスは、要求されたファイルがファイルシステムの URL によってマップされておらず、別の場所を参照する必要があることを nginx に伝えるために使用されます。次の例は、nginx wiki からのものです。
root /var/www;
location /i/ {
alias /spool/w3/images/;
}
のリクエストは/i/empty.gif
にマップされません/var/www/i/empty.gif
。代わりに、 に一致し/spool/w3/images/empty.gif
ます。