Nginx рдкрд╛рдХрдХреГрддреА: HTML рддреЗ PDF рд░реВрдкрд╛рдВрддрд░рдг

рдПрдЪрдЯреАрдПрдордПрд▓ рддреЗ рдкреАрдбреАрдПрдлрдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рдг рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдореНрд╣рд╛рд▓рд╛ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ nginx рдЖрдгрд┐ рддреНрдпрд╛рдЪреЗ рдкреНрд▓рдЧрдЗрди html2pdf. (рдореА рдорд╛рдЭреНрдпрд╛ nginx рдлреЛрд░реНрдХрдЪреЗ рджреБрд╡реЗ рджрд┐рд▓реЗ рдЖрд╣реЗрдд, рдХрд╛рд░рдг рдореА рдХрд╛рд╣реА рдмрджрд▓ рдХреЗрд▓реЗ рдЖрд╣реЗрдд рдЬреЗ рдЕрджреНрдпрд╛рдк рдореВрд│ рднрд╛рдВрдбрд╛рд░рд╛рдд рдврдХрд▓рд▓реЗ рдЧреЗрд▓реЗ рдирд╛рд╣реАрдд. рддреБрдореНрд╣реА рджреЗрдЦреАрд▓ рд╡рд╛рдкрд░реВ рд╢рдХрддрд╛. рддрдпрд╛рд░.)

рдлрд╛рдИрд▓рдордзреВрди HTML рд▓рд╛ PDF рдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА

location =/html_to_pdf_from_file {
    html2pdf on; # ╨▓╨║╨╗╤О╤З╨░╨╡╨╝ pdf-╤Д╨╕╨╗╤М╤В╤А
}

HTML рд▓рд╛ рдордЬрдХреВрд░рд╛рддреВрди PDF рдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА

location =/html_to_pdf_from_text {
    html2pdf on; # ╨▓╨║╨╗╤О╤З╨░╨╡╨╝ pdf-╤Д╨╕╨╗╤М╤В╤А
    return 200 "<p style="background-color: #c11">╨Ч╨┤╤А╨░╨▓╤Б╤В╨▓╤Г╨╣, ╨╝╨╕╤А!</p>"; # ╨▓╨╛╨╖╨▓╤А╨░╤Й╨░╨╡╨╝ HTML
}

рдкреНрд░реЙрдХреНрд╕реА рд╡рд░реВрди HTML рд▓рд╛ PDF рдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА

location =/html_to_pdf_from_proxy {
    html2pdf on; # ╨▓╨║╨╗╤О╤З╨░╨╡╨╝ pdf-╤Д╨╕╨╗╤М╤В╤А
    proxy_pass somewhing_that_returns_html; # ╨┐╨╡╤А╨╡╨╜╨░╨┐╤А╨░╨▓╨╗╤П╨╡╨╝ ╨╜╨░ ╤В╤Г╨┤╨░, ╨│╨┤╤Г ╨▓╨╛╨╖╨▓╤А╨░╤Й╨░╨╡╤В╤Б╤П HTML
}

рдкрд░рд┐рдгрд╛рдореА, рдпрд╛ рд╕реНрдерд╛рдирд╛рдВрд╡рд░ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛рдирд╛, HTML рдРрд╡рдЬреА, рддреНрдпрд╛рдЪреНрдпрд╛ рдЖрдзрд╛рд░рд╛рд╡рд░ рд╡реНрдпреБрддреНрдкрдиреНрди рдХреЗрд▓реЗрд▓реА PDF рдкрд░рдд рдХреЗрд▓реА рдЬрд╛рдИрд▓ (рд╡рд╛рдкрд░реВрди wt рдкрд╛рд╕реВрди рдЬрдирд░реЗрдЯрд░).

рд╣реЗ рдЕрд░реНрдерд╛рддрдЪ рд╕рд░реНрд╡реЛрддреНрдХреГрд╖реНрдЯ рдЬрдирд░реЗрдЯрд░ рдирд╛рд╣реА, рдореА рдпрд╛рдЖрдзреА рдЖрдгрдЦреА рдХрд╛рд╣реА рдкреНрд░рдпрддреНрди рдХреЗрд▓реЗ, рдкрд░рдВрддреБ рддреНрдпрд╛рдд рддреНрд░реБрдЯреА рдЖрдврд│рд▓реНрдпрд╛ htmldoc ╨╕ wkhtmltopdf.

рд╕реНрддреНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛