2017-03-28 23 views
0

Betrachten Sie dieses:Apache - Proxy externe Dateien herunterladen

  • haben wir einen externen Server für Dateien, die
  • unserer Website heruntergeladen werden kann (plone basiert) ist die Schnittstelle für sie herunterzuladen und wir versuchen sich zu verstecken die direkten Verbindungen so weit wie möglich
  • jquery.fileDownload Plugin benötigt ein Cookie auf Datei für den Download eingestellt

ich versuche, unsere Apache-Konfiguration zu setzen Links zu ersetzen wie folgt aus:

  • original: data-files-example.com/folder/subfolder/file.zip
  • ersetzt: our-website-example.com/_downloads/folder/subfolder/file.zip

Also, in meinem Fall der fehlende Teil ist: wie Apache zu setzen, wie dies funktioniert?

Ich versuche:

NameVirtualHost *:80 
<VirtualHost :80> 
    ServerAdmin [email protected] 
    ServerName our-website-example.com 

    RewriteEngine On 
    RewriteRule "^/_downloads(.)$" "https://data-files-example.com/$1" [P] 

    RewriteCond %{REQUEST_METHOD} ^(PUT|DELETE|PROPFIND|OPTIONS|TRACE|PROPFIND|PROPPATCH|MKCOL|COPY|MOVE|LOCK|UNLOCK)$ 

    RewriteRule .* - [F,L] 
    RewriteRule ^/(.*) http://127.0.0.1:/VirtualHostBase/http/data-files-example.com:80/my_plone_website/VirtualHostRoot/$1 [L,P] 

</VirtualHost> 

I 503 Service Unavailable erhalten.

Wie behebt man das?

+0

Sie haben in der Regel können mehr Glück Posting Fragen in unserem Forum, https://community.plone.org (mehr Augäpfel), obwohl ich einen Link auf dem Forum zu Ihrer Frage hier –

Antwort

1

folgender Code mindestens umschreibt Ihre gegebene original- zu Ihrer gewünschten Ziel-URL:

<VirtualHost> 
    SSLProxyEngine On 
    RewriteEngine On 

    RewriteCond %{HTTP_HOST} ^our-website-example.com$ 
    RewriteRule "^/_downloads(.*)$" "https://data-files-example.com/$1" [P,L] 
</VirtualHost> 

Diese die Module erfordern mod_ssl, mod_proxy und mod_rewrite aktiviert werden.

Lassen Sie uns wissen, wenn es Ihre gesuchte Lösung ist und wenn nicht, wo es schief gelaufen :)

+0

gepostet erhalte ich diese Seite tut scheint nicht zu existieren ... - die plone-Seite für fehlende Inhalte. – GhitaB

+0

404 (nicht gefunden) – GhitaB

+0

Aber Sie erhalten http://our-website-example.com/_downloads/folder/subfolder/$1 mit $ 1 = was auch immer Sie nach 'Unterordner' aufgerufen haben ??? Wenn nicht, gibt es wahrscheinlich ein anderes Rewrite, Redirect, Proxypass usw. im Spiel ... Kannst du die genaue URL, die du genannt hast, und den, in den sie geschrieben wurde, posten (außer deiner tatsächlichen Domain ofc) –

2

ein Reverse-Proxy-Versuchen. Stellen Sie nur sicher, dass mod_proxy und mod_proxy_http in Ihrer Apache-Konfiguration aktiviert sind und dass Ihre Proxy-Regel vor der VirtualHostBase-Regel für Plone gesetzt ist, wenn das Muster der root-Schrägstrich ist.

ProxyPass   /_downloads  http://data-files-example.com 
ProxyPassReverse /_downloads  http://data-files-example.com 

Bei Anschluss an einen https-Backend Proxying finden Sie auch installiert mod_ssl benötigen und die Richtlinie SSLProxyEngine auf.

SSLProxyEngine On 
ProxyPass   /_downloads  https://data-files-example.com 
ProxyPassReverse /_downloads  https://data-files-example.com 
+0

Diese Seite scheint nicht zu existieren ... 404 (Not Found) – GhitaB

+0

'Stellen Sie sicher, dass mod_proxy und mod_proxy_http in Ihrer Apache-Konfiguration aktiviert sind und dass Ihre Proxy-Regel vor der VirtualHostBase-Regel für Plone gesetzt ist --- ---> Haben Sie gemacht Sicher, dass beide Module geladen sind? Die Nachricht, die Sie unten gepostet haben 'Kein Protokoll-Handler war für die URL gültig [...] scheint Ihnen nicht gefallen ... –

+0

http://dpaste.com/06NM7B7 proxy_html_module (gemeinsam genutzt) proxy_http_module (gemeinsam genutzt) proxy_module (geteilt) Scheint ok, oder? – GhitaB