Ich hatte meine Site unter dem Unterordner und entschied mich, auf die Stammebene der Domain zu wechseln.
Die größte Herausforderung bestand darin, alle Artikel auf demselben Pfad wie ein Unterordner zu halten, während die URL zum Stammverzeichnis der Domäne oder zu einem anderen Speicherort umgeleitet wurde.
Apache
Apache HTTP Server unterstützt RewriteCond
. Um diese Änderung vorzunehmen, bearbeiten Sie Ihre .htaccess
or httpd.conf
Datei und fügen Sie die folgenden Zeilen hinzu:
RewriteEngine on
RewriteBase /
RewriteRule ^subfolder/(.*)$ /$1 [R=301,NC,L]
Hier verwenden wir /
als unsere Basis und unsere RewriteRule
funktioniert für alle URLs in unserem Unterordner mithilfe regulärer Ausdrücke. R=301
Gibt eine permanente Umleitung an.
Nginx
Wir können eine ähnliche Umleitung mit dem Nginx-Webserver unter Verwendung des erreichen rewrite
Richtlinie in Ihrem /etc/nginx/nginx.conf
or /etc/nginx/conf.d/default.conf
:
location ^~ /subfolder {
rewrite ^/subfolder(.*)$ $1 last;
}
Hier ^~
Der Modifikator stellt sicher, dass diese Präfixposition weiterhin Vorrang hat, wenn Sie eine hinzufügen Regex Standorte in der Zukunft.
IIS
In IIS können wir das Rewrite-Modul verwenden, um URLs in einem Unterordner neu zu schreiben, und wir möchten so aussehen, als wären sie im Stammverzeichnis. Sie können Ihre bearbeiten web.config
Datei in Ihrem Webroot-Ordner (%SystemDrive%\inetpub\wwwroot
) mit so etwas wie:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Root_URL_Rewrite" stopProcessing="true">
<match url="^(.*)" />
<action type="Rewrite" url="/subfolder/{R:0}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
Alternativ können Sie zusätzlich die URL Rewrite-Benutzeroberfläche in IIS Manager verwenden, um eine eingehende Regel hinzuzufügen.
Cloudflare
Mit Cloudflare können wir eine ähnliche Umleitung erzielen, indem wir die folgenden Schritte ausführen:
- Melden Sie sich bei Ihrem Cloudflare-Konto an.
- Klicken Sie auf das entsprechende Cloudflare-Konto für die Domain, in der Sie die URL-Weiterleitung hinzufügen möchten.
- Klicken Sie auf die App Regeln und dann auf die Registerkarte Seitenregeln.
- Klicken Sie unter Seitenregeln auf Seitenregel erstellen. Das Dialogfeld "Seitenregel erstellen" wird für Ihre Domain geöffnet.
- Geben Sie nun unter Wenn die URL übereinstimmt, das URL-Muster für einen Unterordner ein, der der Regel entsprechen soll, z
https://example.com/subfolder
. - Klicken Sie anschließend auf Einstellung hinzufügen und wählen Sie im Dropdown-Menü die Option URL weiterleiten.
- Klicken Sie auf Statuscode auswählen und wählen Sie 301 (permanente Umleitung) oder 302 (temporäre Umleitung).
- Geben Sie die Ziel-URL für Ihre Stammdomäne ein und klicken Sie auf Speichern und bereitstellen, um den Vorgang abzuschließen.
Das obige Beispiel dient dazu, alles von https://geekflare.com/blog auf https://geekflare.com umzuleiten
Fazit
Wie Sie sehen können, ist das Umleiten oder Zuordnen eines Unterordners zu root oder einer anderen URL eine häufige Aufgabe und wird von den meisten gängigen Browsern mit unterschiedlichen Optionen unterstützt.
Als nächstes finden Sie heraus, wie Sie hosten können mehrere Websites auf einer einzigen IP.