Kubernetes apicibus & dolis: consuetudo errorum paginarum in NGINX Ingress
In hoc articulo loqui volo de duabus notis NGINX Ingress pertinentibus ad paginas errorum personales ostendendas, necnon limitationes quae in eis existunt et vias ad operandum circa eas pertinent.
1. Mutans default backend
Defalta, NGINX Ingress utitur defalta backend, quae debitam functionem exercet. Hoc significat quod, cum Ingress petens specificans exercitum qui non est in opibus Ingress, sequenti pagina accipimus cum responso 404 codice:
Sed clientes nostri magis ac saepius veniunt rogantes ut suam paginam ostendant cum logo corporato et aliis amaenitatibus pro vexillo 404. Ad hoc faciendum NGINX Ingress has facultatem constructum- redefine default-backend-service. Transimus forma viscus ut argumentum ad optionem eiusdem nominis namespace/servicename. Ministerium portus debet esse LXXX.
Ad hoc faciendum opus tuum vasculum (instruere) et servitium cum applicatione tua creare (exemplum exsecutionis in YAML ab ingressu repositorii), quod dabitur pro defectu backend.
Hic parva exemplum est:
~$ curl -i -XGET http://sadsdasdas.kube-cloud.my/
HTTP/1.1 404 Not Found
Date: Mon, 11 Mar 2019 05:38:15 GMT
Content-Type: */*
Transfer-Encoding: chunked
Connection: keep-alive
<span>The page you're looking for could not be found.</span>
Omnes ergo ditiones quae explicite non sunt creatae per YAML cum kind: Ingress, cadere in defaltam-backend. In enumeratione supra, haec regio facta est sadsdasdas.
2. HTTP tractantem errores in applicatione utens per default backend
Alia condicio postulata in erroribus HTTP desinentibus (404, 500, 502...) applicationis quae talibus adiunctis non processit (quae pulchrae paginae correspondentes non generantur). Hoc etiam ex desiderio tincidunt ut eidem errori in multiplici applicatione paginarum inserviat.
Ad hanc causam efficiendam in ministri parte opus est:
Praecepta supra a paragrapho de defectu backend sequere;
Clavem addere ad nginx-ingressus configurationem ConfigMap custom-http-errorse.g., cum valore 404,503 (perspicue respondet errori codicibus qui nova regula teguntur).
Effectus expectatus consecutus est: cum applicationis clientis currit et errorem accipit cum codice responsionis 404 vel 503, rogatio automatice redirecta erit ad novum default regressum...
Attamen, cum applicatione explicandi ad defectionem regressionis et consuetudinis http-errores, considerare debes notam magni momenti:
!!! Important The custom backend is expected to return the correct HTTP status code instead of 200. NGINX does not change the response from the custom default backend.
Ita res est, cum petitio redirecta est, caput capitis informationes utiles continebunt cum codice praecedente responsionis et informationis informationis (eorum indicem integrum praesto est. hic).
Hoc significat quod te ipsum oportet cura rectam responsum codice. Ecce exemplum ex documentis quomodo operatur.
Alia applicationes habent diversas default backends
Ut solutionem globalem non pro toto botro, sed solum ad certas applicationes applicat, primum debes versionem Ingress cohibere. Si aequet LXX vel altioremutere Annotationes vernaculas Ingress;
Possumus nolens oboedire default-backend ad quisque Ingress's per annotationes;
Possumus nolens oboedire custom-http-errors ad quisque Ingress's per annotationes.
Quam ob rem Ingress resource simile hoc spectabit:
Hoc in casu, errores 404 et 502 convertentur ad errorum paginas ministerium omnibus capitalibus necessariis.
Π prior versiones Ingress non habet haec factura (fatale committere ad 0.23). Et si 2 applicationes omnino diversas in botro tuo currentes habebis, et diversam servitutem defaltam et diversum codicem errorum pro unoquoque eorum dispensando denotare vis, ad hoc habebis utendi operis, quorum duos habemus.
Ingressus <0.23: accedere ad unum
Haec optio simplicior est. Applicatio quae suis paginis inservit, HTML regularem habebimus, quae inspicere caput capitis nescit et in codicibus rectam responsionem reddere. Talis applicatio evolvit cum Ingressu ab domicilio /error-pageset in catalogo ws erit redditus HTML.
Ministerium huius instituti debet esse generis ClusterIP.
Eodem tempore, in applicatione ubi errorem processuri sumus, in Ingressu addimus ministratorem snippetum vel configurationem-snippet cum sequenti contento:
Optio applicationis quae caput procedere potest... Et generatim haec via rectior est, a consuetudinariis erroribus mutuata. Utens manually (exscriptum) sinet te non mutare occasus globalis.
Gradus sunt huiusmodi. Nos creare eodem deployment cum applicatione quae possunt auscultare ad lacus necessaria et recte respondere. Servo-snippet ad applicationem Ingress cum sequenti contento addere:
Ut videre potes, ad quemlibet errorem quem ad processum pertinere volumus, opus est ut nostrum locum faciamus, ubi omnes necessarii capitis inseruntur, ut in "patria" unum. mos-error-pages. Hoc modo varias personas errorum paginas etiam pro singulis locis ac ministris creare possumus.