2017-07-20 1 views
0

Ich brauche URL http://myexample.org (root) umleiten zu meinem lokalen index.htm, nicht um es in Github umschreiben ... Wie es geht?Wie verwende ich index.htm in diesem Skript?


Ich habe viele Variationen von location =/{ try_files ...} getestet, aber niemand funktioniert. Verwenden eines UBUNTU 16 LTS-Servers.

/etc/nginx/sites-available/myexample.org

server { 
     server_name myexample.org; 
     root /var/www/myexample.org; 
     index index.html index.htm; 
     # ?? location =/ {...} is not working! 
     location/{ 
      # also not work a root rewrite 
      # rewrite ^/?$ index.htm break; 
      rewrite ^/?git$ 
       http://github.com/myexample-org/test 
       break; 
      rewrite ^/?tickets$ 
       http://github.com/myexample-org/test/issues 
       break; 
      rewrite ^/?(.+)$ 
       http://github.com/myexample-org/test/$1 
       break; 
     } 
} 

Antwort

0

ändern Ihre letzte Rewrite Richtlinie ^/(.+)$

0

location = / entsprechen, werden für eine index nicht funktionieren, da die neu geschrieben URI location / übereinstimmen, die dann Ihre endgültige rewrite Aussage treffen wird.

Ihre ursprüngliche Lösung (ein paar Fragen vor) mit der benannten Stelle, sollte funktionieren:

root /path/to/file; 
index index.htm; 

location/{ 
    try_files $uri $uri/ @rewrite; 
} 
location @rewrite { 
    rewrite ^/... http://example.com/...; 
    rewrite ^/... http://example.com/...; 
    rewrite ^/... http://example.com/...; 
} 

Unter der Annahme, dass eine Datei namens /path/to/file/index.htm auf existiert diese Server. Das Flag break ist nicht erforderlich, da die Ziel-URL mit http:// beginnt. Wenn Sie ein Flag hinzufügen möchten, wäre das Flag redirect oder permanent relevant. Details siehe this document.

Verwandte Themen