4XX: kliendipoolne tõrkeotsing (404 vs 410 jne) | Õppetund 17/34 | SEMrushi akadeemia

Meie sait suleti ja peame kasutajatele suunama 410. Meil on samas domeenis seadistatud väike üheleheline asendussait ja kohandatud tõrke leht 410. Tahaksime, et kõigile lehevaatamistele vastataks 410 ja suunataks vealehele, välja arvatud esileht, mis peaks viitama uuele index.html.

Siin on, mida .htaccess:

RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteRule !^index\.html$ index.html [L,R=410] 

See töötab, välja arvatud üks asi: Kui tippin domeeninime, saan lehe 410.

Koos www.example.com/index.html Näen registrilehte nii nagu peaks, aga lihtsalt www.example.com saab 410. Kuidas ma saaksin selle parandada?

Kui ma järgin seda, mida proovite teha, arvan, et see toimiks.

RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule .* - [L,G] 

Kui ressurssi pole olemas (pole fail ega kataloog), saatke 410.

  • Aitäh, see teeb täpselt seda, mida ma tahan. Hmm, olen üsna kindel, et proovisin mingil hetkel midagi sellist, valede tulemustega, kuid võib-olla oli midagi, mis polnud päris õige.

Looge leht nimega maintenance.html (või mis tahes faililaiend, mis on vajalik teie serveripoolse valitud keele jaoks) ja seejärel kasutage seda koodi:

 RewriteEngine on RewriteCond %{REQUEST_URI} !/maintenance.html$ [NC] RewriteCond %{REQUEST_URI} !\.(jpe?g?|png|gif) [NC] RewriteRule .* /maintenance.html [R=410,L]  

See näitab alati maintenance.html olenemata sellest, millist lehte nad oma brauseris taotlevad.

  • Aitäh, kuid see ei muuda olukorda: mul on 410-ga tõrke leht kõigest muust, kui minna otse saidile maintenance.html. Kui kontrollin saidi saadetud päiseid, on seal asukoht „Location”, mis osutab failile maintenance.html, kuid kuvatakse tõrke leht 410 (mul on .htaccessis määratud „ErrorDocument 410 /410.html”). Mis pole probleem - ma tahan kõigest näha vealehte 410. Ma tahan, et domeeninimi, ilma et oleks määratud ühtegi failinime, näitaks mulle index.html (või teie näites maintenance.html).
  • Lugesin teie küsimust uuesti läbi ja nägin, et minu lahendusel puudub avalehel ümbersuunamine. Võib-olla peaksite näitama tõrke lehte kõigile ja seejärel laskma selle lehe 10 sekundi pärast uuele saidile suunata? Nii on kõik muutusest teadlikud ja suunatakse uuele saidile. Selle tegemine oleks sama lihtne kui päise lisamine tõrke lehele ja kõik on valmis.
  • mis reegel on domeeninime iseseisev ümbersuunamine? ! / $ võimalik? See võib seda teha.

none: Charles Robertson | none