Kuidas parandada 404 WordPressi veebisaidi viga cPaneli 404 viga ei leitud | Hindi juhendaja | KongHosting

Mul on nõue kontrollida htaccessis mitte-HTTPS-i URL-e.

Minu arusaam on selline RewriteCond %{HTTPS} !=on sobib kõigile URL-idele, mis pole HTTPS. Kuid katsetades leian RewriteCond %{HTTPS} !=on sobib mõlemad HTTP ja HTTPS URL-id.

Kuid, RewriteCond %{SERVER_PORT} !^443$ kas sobivad mitte HTTPS-i URL-id õigesti? Kas mul on millestki puudu arusaam % {HTTPS}! = Sees?

  • Oleks RewriteCond %{SERVER_PORT} ^443$ sobitada HTTPS-i URL-id?

Minu arusaam on selline RewriteCond %{HTTPS} !=on sobib kõigile URL-idele, mis pole HTTPS.

Jah, see on õige. Selles kontekstis HTTPS on serveri muutuja, mille seadis Apache teie serveri tabanud päringu põhjal.

Kuid katsetades leian RewriteCond %{HTTPS} !=on sobib mõlemad HTTP ja HTTPS URL-id.

See pole võimalik, kui SSL-sert on installitud otse teie rakendusserverisse. Kui aga kasutate SSL-i puhverserverit, kus SSL-i haldab esiotsa puhverserver ja SSL-puhverserverist teie rakendusserveriga on ühendus tavaline vana HTTP (näiteks Cloudflare tasuta paindliku SSL-i puhul), siis see tõesti ilmuma nii, sest teie server teenindab liiklust ainult HTTP kaudu.

Kuid, RewriteCond %{SERVER_PORT} !^443$ kas sobivad mitte HTTPS-i URL-id õigesti?

See on aga eeltooduga vastuolus! Kui see töötab, peaks ka kontroll vastama HTTPS. See näib viitavat sellele, et näete võib-olla eespool vahemällu salvestatud vastust?

  • Kui selle põhjuseks on koormuse tasakaalustaja, vajavad nad reeglit, mis põhineb %{HTTP:X-Forwarded-Proto}. Sellel StackOverflow küsimuses on reegel, mis suunab ümber, kui tal pole seda päist või kui Apache haldab ise HTTPS-i: stackoverflow.com/questions/26620670/…
  • "kui tal pole seda päist või kui Apache haldab HTTPS-i" - kuigi turvalisuse huvides peaksite kontrollima ainult X-Forwarded-Proto HTTP päringu päis, kui teate, et olete selle määranud puhverserveri (või koormuse tasakaalustaja) taga. Vastasel juhul võib potentsiaalselt pahatahtlik taotlus selle päise sisestada ja sundida teie süsteemi mitte nii käituma, nagu peaks. mitte suunata HTTPS-i (mis juhtub StackOverflowi postitatud "üldise" lahendusega).

none: Charles Robertson | none