2017-01-27 12 views

答えて

1

apache httpサーバーには、プロキシモジュールの中でも優れたモジュールが付属しています。ドキュメントについては

ProxyRequests off 
ProxyPass /vi/ https://i.ytimg.com/vi/ 

シンプルかつ直接的なアプローチは、独自のドメイン空間内のプロキシに全体URL https://i.ytimg.com/vi/されています:それはあなたには、いくつかのスクリプト言語または類似を必要とせずに探しているまさに提供しています参照:https://httpd.apache.org/docs/2.4/mod/mod_proxy.html#proxypass


より多くの柔軟性を提供しています別のapporachが書き換えモジュール内からプロキシモジュールを使用することです:

RewriteEngine on 
RewriteRule ^/?vi/([^/]+)/(.+)$ https://i.ytimg.com/vi/$1/$2 [L,P] 

マニュアル参照してください:http://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewriterule


最初のアプローチと同様の効果はまた、ホスト構成に限定される表記法によって到達することができる。

ProxyRequests off 
<Location /vi/> 
    ProxyPass https://i.ytimg.com/vi/ 
</Location> 

両方の上位アプローチは、httpホスト構成内で使用することも、実際に必要な場合は、動的構成ファイル(.htaccessスタイルファイル)。一般的には、常にそのようなルールをホスト構成に配置することをお勧めします。 .htaccessスタイルファイルは複雑さを増し、悪意を持ってエラーが発生しやすく、デバッグが難しく、HTTPサーバーの速度が遅くなります。彼らは、あなたがホスト構成(本当に安いホスティングサービスプロバイダを読む)を持っていないか、独自の書き換えルールを書くことに頼っているアプリケーションを持っている場合にのみ、最後のオプションとして提供されます(これは明白なセキュリティの悪夢です)。

+0

ありがとうございますが、私のために働かないでください。このコードを.htaccesに追加しましたが、動作しません。 – Kenan

+0

@ KenanS.Chayangilそして、「うまくいっていない」とは、正確に何を意味していますか?どのようなエラーが出ますか? httpサーバのエラーログファイルには何が表示されますか? – arkascha

+0

すみません。エラー:500 内部サーバーエラー 内部サーバーエラーが発生しました。 – Kenan

関連する問題