2017-08-20 9 views
0

Ich bin neu bei Nginx, ich muss alle * .html Erweiterungen in meiner URL, z. http://mywebsite.com/events.html/beauty-must-haves.htmlWie alle .html von der URL | zu entfernen Nignx

Ich habe viele Lösungen versucht, um dies zu beheben, aber nicht in der Lage zu beheben, kann mir jemand freundlicherweise helfen, dies zu beheben. Dies sind keine hartcodierten Seiten, es generiert zur Laufzeit den folgenden Link nicht, um es zu beheben.

how to serve html files in nginx without showing the extension in this alias setup

Ich brauche es SEO freundlich zu sein z.B. http://mywebsite.com/events/beauty-must-haves

Vielen Dank im Voraus.

+1

Mögliche Duplikate von [wie html-Dateien in nginx geliefert werden, ohne die Erweiterung in diesem Alias-Setup anzuzeigen] (https://stackoverflow.com/questions/15451191/how-to-serve-html-files-in-ginx- ohne-zeigt-die-Erweiterung-in-diesem-Alias-Set) – jonrsharpe

Antwort

0

Der folgende Code hat mich, was ich suchte, aber es entbindet nicht von der Erweiterung .html in der URL, es entfernt nur die Endung Erweiterung:

rewrite ^(/.*)\.html(\?.*)?$ $1$2 permanent; 
rewrite ^/(.*)/$ /$1 permanent; 

try_files $uri/index.html $uri.html $uri/ $uri =404; 

Jede Hilfe bitte ...?

0

Der folgende Code funktioniert bei mir die Erweiterungen in der Mitte der URL zu verstecken, aber es Umleitung zweimal:

rewrite ^(.+)\.html(/.*)?$ $1$2 permanent; 
rewrite ^/(.*)/$ /$1 permanent; 

try_files $uri/index.html $uri.html $uri/ $uri =404; 
  1. Erstens, es leitet das Ende .html
  2. Zweitens ist es Umleitungen die Mitte .html

Ich benötige es in einem einzigen Bereich zu sein. Irgendwelche! Dea?