windows - værtsmaskinen kan ikke få adgang til nginx virtuelle værter på gæstemaskinen

Indlæg af Hanne Mølgaard Plasc

Problem



Spørgsmål: Hvordan oprettes simple nginx config, der vil læse mapper struktur som domæner (test.local, myblog.local) og viser siden fra disse mapper, herunder PHP?


Information:
Windows 10 x64 build

Vagrant 1.9.5

VirtualBox 5.0.22 (nyeste)

Gæst OS: Ubuntu Xenial x64 nyeste


Så jeg vil oprette simple nginx config, der vil genskabe mappestrukturen. Se
min config-fil på pastebin. [11]


Også her er en Vagrantfile config, som bruger SMB til at montere en mappe. [12]


Mappenes struktur:


├───devhost.local
│   ├───log
│   └───public
│           index.html
│           index.php
│
└───test.local
    ├───log
    └───public
            index.html


Retten til filer og mapper til devhost:


ubuntu@ubuntu-xenial:~$ ls -la /var/www/html/devhost.local/
total 4
drwxr-xr-x 2 ubuntu www-data    0 Jun  7 11:17 .
drwxr-xr-x 2 ubuntu www-data 4096 Jun  7 12:44 ..
drwxr-xr-x 2 ubuntu www-data    0 Jun  7 11:17 log
drwxr-xr-x 2 ubuntu www-data    0 Jun  6 14:13 public


Min værtsfil i Windows:


192.168.33.10   devhost.local


Så når jeg har standard config i min sites-enabled mappe kan jeg åbne gæstemaskinen gennem 192.168.33.10 og jeg kan se HTML-siden af ​​nginx, men når jeg fjerner denne standard config og aktiverer mit wildcard config (se link min config-fil), så jeg kan ikke få adgang til mine domæner. sudo nginx -t siger at alt er ok, også jeg forsøgte at genstarte min gæstemaskine, genindlæs/genstart nginx service. Også, jeg deaktiverer Windows 10 Firewall (jeg ved ikke, om den er deaktiveret fuldt ud, men siger, at den er deaktiveret). Logfilerne er også tomme og endda ikke oprettet, både adgangslog og fejllog.


Hvor er min fejl? Hvis du har brug for mere information, så spørg mig, jeg vil give.


Mange tak!

Bedste reference


følgende nginx opsætning skal hjælpe.


server {
  listen 80 default\_server;
  root /var/www/html/$host;
  index index.html index.php;
  location ~ .php {
    # ... fastcgi details
  }
}

Andre referencer 1


Jeg fandt løsningen.


Først og fremmest, når jeg kun holder en fil med config, hører min nginx ikke port 80, jeg kontrollerer sudo netstat -ntlp | grep LISTEN, men der var ikke port 80. Så jeg Google og fandt et andet spørgsmål om stackoverflow (se link i slutningen) .


Løsning : Genskab simlinket til min fil med config, efter at når jeg kører sudo nginx -t ser jeg nogle fejl. Så det ser ud til, at før disse filer var tomme eller sådan, men jeg bemærkede ikke dette, fordi jeg redigerer filen direkte i mappen sites-available.


Tak til alle!


Dette spørgsmål hjælper mig med at løse problemet: nginx lytter ikke til port 80