Udvidelsesløse URL ‘ er i IIS
nogle gange er det vigtigt at fjerne-eller skjule – filtypenavnet for scripts, du bruger. Sikkerhed ved uklarhed kan være den grund, hvis du ikke vil have andre til at vide, hvilket script sprog du bruger til din hjemmeside eller til statiske site værter. Dette eksempel skjuler .php
– udvidelsen ved hjælp af IIS URL-Omskrivningsmodulet på et klar til brug.config & .htaccess eksempel.
- hvorfor behovet for at skjule filtypenavne i URL ‘ er?
- Skjul .php udvidelse med URL omskrivning modul på IIS
- Skjul udvidelse for anmodninger, der allerede indeholder en .php udvidelse
- emulere Apache Multivisninger i IIS ved hjælp af en .htaccess fil og Helicon Ape
- Fjern .php udvidelse med .htaccess fra URL ‘ er
jeg er ingen fan af sikkerhed ved uklarhed, og jeg har aldrig stødt på dette som resultatet af en sikkerhedsscanning.
sikkerhed ved uklarhed er en grund til at skjule filtypen i URL ‘ er, hvis du ikke ønsker andre at vide, hvad script sprog, du bruger til din hjemmeside. Søgemaskineoptimering (SEO) er en anden gyldig grund, eller måske vil du bare skjule filtypen uden nogen åbenbar grund.
der er heller ingen fordel for SEO, så vidt jeg ved.
du kan dog bruge denne teknik til at forkorte URL ‘ er lidt. Det barberer fire til fem tegn fra URL ‘ en (“.php”,”.HTML”, “.”). Og nogle siger, at en hjemmeside fungerer hurtigere, fordi en internetserver kan matche URL ‘er uden udvidelser til mapper (mapper) hurtigere end URL’ er med en udvidelse til en fil.
nogle siger. Jeg har ingen data eller yderligere oplysninger om dette.
Skjul .php udvidelse med URL omskrivning modul på IIS
her er en IIS URL omskrivning modul eksempel for dig at skjule .php udvidelse i URL ‘ er.
denne teknik er også kendt som Multivisninger eller indholdsforhandling i Apache, og andre kalder det udvidelsesløse URL ‘ er. Se nedenfor for et eksempel at bruge med .htaccess i IIS.
om multi-visninger eller indholdsforhandling:
effekten af Multivisninger er som følger: Hvis serveren modtager en anmodning om /nogle/dir/foo, hvis /nogle/dir har Multivisninger aktiveret, og /nogle/dir/foo ikke findes, læser serveren mappen på udkig efter filer med navnet foo.* , og effektivt forfalsker et typekort, der navngiver alle disse filer, tildeler dem de samme medietyper og indholdskodninger, det ville have, hvis klienten havde bedt om en af dem ved navn. Det vælger derefter det bedste match til kundens krav.
sæt følgende omskrivning i en web.config
fil for at skjule .php-udvidelse i din URL ‘ er. godt, eksemplet skjuler ikke rigtig .php fra URL ‘en, men dette giver dig mulighed for at bruge udvidelsesløse URL’ er som www.example.com/index
.
IIS’ URL-Omskrivningsmodul tilføjer .php
– delen til URL ‘ en i baggrunden.
Code language: HTML, XML (xml)
Skjul udvidelse for anmodninger, der allerede indeholder en .php udvidelse
et mere udvidet eksempel er at omdirigere alle anmodninger med .php i URL ‘ en til deres udvidelsesløse variant. Så når en besøgende kommer ind gennem /index.php
, fjernes udvidelsen, og han vil blive dirigeret til /index
.
vores Omskrivningsregel kortlægger den endelige anmodning tilbage til indeks.php uden at vise udvidelsen.
Code language: HTML, XML (xml)
test altid sådanne eksempler, før de sættes i produktion.
emulere Apache Multivisninger i IIS ved hjælp af en .htaccess fil og Helicon Ape
hvis du bruger .htaccess i IIS kan du oprette den samme Multivisningseffekt for at skjule .php udvidelse. For at dette skal ske, skal du erklære et par omskrivningsbetingelser og omskrivnings regler (RewriteCond
og RewriteRule
). Den pæne del er, at dette også skal fungere med Apache, Apache og mod_skriv, hvilket gør denne løsning på tværs af platforme!
flere visninger .htaccess eksempel
i din .htaccess
fil, tilføje følgende omskrivning konfiguration:
Code language: Apache (apache)
.htaccess regler forklaring:
den første kodeblok bruger to RewriteCond
kontroller for at kontrollere, om URL ‘ en er en fil eller mappe eller ej. Dette er mere komplet, klar og hurtigere end at skabe en undtagelse for hver filtype muligt. RewriteRule
omskriver URL ‘ en – der for det meste ikke indeholder en filtypenavn-til en PHP-fil med det navn.
mønsteret ^(+)(?:/(.+))?$
forklares som følger:
- de omsluttende tegn
^
og$
markerer begyndelsen og slutningen af strengen; hvilket forhindrer reglen i undertiden kun at matche en del af URL ‘ en - gruppen
(+)
matcher navnet på PHP-filen som. Og den finder alle tegnene op til en skråstreg eller slutningen af strengen
- blokken
(?:/(+).)?
forsøger at finde en skråstreg efterfulgt af andre tegn og gemmer den som
udskiftningen .php?(?2p=)
bruger en betinget reference:
- forespørgselsstrengen er fyldt med
p=
hvisfindes.
endelig tilføjes en regel, der skjuler .php udvidelse.
dette forhindrer en søgemaskine i at finde duplikeret indhold og forhindrer således en straf for din sides placering i søgeresultaterne.
der er også andre måder.
Fjern .php udvidelse med .htaccess fra URL ‘ er
for at fjerne .php udvidelse fra en URL med .htaccess, du kan gemme følgende i en ny .htaccess-fil:
Code language: Apache (apache)
Code language: Apache (apache)
eller brug Multivisninger:
Code language: Apache (apache)
dette fjerner udvidelsen gør URL ‘ erne mere bruger og-nogle siger – SEO søgemaskine venlige. Brug det, der fungerer bedst for dig, og tilføj et kanonisk metatag i dit HTML-hoved for at undgå duplikatindhold (hvor det er relevant).
Hej, Jeg hedder Jan. Jeg er ikke en hacker, koder, udvikler eller guru. Jeg er blot en systemadministrator, der gør min daglige ting på Vevida (en del af Yourhosting) / CLDIN.
hvis du ønsker en mere annonce-og tracking-fri hjemmeside oplevelse, bedes BackMe med en lille donation (backme.org) eller Paypal.