Skocz do zawartości


 

Zdjęcie

Nginx reverse proxy, Wordpress i linki absolutne

Nginx reverse proxy, Wordpress i linki absolutne nginx proxy wordpress

  • Proszę się zalogować aby odpowiedzieć
4 odpowiedzi na ten temat

Nginx reverse proxy, Wordpress i linki absolutne

#1 netdive

netdive

    Nowy użytkownik

  • Nowy
  • 8 postów

Napisany 23 marzec 2016 - 00:44

Witam,

 

Mam jedną zagwozdkę której nie potrafię ugryźć. Może ktoś pomoże.

Dwa serwery :

Backend - Wordpress http://blog.vm

Frontend - Nginx jako proxy_pass http://proxy.vm

 

Wszystko działa OK. Wywołując http://proxy.vm ładuje się backend - nazwa URI w przeglądarce to http://proxy.vm. W przypadku linków relatywnych też działa tak jak chcę tj, http://proxy.vm/costam.php

Natomiast w przypadku odnośnika absolutnego http://blog.vm/nazwa-kolejnego-postu wywołanie omija proxy i ładuje bezpośrednio zawartość backendu (przynajmniej tak wyświetla się w pasku adresu)

W skrócie - potrzebuję za każdym razem i przy każdym odnośniku zachować hostname frontendu tj.

http://proxy.vm/nazwa-kolejnego-postu

Wiem, że to jakoś jest możliwe, bo kiedyś uruchomiłem taką konfigurację z Drupalem po stronie backendu (też miałem podobą zagwozdkę ale jakoś ruszyło z tym, że nie wiem już jak :-) )

Nie wiem czy to kwestia jakiś rewrite, konfiguracji proxy czy czegoś po stronie frontendu....

 

Moj blok serwera Nginx'a (próbowałem też dyrektyw proxy_set_header)

 server {
        listen       localhost:80 default_server;
        server_name  proxy.vm;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;

        location / {
        proxy_pass http://blog.vm/;     
}

/etc/hosts

127.0.0.1 proxy.vm proxy
# Auto-generated hostname. Please do not remove this comment.
18x.xx.xx.186 proxy.vm proxy

Frontend i backend sa oddzielnymi instancjami.

Podpowie coś jakaś mądra głowa ??

 

 

 

 

 

 


  • 0

#2 Bartosz Z

Bartosz Z

    Weteran WHT

  • WHT Pro
  • PipPipPipPipPipPipPipPip
  • 833 postów
  • Skąd:Lubelskie
  • Imię:Bartosz

Napisany 23 marzec 2016 - 01:09

Przecież to w pełni poprawne zachowanie?
Możesz na firewallu wyciąć dostęp do serwera WWW na backendzie, tak żeby tylko proxy mogło się z nim kontaktować. W innym przypadku musisz zrobić zwykłe przekierowanie na serwerze WWW blog.vm, które będzie kierowało na proxy.vm.


  • 0

#3 OneDistrict

OneDistrict

    Stały użytkownik

  • Użytkownicy
  • PipPipPipPipPip
  • 159 postów

Napisany 23 marzec 2016 - 12:38

Jak możesz, podaj mi swoją domenę na PW lub tutaj :)


  • 0

#4 netdive

netdive

    Nowy użytkownik

  • Nowy
  • 8 postów

Napisany 23 marzec 2016 - 13:47

ok, może trochę sprecyzuje. 

Serwer proxy ma służyć jako usługa hidden service czyli host postawiony z wykorzystaniem sieci tor z pseudo-domeną .onion

Backend to normalnie dostępny serwis w clearnet, który ma być zmirrorowany właśnie za tor. Nie pisałem o tym wcześniej bo generalnie to bez znaczenia raczej dla samego ustawienia proxy.

Przepiąłem dla testu na taki testowy backend z dwoma linkami które dokładnie obrazują o co mi chodzi. 

http://ljqnehrgngypupwm.onion/

W pierszym linku otwiera sie tak jak potrzebuje tj "http://ljqnehrgngypupwm.onion/test1/index.html"

W drugim już nie "http://tramal.us/test2/index.html" - chciałbym żeby cały czas była domena .onion

Również w logach w przypadku pierwszego odnośnika mam logowanie z IP 127.0.0.1 a w drugim realne IP (oczywiście już przetarasowane przez cebule)

Jakiś czas temu robiłem taką usługę dla dużego serwisu - dokładnie taki sam mirror, też miałem podobny problem, ale w końcu odpaliło tylko już nie pamiętam co i jak - bardziej po ciemku to się udało zrobić :)) - być może też admin backendu coś po strone Drupala ustawił bo mu zgłaszałem sprawę).

 

 

 


Edytowany przez netdive, 23 marzec 2016 - 13:49.

  • 0

#5 netdive

netdive

    Nowy użytkownik

  • Nowy
  • 8 postów

Napisany 23 marzec 2016 - 20:00

ok, problem rozwiązałem poprzez globalną zmianę linków z absolutnych na relatywne po stronie wordpress i działa, choć nie jest to dobry sposób. Na przyszłość, wolałbym jednak ogarnąć to w inny sposób, po stronie proxy - nie wiem czy jest to możliwe tylko. Próbowałem rewrite ale bez sukcesu.


  • 0






Także otagowane jednym lub więcej z tych słów kluczowych: nginx, proxy, wordpress

0 użytkowników czyta ten temat

0 użytkowników, 0 gości, 0 anonimowych użytkowników