Ich habe also versucht, meine Site so zum Laufen zu bringen, dass:
example.com zeigt example.com/index.html.
example.com/test zeigt example.com/test.html
und so weiter.
Meine aktuelle Konfigurationsdatei sieht also so aus:
server {
listen 80;
listen [::]:80;
server_name example.com;
root /var/www/html;
index index.html index.php;
location / {
try_files $uri.html $uri $uri/ @htmlext;
}
location ~ \.html$ {
try_files $uri =404;
}
location @htmlext {
rewrite ^(.*)$ $1.html last;
}
error_page 404 /404.html;
}
Ich habe gestern den ganzen Tag gegoogelt und konnte es nicht zum Laufen bringen. Also vielen Dank im Voraus!
Antwort1
server {
listen 80;
listen [::]:80;
server_name example.com;
root /var/www/html;
index index.html index.php;
location / {
try_files $uri $uri.html $uri/ /index.html;
}
error_page 404 /404.html;
}
Antwort2
Die folgende Konfiguration bietet Ihnen Folgendes:
curl http://example.com/test
--> Ausgabe: Inhalt von test.html
curl http://example.com/
--> Ausgabe: Inhalt von index.html
server {
listen 80;
listen [::]:80;
server_name example.com;
root /var/www/html;
index index.html index.php;
location /test {
try_files $uri.html $uri $uri/;
}
location / {
try_files $uri.html $uri $uri/;
}
location ~ \.html$ {
try_files $uri =404;
}
error_page 404 /404.html;
}