versi wordpress: wordpress: versi 4.9.8
versi php: v7.2.12
Imej dockcer ialah: wordpress:4.9.8
Kod pengesahan grafik tidak boleh dimuatkan
Apabila saya baru-baru ini menggunakan wordpress untuk membina tapak web, saya menggunakan pemalam wechat-social-login
untuk melaksanakan fungsi log masuk 微信、QQ、釘釘、Github
Apabila dibuka Selepas menggunakan fungsi kod pengesahan grafik, saya melihat bahawa kod QR grafik tidak boleh dimuatkan F12
Saya melihat kod status adalah 200, tetapi ada tiada nilai pulangan dan ralat dilaporkan This request has no response data available
Selepas membuka wordpress log, saya mendapati ralat berikut dilaporkan dalam fail log debug
. Untuk cara mendayakan log nyahpepijat, sila pergi ke artikel sejarah Cara mendayakan mod penyahpepijatan WordPress (gesaan ralat) dan cetak log ke wp-content
dalam direktori debug.log
.
[08-Feb-2020?07:37:42?UTC]?PHP?Fatal?error:??Uncaught?Error:?Call?to?undefined?function?Gregwar\Captcha\imagettfbbox()?in?/var/www/html/wp-content/plugins/wechat-social-login/includes/captcha/CaptchaBuilder.php:327 Stack?trace: #0?/var/www/html/wp-content/plugins/wechat-social-login/includes/captcha/CaptchaBuilder.php(440):?Gregwar\Captcha\CaptchaBuilder->writePhrase(Resource?id?#7,?'84sx',?'/var/www/html/w...',?150,?40) #1?/var/www/html/wp-content/plugins/wechat-social-login/includes/social/class-xh-social-ajax.php(203):?Gregwar\Captcha\CaptchaBuilder->build() #2?/var/www/html/wp-content/plugins/wechat-social-login/includes/social/class-xh-social-ajax.php(209):?XH_Social_Ajax::{closure}() #3?/var/www/html/wp-includes/class-wp-hook.php(286):?XH_Social_Ajax::captcha('') #4?/var/www/html/wp-includes/class-wp-hook.php(310):?WP_Hook->apply_filters('',?Array) #5?/var/www/html/wp-includes/plugin.php(453):?WP_Hook->do_action(Array) #6?/var/www/html/wp-admin/admin-ajax.php(99):?do_action('wp_ajax_xh_soci...') #7?{main} ??thrown?in?/var/www/html/wp-content/plugins/wechat-social-login/includes/captcha/CaptchaBuilder.php?on?line?327
Maklumat pertanyaan tapak web mengatakan: Fungsi kod pengesahan grafik memerlukan pemasangan kebergantungan seperti gd庫
dan freetype
Anda boleh lihat maklumat terperinci melalui phpinfo() Di sini: gd擴(kuò)展沒有freetype
:
Lihat kaedah phpinfo()
Cipta fail php-info.php
baharu dalam direktori akar tapak web, Kandungannya ialah:
<?php phpinfo();
Selepas menyimpan, aksesnya dengan nama domain, seperti https://action.liabio.cn/php-info.php
, dan anda boleh melihatnya.
imej kompilasi docker
Fail Dockerfile adalah seperti berikut:
FROM?wordpress:4.9.8 RUN?echo?'deb?http://mirrors.163.com/debian/?stretch?main?contrib?non-free\ndeb?http://mirrors.163.com/debian/?stretch-updates?main?contrib?non-free\ndeb?http://mirrors.163.com/debian/?stretch-backports?main?contrib?non-free'?>?/etc/apt/sources.list RUN?apt?update?\ &&?apt?install?-y?libwebp-dev?libjpeg-dev?libpng-dev?libfreetype6-dev?\ &&?docker-php-source?extract?\ &&?cd?/usr/src/php/ext/gd?\ &&?docker-php-ext-configure?gd?--with-webp-dir=/usr/include/webp?--with-jpeg-dir=/usr/include?--with-png-dir=/usr/include?--with-freetype-dir=/usr/include/freetype2?\ &&?docker-php-ext-install?gd?\ &&?php?-m?|?grep?gd
Laksanakan arahan kompilasi berikut:
docker?build?-t?wordpress-freetype:4.9.8?.
Hasilnya ialah ralat penyusunan.
Docker menyusun imej dan melaporkan ralat
OCI?runtime?create?failed:?container_linux.go:346:?starting?container?process?caused?"process_linux.go:319:?getting?the?final?child's?pid?from?pipe?caused?\"EOF\"":?unknown
Kerana saya menggunakan versi 19.03.5 docker dan saya menyemak maklumat dalam talian Maksud umum ialah saya memerlukan 18 versi docker untuk menyusun tanpa ralat.
Sudah pasti, versi 18 docker disusun tanpa ralat:
Gunakan imej baharu yang disepadukan dengan freetype
Gunakan imej baharu Akhirnya, anda boleh melihat bahawa jenis bebas berjaya disepadukan.
Anda boleh melihat bahawa kod QR telah berjaya dipaparkan.