私はYoutubeビデオIMGを使用しています。私たちのウェブサイトに表示されるリモートURL画像
例リンク:https://i.ytimg.com/vi/aSVpBqOsC7o/hqdefault.jpg
私が希望:http://cdn.mywebsite.com/vi/aSVpBqOsC7o/hqdefault.jpg
私はPHPと.htaccessでそれを行うことができますどのように?
私はYoutubeビデオIMGを使用しています。私たちのウェブサイトに表示されるリモートURL画像
例リンク:https://i.ytimg.com/vi/aSVpBqOsC7o/hqdefault.jpg
私が希望:http://cdn.mywebsite.com/vi/aSVpBqOsC7o/hqdefault.jpg
私はPHPと.htaccessでそれを行うことができますどのように?
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サーバーの速度が遅くなります。彼らは、あなたがホスト構成(本当に安いホスティングサービスプロバイダを読む)を持っていないか、独自の書き換えルールを書くことに頼っているアプリケーションを持っている場合にのみ、最後のオプションとして提供されます(これは明白なセキュリティの悪夢です)。
ありがとうございますが、私のために働かないでください。このコードを.htaccesに追加しましたが、動作しません。 – Kenan
@ KenanS.Chayangilそして、「うまくいっていない」とは、正確に何を意味していますか?どのようなエラーが出ますか? httpサーバのエラーログファイルには何が表示されますか? – arkascha
すみません。エラー:500 内部サーバーエラー 内部サーバーエラーが発生しました。 – Kenan