Vyhledávání na webu

Přesměrujte URL webu z jednoho serveru na jiný server v Apache


Jak jsme slíbili v našich předchozích dvou článcích (Provádět interní přesměrování pomocí mod_rewrite a Zobrazit vlastní obsah založený na prohlížeči), v tomto příspěvku vysvětlíme, jak provést přesměrování na zdroj, který byl přesunut z jednoho serveru na jiný server v Apache pomocí modul mod_rewrite.

Předpokládejme, že předěláváte intranetový web vaší společnosti. Rozhodli jste se uložit obsah a styl (soubory HTML, JavaScript a CSS) na jeden server a dokumentaci na jiný – možná robustnější.

Doporučená četba: 5 tipů, jak zvýšit výkon vašeho webového serveru Apache

Chcete však, aby tato změna byla pro vaše uživatele transparentní, aby mohli stále přistupovat k dokumentům na obvyklé adrese URL.

V následujícím příkladu byl soubor s názvem assets.pdf přesunut z /var/www/html v 192.168.0.100 (název hostitele: web) do stejného umístění v 192.168.0.101 (název hostitele: web2).

Aby uživatelé měli přístup k tomuto souboru při procházení stránky 192.168.0.100/assets.pdf, otevřete konfigurační soubor Apache na 192.168.0.100 a přidejte následující pravidlo přepisu (nebo do souboru .htaccess můžete také přidat následující pravidlo:

RewriteRule "^(/assets\.pdf$)" "http://192.168.0.101$1"  [R,L]

kde $1 je zástupný symbol pro cokoli, co odpovídá regulárnímu výrazu v závorkách.

Nyní uložte změny, nezapomeňte restartovat Apache a podíváme se, co se stane, když se pokusíme získat přístup k souboru assets.pdf na stránce 192.168.0.100/assets.pdf:

Doporučená četba: 25 užitečných triků „.htaccess“ pro webové stránky

Níže vidíme, že žádost o assets.pdf na 192.168.0.100 ve skutečnosti zpracovala 192.168.0.101.

tail -n 1 /var/log/apache2/access.log

V tomto článku jsme diskutovali o tom, jak provést přesměrování na prostředek, který byl přesunut na jiný server. Na závěr bych důrazně doporučil, abyste se podívali na průvodce mod_rewrite a průvodce přesměrováním Apache pro budoucí použití.

Jako vždy můžete použít níže uvedený formulář pro komentáře, pokud máte nějaké obavy ohledně tohoto článku. Těšíme se na setkání s Vámi!