2017-01-27 4 views

Antwort

1

Der Apache http Server kommt mit großartigen Modulen, darunter das Proxy-Modul. Es bietet genau das, was Sie ohne die Notwendigkeit einiger Skriptsprache suchen oder ähnlich:

Der einfache und direkte Ansatz ist es, die gesamte URL https://i.ytimg.com/vi/ in Ihrem eigenen Domain-Raum-Proxy:

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

Für die Dokumentation siehe: https://httpd.apache.org/docs/2.4/mod/mod_proxy.html#proxypass


Ein weiterer apporach, die mehr Flexibilität bietet, um das Proxy-Modul zu verwenden, aus der Rewrite-Modul:

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

Für die Dokumentation: http://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewriterule


Der gleiche Effekt wie der erste Ansatz kann auch durch eine Notation erreicht werden, die auf dem Host-Konfiguration beschränkt ist:

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

Beide oberen Ansätze können innerhalb der HTTP-Host-Konfiguration oder, wenn dies wirklich erforderlich ist, in dynamischen Konfigurationsdateien verwendet werden (.htaccess Stildateien). Im Allgemeinen sollten Sie solche Regeln immer in der Host-Konfiguration platzieren. .htaccess Style-Dateien fügen Komplexität hinzu, sind notorisch fehleranfällig, schwer zu debuggen und sie verlangsamen wirklich den http-Server. Sie werden nur als letzte Option für Situationen angeboten, in denen Sie keine Kontrolle über die Host-Konfiguration haben (lesen Sie: wirklich günstige Hosting-Service-Provider) oder wenn Sie eine Anwendung haben, die eigene Schreibregeln schreibt (was ein offensichtlicher Sicherheitsalarm ist)).

+0

Vielen Dank, aber nicht für mich arbeiten. Ich habe diesen Code in .htacces hinzugefügt, funktioniert aber nicht. – Kenan

+0

@ KenanS.Cayangil Und "aber nicht funktioniert" bedeutet was _exactly_? Welchen Fehler bekommst du? Was sagt Ihre HTTP-Server-Fehlerprotokolldatei? – arkascha

+0

Es tut mir leid. Fehler: 500 Interner Serverfehler Ein interner Serverfehler ist aufgetreten. – Kenan

Verwandte Themen