ApacheとDjangoを作ることは、トレーリングスラッシュを追加します

StackOverflow https://stackoverflow.com/questions/2519519

  •  22-09-2019
  •  | 
  •  

質問

私の /トレインディレクトリは、httpd.confのスクリプトにエイリアスされます:wsgiscriptalias /train /some-path/../django.wsgi

そして、1つの問題を除いて、それはうまく機能します。ユーザーが(トレーリングスラッシュなし)に /トレーニングした場合、 /トレーニング /トレーニングをリダイレクトしませんが、適切なページを与えるだけです。これは、このページの相対的なリンクが、後続のスラッシュが使用されなかったときに間違った場所につながるため、問題です。

これはどのように解決できますか?

ありがとう。

役に立ちましたか?

解決

私はこのようなものを使用して /トレーニング /トレーニング /トレーニング /トレイン /を使用しています。

<Location "/train">
     Order deny,allow
     Allow from all
     RewriteEngine on
     RewriteRule  !^.*/$  /train/  [R]
</Location>

WSGIScriptAlias /train /some-path/../django.wsgi

他のヒント

からリダイレクトする必要がある場合 /train/train/ また、スラッシュが続くすべてのサブディレクトリからではなく、Redirectmatchディレクティブを使用したより簡単なソリューションがあります。

RedirectMatch ^/train$ /train/

urlconfを受け入れるように設定します train/ 代わりに有効なように、次に作成します train につながる 一般的なリダイレクト/train/.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top