Puncte:0

Apache2: Pagina web este accesibilă numai prin localhost, dar nu prin domeniul personalizat sau adresa IP

drapel cn

Tocmai încep să învăț serverul Apache.

am instalat apache2 (versiunea 2.4.41) bazat pe Ubuntu, WSL2 Windows10 și urmat acest tutorial pentru a configura o pagină web.

Am creat o pagină web pentru testare. Calea este:

/var/www/info.dev/html/index.html

Problema este că, după ce am urmat tutorialul pas cu pas, pagina mea web funcționează numai prin intermediul gazdă locală:

localhost img

Acesta este al meu /etc/hosts fişier:

gazdă img

Ale mele info.dev.conf fişier:

config img

Nu va funcționa dacă folosesc un domeniu personalizat, cum ar fi info.dev sau www.info.dev: domainimg

Dacă folosesc o adresă IP locală, primesc această eroare: ip img

Am fost blocat în această problemă de câteva zile și am încercat toate soluțiile pe care le-am putut căuta pe google, dar se pare că niciuna nu funcționează pentru mine. Chiar aș aprecia dacă cineva mi-ar putea salva ziua.

Puncte:0
drapel in

Pe baza multitudinii de imagini pe care le-ați distribuit, m-aș aventura că ați editat „greșit” gazde fişier. În loc să îl schimbați pe cel din Ubuntu, trebuie să îl editați pe cel din Windows găsit la C:\Windows\System32\Drivers\etc\hosts. Acolo, vă puteți adăuga înregistrările.

A inlocui:

# Rezolvarea numelui localhost este gestionată chiar în DNS.
# 127.0.0.1 localhost
# ::1 localhost

Cu:

127.0.0.1 localhost
127.0.0.1 info.dev

::1 localhost
::1 info.dev

Nu trebuie să aveți o înregistrare pentru subdomenii precum www.info.dev. Asigurați-vă că înlocuiți 127.0.0.1 cu adresa IP a instanței tale Ubuntu WSL2. Puteți găsi asta tastând: nume de gazdă wsl -I din PowerShell sau Command Prompt.

În fișierul de configurare Apache, puteți actualiza ServerAlias pentru a include un wildcard pentru a vă asigura că tot traficul pentru domeniu este direcționat corect:

ServerAlias ​​info.dev *.info.dev

Având info.dev în ambele Numele serverului și ServerAlias e bine. Îl puteți exclude din alias dacă preferați.

paladin avatar
drapel kr
PS când utilizați un fișier _hosts_ pentru rezoluția numelui, fișierul _hosts_ ar trebui să fie partajat pe toate computerele din LAN. Asigurați-vă că un program prost de „antivirus/firewall” Windows nu vă blochează fișierul _hosts_ Windows.
nickwfj123 avatar
drapel cn
Mulțumesc, Matigo. După ce modific fișierul hosts, adresa IP locală funcționează pentru propria mea pagină. Dar când am încercat să folosesc localhost, pagina web este redirecționată către pagina Windows IIS și când am încercat domeniul personalizat info.dev, mesajul de eroare „Conexiunea ta nu este privată”.
drapel in
@nickwfj123 â Mediul dvs. WSL2 este accesibil pentru Windows cu `127.0.0.1` sau folosește o adresă IP diferită?
nickwfj123 avatar
drapel cn
@matigo - Nu sunt sigur dacă spunem aceeași adresă IP. L-am primit prin comanda: hostname -I, care este diferit de 127.0.0.1. O nouă problemă pe care tocmai am găsit-o este că atunci când elimin aceste modificări de mai sus în fișierul hosts, domeniul personalizat funcționează, dar numai la prima dată când deschid o filă nouă. Apoi, dacă reîmprospătează pagina, ceva nu merge din nou bine. mesaje de eroare „Acest site nu poate fi accesat. Verificați dacă există o greșeală de scriere pe www.info.dev.”
drapel in
`localhost` va â în mod ideal â indica doar la `127.0.0.1`, deci introducerea acesteia într-un browser pe un sistem care nu este serverul nu va funcționa.Va trebui să utilizați domeniile personalizate pe care le-ați configurat. Eroarea pe care o vedeți cu `www` se datorează probabil și fișierului hosts de pe computerul dvs. Windows. Veți avea nevoie de o linie cu IP-ul instanței WSL pentru fiecare subdomeniu.
nickwfj123 avatar
drapel cn
Mulțumiri. O linie cu IP local și pereche de subdomenii funcționează acum. Înseamnă asta că trebuie să modific manual fișierul hosts de fiecare dată când vreau să generez noi domenii? Mă întreb dacă există o modalitate prin care pot face prin Ubuntu sau altceva pentru a configura fișierul hosts automat.
drapel in
Aș descuraja cu tărie ca sistemele automate în WSL (sau oriunde altundeva) să actualizeze automat fișierul `hosts` pe mașina dvs. Windows. Există un motiv pentru care trebuie să fii administrator pentru a edita acel fișier și nu este bine să te lași deschis la deturnarea DNS...

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.