Windows system >> Windowsの知識 >  >> コンピュータソフトウェアのチュートリアル >> サーバー技術 >> サーバーについて >> Apache URLリダイレクトでURLの末尾のスラッシュが発生しない問題

Apache URLリダイレクトでURLの末尾のスラッシュが発生しない問題

  
末尾のスラッシュの問題説明:URLに末尾のスラッシュがない場合、サーバーはURLを無効と見なしてエラーを返します。サーバはこのディレクトリを表示する代わりに/〜quux /fooに基づいてfooファイルを探すからです。実際には、多くの場合、この問題は解決するために "/"を追加するためにユーザーに任せるべきですが、ユーザーは直接URLを入力します。これにより、301リダイレクト要求が発生します。それから/index.htmlをもう一度見てください。方法:最も直感的な方法は、Apacheに自動的に "/"を追加させることですブラウザがファイルを正しく見つけるようにするには外部リダイレクトを使います内部リダイレクトだけをするなら、ディレクトリページを正しく表示することしかできません。相対URLに問題があるため、ファイルは見つかりません。たとえば、/~quux/foo/index.htmlのimage.gifをリクエストすると、リダイレクトは/~quux/image.gifになります。したがって、次のメソッドを使用する必要があります。
 RewriteBase上のRewriteEngine /〜quux /
 RewriteRule ^ foo $ foo /[R] 


このメソッドも機能します。 htaccessファイルは各ディレクトリに設定されていますが、この設定は元のメイン設定ファイルを上書きします。


 RewriteBase上のRewriteEngine /〜quux /
 RewriteCond%{REQUEST_FILENAME} -d 
 RewriteRule ^(。+ [^ /])___ FCKpd___17nbsp; $ 1 /[R]
						
Copyright © Windowsの知識 All Rights Reserved