Extensionless URL ve IIS
někdy je důležité odstranit – nebo Skrýt-příponu souboru skriptů, které používáte. Zabezpečení nejasností může být důvodem, pokud nechcete, aby ostatní věděli, jaký skriptový jazyk používáte pro své webové stránky nebo pro statické hostitele stránek. Tento příklad skryje příponu .php
pomocí modulu přepisování URL IIS na webu připraveném k použití.config & .příklad htaccess.
proč je třeba skrýt přípony souborů v URL?
nejsem fanouškem zabezpečení nejasností a nikdy jsem se s tím nesetkal jako výsledek bezpečnostního skenování.
zabezpečení utajením je jedním z důvodů, proč Skrýt příponu souboru v URL, pokud nechcete, aby ostatní věděli, jaký skriptový jazyk používáte pro své webové stránky. Optimalizace pro vyhledávače (SEO) je dalším platným důvodem, nebo možná jen chcete skrýt příponu souboru bez zjevného důvodu.
neexistuje žádný přínos pro SEO, pokud vím.
tuto techniku však můžete použít ke zkrácení adresy URL. Oholí čtyři až pět znaků z adresy URL („.Linux“, „.html“, „.aspx“). A někteří říkají, že web funguje rychleji, protože webový server může odpovídat URL bez rozšíření do složek (adresářů) rychleji než URL s příponou do souboru.
někteří říkají. Nemám k tomu žádné údaje ani další informace.
skrýt .rozšíření php s modulem pro přepis URL ve službě IIS
zde je příklad modulu pro přepis URL IIS, který můžete skrýt .rozšíření php v URL.
tato technika je také známá jako Multiviews nebo vyjednávání obsahu v Apache a jiní ji nazývají adresy URL bez rozšíření. Níže je uveden příklad použití .htaccess v IIS.
o MultiViews, nebo obsah vyjednávání:
efekt MultiViews je následující: pokud server obdrží požadavek na /some / dir / foo, pokud má/some / dir povolené MultiViews a / some / dir / foo neexistuje, pak server přečte adresář hledající soubory s názvem foo.* , a účinně padělá typovou mapu, která pojmenuje všechny tyto soubory a přiřadí jim stejné typy médií a kódování obsahu, jaké by mělo, kdyby klient požádal o jeden z nich jménem. Poté vybere nejlepší shodu s požadavky klienta.
vložte následující přepis do souboru web.config
, abyste skryli .rozšíření php ve vaší URL adrese. příklad se opravdu neskrývá .php z adresy URL, ale to vám umožní použít URL bez rozšíření jako www.example.com/index
.
modul pro přepis URL IIS přidá část .php
do adresy URL na pozadí.
Code language: HTML, XML (xml)
Skrýt rozšíření pro požadavky, které již obsahují .rozšíření php
rozšířenějším příkladem je přesměrování všech požadavků pomocí .php v URL k jejich variantě bez rozšíření. Takže když návštěvník přijde přes /index.php
, rozšíření je odstraněno a bude nasměrováno na /index
.
naše přepisovací pravidlo mapuje konečný požadavek zpět na index.php bez zobrazení rozšíření.
Code language: HTML, XML (xml)
před uvedením do výroby tyto příklady vždy otestujte.
emulovat Apache Multiviews ve službě IIS pomocí .soubor htaccess a Helicon Ape
, pokud používáte .htaccess ve službě IIS můžete vytvořit stejný efekt Multiviews pro skrytí .rozšíření php. Aby k tomu došlo, musíte deklarovat několik přepisovacích podmínek a přepisovacích pravidel (RewriteCond
a RewriteRule
). Úhledná část je, že by to mělo fungovat také s Linuxem, Apache a mod_rewrite, což činí toto řešení napříč platformami!
Multiviews .příklad htaccess
do souboru .htaccess
přidejte následující konfiguraci přepisování:
Code language: Apache (apache)
.vysvětlení pravidel htaccess:
první blok kódu používá dvě kontroly RewriteCond
k ověření, zda je adresa URL soubor nebo složka. To je úplnější, jasnější a rychlejší než vytvoření výjimky pro každý možný typ souboru. RewriteRule
přepíše adresu URL-která většinou neobsahuje příponu souboru-do souboru PHP s tímto názvem.
vzor ^(+)(?:/(.+))?$
je vysvětlen následovně:
- uzavírající znaky
^
a$
označují začátek a konec řetězce; což brání pravidlu, aby někdy odpovídalo pouze části adresy URL - skupina
(+)
odpovídá názvu souboru PHP jako. A najde všechny znaky až po lomítko nebo konec řetězce
- blok
(?:/(+).)?
se pokusí najít lomítko, následované dalšími znaky, a uloží jej jako
náhrada .php?(?2p=)
používá podmíněný odkaz:
- řetězec dotazu je vyplněn
p=
, pokud existuje.
nakonec se přidá pravidlo, které skryje .rozšíření php.
tím se zabrání vyhledávači v nalezení duplicitního obsahu, a tím se zabrání postihu za pozici vašeho webu ve výsledcích vyhledávání.
existují i jiné způsoby.
odstranit .php rozšíření s.htaccess z URL
Chcete-li odstranit .rozšíření php z adresy URL s.htaccess, můžete uložit následující do nového .soubor htaccess:
Code language: Apache (apache)
Code language: Apache (apache)
nebo použijte MultiViews:
Code language: Apache (apache)
tím se odstraní rozšíření, díky němuž jsou adresy URL uživatelsky přívětivější a-někteří říkají-SEO vyhledávač přátelský. Použijte to, co vám nejlépe vyhovuje, a přidejte kanonickou metaznačku do hlavy HTML, abyste se vyhnuli duplicitnímu obsahu (kde je to vhodné).
Ahoj, jmenuji se Jan. Nejsem hacker, kodér, vývojář nebo guru. Jsem pouze správce systémů, dělám svou každodenní věc na Vevida ( část Yourhosting) / CLDIN.
Chcete – li více ad-a sledování bez webové stránky zkušenosti, prosím BackMe s malým darem (backme.org) nebo Paypal.