Seeking Help with "html-pdf" Package Error on Render.com

I’m currently facing an issue with the “html-pdf” package in my Node.js backend deployed on Render.com and I’m seeking some assistance from the community.

Here’s the situation: I have integrated the “html-pdf” package (version 2.2.0) into my Node.js application to generate PDFs. Locally, everything works perfectly fine, and I’m able to generate and download PDFs without any issues. However, when I deploy the Node.js backend to Render.com and attempt to download a PDF, the process fails, and I receive the following error:

 Error: html-pdf: Received the exit code '1'
Aug 30 06:16:35 PM  Auto configuration failed
Aug 30 06:16:35 PM  140353200447104:error:25066067:DSO support routines:DLFCN_LOAD:could not load the shared library:dso_dlfcn.c:185:filename(libssl_conf.so): libssl_conf.so: cannot open shared object file: No such file or directory
Aug 30 06:16:35 PM  140353200447104:error:25070067:DSO support routines:DSO_load:could not load the shared library:dso_lib.c:244:
Aug 30 06:16:35 PM  140353200447104:error:0E07506E:configuration file routines:MODULE_LOAD_DSO:error loading dso:conf_mod.c:285:module=ssl_conf, path=ssl_conf
Aug 30 06:16:35 PM  140353200447104:error:0E076071:configuration file routines:MODULE_RUN:unknown module name:conf_mod.c:222:module=ssl_conf
Aug 30 06:16:35 PM  
Aug 30 06:16:35 PM      at ChildProcess.respond (/opt/render/project/src/node_modules/html-pdf/lib/pdf.js:121:31)
Aug 30 06:16:35 PM      at ChildProcess.emit (node:events:514:28)
Aug 30 06:16:35 PM      at ChildProcess._handle.onexit (node:internal/child_process:294:12)
Aug 30 06:16:35 PM  node:internal/process/promises:289
Aug 30 06:16:35 PM              triggerUncaughtException(err, true /* fromPromise */);
Aug 30 06:16:35 PM              ^
Aug 30 06:16:35 PM  
Aug 30 06:16:35 PM  [UnhandledPromiseRejection: This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason "undefined".] {
Aug 30 06:16:35 PM    code: 'ERR_UNHANDLED_REJECTION'
Aug 30 06:16:35 PM  }

I dont really know what is wrong so I also dont know what I should try

I would greatly appreciate it if anyone could provide insights or guidance on how to tackle this issue. If you’ve encountered a similar problem or have expertise with the “html-pdf” package, your input would be invaluable.

Thank you in advance for your time and assistance. If you need any additional information, please feel free to ask. Your help is highly appreciated!

I changed my node pdf logic to use puppeteer because that was recommend but now I receive


  Error: Could not find Chrome (ver. 116.0.5845.96). This can occur if either
Aug 30 10:56:19 PM   1. you did not perform an installation before running the script (e.g. `npm install`) or
Aug 30 10:56:19 PM   2. your cache path is incorrectly configured (which is: /opt/render/.cache/puppeteer).
Aug 30 10:56:19 PM  For (2), check out our guide on configuring puppeteer at https://pptr.dev/guides/configuration.
Aug 30 10:56:19 PM      at ChromeLauncher.resolveExecutablePath (/opt/render/project/src/node_modules/puppeteer/node_modules/puppeteer-core/lib/cjs/puppeteer/node/ProductLauncher.js:300:27)
Aug 30 10:56:19 PM      at ChromeLauncher.executablePath (/opt/render/project/src/node_modules/puppeteer/node_modules/puppeteer-core/lib/cjs/puppeteer/node/ChromeLauncher.js:182:25)
Aug 30 10:56:19 PM      at ChromeLauncher.computeLaunchArguments (/opt/render/project/src/node_modules/puppeteer/node_modules/puppeteer-core/lib/cjs/puppeteer/node/ChromeLauncher.js:98:37)
Aug 30 10:56:19 PM      at async ChromeLauncher.launch (/opt/render/project/src/node_modules/puppeteer/node_modules/puppeteer-core/lib/cjs/puppeteer/node/ProductLauncher.js:79:28)
Aug 30 10:56:19 PM      at async exports.createPdfAndSend (/opt/render/project/src/controllers/pdfController.js:15:25)


``` What can I do about it

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.