So lösen Sie das Problem, dass Nginx mehrere Sites für die gemeinsame Nutzung von Port 80 konfiguriert

不言
Freigeben: 2023-03-31 14:52:01
Original
7861 Leute haben es durchsucht

Dieser Artikel stellt hauptsächlich die Lösung für Nginx vor, um mehrere Sites für die gemeinsame Nutzung von Port 80 zu konfigurieren. Dieser Artikel stellt es Ihnen ausführlich vor und hat einen bestimmten Referenzwert. Freunde, die es benötigen, können darauf verweisen

Nur Verwenden Sie „Ändern Sie einen Ort“ und fügen Sie das Verzeichnis der virtuellen Host-Konfigurationsdatei hinzu, auf das Sie im http-Modul verweisen möchten:

Zum Beispiel: include /usr/local/nginx/default.d/*.conf;

http {
  log_format main '$remote_addr - $remote_user [$time_local] "$request" '
           '$status $body_bytes_sent "$http_referer" '
           '"$http_user_agent" "$http_x_forwarded_for"';
  access_log /var/log/nginx/access.log main;
  sendfile      on;
  tcp_nopush     on;
  tcp_nodelay     on;
  keepalive_timeout  65;
  types_hash_max_size 2048;
  include       /etc/nginx/mime.types;
  default_type    application/octet-stream;
  include /usr/local/nginx/default.d/*.conf; //就这里加一行就可以了
}
Nach dem Login kopieren

2. Erstellen Sie ein virtuelles Host-Konfigurationsverzeichnis:

Erstellen Sie einen /usr/local/nginx/-Ordner unter default.d, um die Website-Konfigurationsdateien gezielt zu platzieren.

Meine Konfiguration posten:

/usr/local/nginx/default.d/mytest.conf

server {
  listen    80 ;  //注意这里,要把默认的那个default_server去掉,因为我们在下面要单独配置域名访问,所以这里不要留default_server,不然会报错。
  server_name mytest.com; //这里写你想设置的域名,可以写多个,与名之间用空格隔开
  root     /mnt/share/mytest.com;  //这里是你虚拟机的根目录,写绝对路径
  # Load configuration files for the default server block.

  location / {
    index index.php index.html index.htm; //这里配置默认访问的页面
  }
  location ~* \.php$ {  //这里配置php解析.php文件

    fastcgi_index  index.php;
    fastcgi_pass  127.0.0.1:9000;
    include     fastcgi_params;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    fastcgi_param  SCRIPT_NAME    $fastcgi_script_name;
  }
  error_page 404 /404.html;  //默认的错误页面
    location = /40x.html {
  }
  error_page 500 502 503 504 /50x.html;
    location = /50x.html {
  }
}
Nach dem Login kopieren

Noch eine:

server {
    listen    80;
    server_name www.mytest1.com;
    root     /var/www/html;
    index index.html index.htm index.php;
    location / {
      try_files $uri $uri/ /index.php?$query_string;
    }
    location = /favicon.ico {
     log_not_found off;
    }
    location ~ \.php$ {
      fastcgi_pass  127.0.0.1:9000;
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      include    fastcgi_params;
    }
}
Nach dem Login kopieren

3. Wenn Wenn Sie andere virtuelle Maschinen erstellen möchten, kopieren Sie einfach die obige Datei und ändern Sie die von mir markierten Stellen!

4. Nachdem die Konfigurationsdatei der virtuellen Maschine konfiguriert wurde, müssen Sie unter Linux den oben genannten Domänennamen unter der Hosts-Datei hinzufügen, andernfalls haben Sie weiterhin Zugriff auf das externe Netzwerk.

vim /etc/hosts
127.0.0.1  mytest1.com
127.0.0.1  mytest.com
Nach dem Login kopieren

5. Wenn wir in der virtuellen Maschine unter Windows auf die Website zugreifen möchten, müssen wir auch die Hosts-Datei unter Windows konfigurieren, zum Beispiel:

192.168.0.27  mytest1.com
192.168.0.27  mytest.com
Nach dem Login kopieren

6. Aufgetretene Probleme:

nginx: [emerg] a duplicate default server for 0.0.0.0:80 in /etc/nginx/vhosts/
Nach dem Login kopieren

Wenn dieses Problem auftritt, muss es so sein:

server {
  listen    80
Nach dem Login kopieren

Entfernen Sie alles nach 80 an dieser Stelle und lassen Sie nur die Portnummer 80 übrig. Entfernen Sie es Problem kann gelöst werden.

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website.

Verwandte Empfehlungen:

Nginx-Konfiguration PATHINFO hide thinkphp index.php

Das obige ist der detaillierte Inhalt vonSo lösen Sie das Problem, dass Nginx mehrere Sites für die gemeinsame Nutzung von Port 80 konfiguriert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!