Přesměrujte podsložku do kořenové složky v Apache, NGINX, IIS a Cloudflare
Měl jsem svůj web pod podsložkou a rozhodl jsem se přejít na kořenovou úroveň domény.
Hlavním úkolem bylo udržet všechny články na stejné cestě jako podsložku a zároveň přesměrovat adresu URL do kořene domény nebo jiného umístění.
Apache
Apache HTTP server podporuje RewriteCond. Chcete-li provést tuto změnu, upravte svůj soubor .htaccess nebo httpd.conf a přidejte do něj následující řádky:
RewriteEngine on RewriteBase / RewriteRule ^subfolder/(.*)$ /$1 [R=301,NC,L]
Zde používáme / jako náš základ a naše RewriteRule funguje pro všechny adresy URL v naší podsložce pomocí regulárních výrazů. R=301 určuje trvalé přesměrování.
Nginx
Podobného přesměrování můžeme dosáhnout s webovým serverem Nginx pomocí direktivy rewrite ve vašem /etc/nginx/nginx.conf nebo /etc/nginx/conf.d/default.conf:
location ^~ /subfolder { rewrite ^/subfolder(.*)$ $1 last; }
Zde modifikátor ^~ zajišťuje, že toto umístění předpony bude mít i nadále přednost, pokud byste v budoucnu přidali umístění regulárních výrazů.
IIS
V IIS můžeme pomocí modulu Rewrite přepsat adresy URL, které jsou v podsložce a chceme, aby vypadaly, jako by byly v kořenu. Svůj soubor web.config můžete upravit ve složce webroot (%SystemDrive%inetpubwwwroot) pomocí něčeho jako:
<?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>
Případně můžete dodatečně použít uživatelské rozhraní pro přepsání adresy URL ve Správci služby IIS a přidat příchozí pravidlo.
mračna
Podobného přesměrování můžeme dosáhnout pomocí Cloudflare podle následujících kroků:
- Přihlaste se ke svému účtu Cloudflare.
- Klikněte na příslušný účet Cloudflare pro doménu, kam chcete přidat přesměrování URL.
- Klikněte na aplikaci Pravidla a poté na kartu Pravidla stránky.
- V části Pravidla stránky klikněte na Vytvořit pravidlo stránky. Otevře se dialogové okno Vytvořit pravidlo stránky pro vaši doménu.
- Nyní v části Pokud se adresa URL shoduje zadejte vzor adresy URL pro podsložku, která by měla odpovídat pravidlu, například https://example.com/podsložka.
- Dále klikněte na Přidat nastavení a z rozbalovací nabídky vyberte Přesměrování URL.
- Klikněte na Vybrat stavový kód a vyberte 301 (trvalé přesměrování) nebo 302 (dočasné přesměrování).
- Zadejte cílovou adresu URL své kořenové domény a dokončete kliknutím na tlačítko Uložit a nasadit.
Výše uvedený příklad je přesměrování všeho z https://etechblog.cz.com/blog na https://etechblog.cz.com
Zabalit se
Jak můžete vidět, přesměrování nebo mapování podsložky na kořenovou nebo jinou adresu URL je běžný úkol a většina populárních prohlížečů jej podporuje s různými možnostmi.
Dále zjistěte, jak můžete hostovat více webových stránek na jedné IP.
Užili jste si čtení článku? Co takhle sdílet se světem?