Kuidas saiti häkkida

Mul on mõned .inc-failid, millele tahan juurdepääsu blokeerimist veebilehtede kaudu. Kui tahan neile failidele juurde pääseda, tahan need lihtsalt teisele lehele suunata või visata 404.

Olen siiani proovinud seda, mis ei piira midagi:

RewriteCond %{REQUEST_URI} .*\.(inc) RewriteRule ^(.*)/ /logout.php [R=404,L] 

Kuidas blokeerida juurdepääs kõigile failidele, mille laiend on ".inc"

  • 404 on Apache'i vaikevastus. Niikaua kui neid faile tegelikult pole, peaksid nad juba andma vastuse 404. Kui teil pole muid reegleid, mis neid juba ümber kirjutavad. Kas saate lisada rohkem oma .htaccessi failist ja oma seadistuse kohta rohkem?
  • Failid on olemas, et mul oleks vaja blokeerida veebikasutajate juurdepääs nendele failidele

Tavaline viis nendele failidele juurdepääsu blokeerimiseks oleks teenuse 403 Forbidden kasutamine.

Näiteks mod_authz_core kasutamine Apache 2.4-s:

 Require all denied  

Kui soovite konkreetselt vastata 404-ga, võite kasutada mod_rewrite. See peab minema teie konfiguratsioonifaili ülaossa. Näiteks:

RewriteEngine On RewriteRule \.inc$ - [R=404] 

Mõlemad reeglid tagastavad tõrke dokumendi 403 või 404, mida saate selle abil kohandada ErrorDocument direktiiv. Näiteks:

ErrorDocument 404 /errors/my404.html 

Ainult mõned märkused koodinäidise kohta:

RewriteCond %{REQUEST_URI} .*\.(inc) RewriteRule ^(.*)/ /logout.php [R=404,L] 

See võis siiski "töötada" RewriteRule muster (st. ^(.*)/) eeldab, et URL-il peab olema kaldkriips, mis ei kehti ühegi dokumendijuure faili kohta.

See sobib ka .inc kõikjal URL-i sees. The RewriteCond Direktiivi pole siin vaja - saate teha kõik mustris sobitamise jaotises RewriteRule direktiiv.

Ei ole vaja jäädvustamine alamustrid, st. sulgudes ümber (.*) ja (inc). See loob "taustreferentsid", mida siin ei kasutata.

Kui määrate "ümbersuunamise" koodi peale 3xx, siis asendamine string (st. /logout.php) eiratakse. Välist ümbersuunamist ei käivitata. Peaksite lihtsalt määrama ühe - (sidekriips) sel juhul. Samuti L (last) lippu ei nõuta.


Peale: Laiendiga failide omamine pole hea mõte .inc kui need on teie projekti kaasatavad / skriptifailid (välja arvatud juhul, kui neid võib-olla hoitakse väljaspool teie dokumendijuuri). Nagu te võisite aru saada, näeb brauser otse nõudmisel tõenäoliselt teksti / tavalisena ja kuvab need lihtsalt brauseris sellisena, nagu see on. Võimaluse korral on soovitatav kasutada alati õiget skriptilaiendit. nt. foo.inc.php.

  • 1 Hinnake teavet ja jah, põhjus, miks ma algselt piirata tahtsin, oli tingitud sellest, et brauser kuvas .inc-faililaiendi tõttu php-koodi

none: Charles Robertson | none