wkhtmltoimage: QsslSocket

Я хотел сгенерировать HTML для изображения, но у меня есть эта ошибка:

Код состояния выхода «1» говорит о том, что что-то пошло не так: stderr: «Загрузка страницы (1/2) [>] 0% [======>] 10% QSslSocket: невозможно разрешить CRYPTO_num_locks QSslSocket: невозможно разрешить CRYPTO_set_id_callback QSslSocket: cannot resolve CRYPTO_set_locking_callback QSslSocket: cannot resolve sk_free QSslSocket: cannot resolve sk_num QSslSocket: cannot resolve sk_pop_free QSslSocket: cannot resolve sk_value QSslSocket: cannot resolve SSL_library_init QSslSocket: cannot resolve SSL_load_error_strings QSslSocket: cannot resolve SSLv3_client_method QSslSocket: cannot resolve SSLv23_client_method QSslSocket: cannot resolve SSLv3_server_method QSslSocket: не может разрешить SSLv23_server_method QSslSocket: не может разрешить X509_STORE_CTX_get_chain QSslSocket: не может разрешить OPENSSL_add_all_algorithms_noconf QSslSocket: не может разрешить OPENSSL_add_all_algorithms_conf QSslSocket: не может разрешить SSLeay QSslSocket: не может вызвать неразрешенную функцию CRYPTO_num_locks QSslSocket: не может вызвать неразрешенная функция CRYPTO_set_id_callback QSslSocket: невозможно вызвать неразрешенную функцию CRYPTO_set_locking_callback QSslSocket: нельзя вызвать неразрешенную функцию SSL_library_init QSslSocket: нельзя вызвать неразрешенную функцию SSLv23_client_method QSslSocket: нельзя вызвать неразрешенную функцию sk_num [=========> ] 15% [==== ==============> ] 30% [========================> ] 40% QSslSocket: не может вызвать неразрешенную функцию SSLv23_client_method QSslSocket: нельзя вызвать неразрешенную функцию SSL_library_init [==================================== ======================] 100% Рендеринг (2/2) [> ] 0% [============== ==> ] 25% [========================================== ================] 100% Готово Выход с кодом 1 из-за сетевой ошибки: UnknownNetworkError QSslSocket: невозможно вызвать неразрешенную функцию CRYPTO_num_locks QSslSocket: невозможно вызвать неразрешенную функцию CRYPTO_set_id_callback QSslSocket: нельзя вызвать неразрешенную функцию функция CRYPTO_set_locking_callback " stdout: "" команда: /var/www/botond/vendor/h4cc/wkhtmltoimage-amd64/bin/wkhtmltoimage-amd64 --format 'jpg' '/tmp/knp_snappy5bb7d38dbfea18.2936 5936.html' 'img/temp/weather/Battonya_1538773901_raw.jpg'.

Где-то видел, что надо установить libssl1.0-dev, но при попытке дать команду: sudo apt-get install libssl1.0-dev выдало ошибку, что этот репозиторий отсутствует. Я нашел страницу, на которой скачал .deb, но при попытке установить его получил en ошибка, что у меня уже есть новая версия. Как это решить?


person Feralheart    schedule 06.10.2018    source источник
comment
Используемый вами выпуск Linux, вероятно, новый (например, Debian 9), и, используя libssl1.1, установите последний пакет с веб-сайта wkhtmltox, и он должен работать.   -  person pizzamonster    schedule 22.10.2018


Ответы (2)


пиццамонстр прав.

Перейдите сюда: https://wkhtmltopdf.org/downloads.html

Загрузите версию 0.12.5 для вашей операционной системы.

Я использую Mint 19 (ubuntu 18.04), так что продолжу.

После установки пакета выполните:

который wkhtmltoimage

Вы, вероятно, получите /usr/local/bin/wkhtmltoimage — так что просто скопируйте это в новое место в вашем проекте laravel, в вашем случае я бы создал новый каталог «bin», например:

/var/www/botond/bin/

а затем поместите wkhtmltoimage в этот каталог, чтобы вы могли зафиксировать его в своем проекте.

Предполагая, что вы используете пакет snappy от barryvdh (barryvdh/laravel-snappy), измените атрибут «binary» в массиве «image» (/config/snappy.php) на это:

'binary' => base_path('bin/wkhtmltoimage'),

или, возможно, что-то вроде этого:

'binary' => env('SNAPPY_IMG_BIN', base_path('bin/wkhtmltoimage')),

и вы должны быть готовы. Вы, конечно, также можете изменить двоичный файл на '/usr/local/bin/wkhtmltoimage' - или, возможно, использовать это в своем .env:

SNAPPY_PDF_BIN=/usr/local/bin/wkhtmltopdf

Удачи.

p.s. поскольку вы делаете это на Laravel, вы можете изменить название вопроса на «wkhtmltoimage: QsslSocket Laravel barryvdh/laravel-snappy»

person iateadonut    schedule 06.11.2018

В моем случае (Debian buster 10.x) мне нужно обновить двоичные файлы wkhtmltopdf до новейшего через composer. К сожалению, большинство распространенных контейнеров h4cc заброшены. Я готовлю новый обновленный:

composer require getoxs/wkhtmltopdf-buster-amd64

https://packagist.org/packages/getoxs/wkhtmltopdf-buster-amd64

person GetoX    schedule 23.02.2021