• Resolved reagans123

    (@reagans123)


    When trying to activate an account on a single site within a multisite instance you get hit with a fatal PHP error.

    Example URL you get from account activation email: https://example.local/wp-activate.php?key=da4ba57c21d66638

    When you click the link, you get a “There has been a critical error on this website” and it prevents account activation.

    Error from PHP log:

    PHP Fatal error:  Uncaught TypeError: base64_decode(): Argument #1 ($string) must be of type string, array given in /Users/user/Local Sites/site-name/app/public/wp-content/plugins/google-site-kit/includes/Core/Storage/Data_Encryption.php:90

    Site info:
    Multisite
    WordPress 6.3.1
    PHP 8.2.10
    Site Kit 1.110.0 (installed and activated but no account connected)

    I’ve gone in and manually added a string check to bypass the critical error as a temporary solution on line 90 in Data_Encryption.php

    if ( ! is_string( $raw_value ) ) {
        return false;
    }


    Let me know if there is anything else I can provide to help out.

Viewing 11 replies - 1 through 11 (of 11 total)
  • Plugin Support James Osborne

    (@jamesosborne)

    Thanks for reaching out @reagans123, and appreciate you sharing your findings. So we can determine more on this, please share the following:

    1. Your full Site Health information for this single site. You can use this form to share privately if preferred.?
    2. Does this occur each time you try to activate a user account within your site? If this is the first occurrence, please attempt to activate another user account and check does the same occur.
    3. Do you see any other errors when checking your site logs from around the same time as when you encountered the fatal error? If so, feel free to share any additional findings within the Site Health information form above.

    Let me know if you have any questions with the above. While you’re sharing the above I’ll also perform some checks on my side.

    Thread Starter reagans123

    (@reagans123)

    1. Included below
    2. Tried with another account and still got the error. Tested both on a production site and a local fresh barebones multsite install. It specifically needs to be an account that is created within a subsite and not at the network level.
    3. No other errors, just the original error I shared and the stack trace.

    Tested with a completely barebones WP multisite install

    
    ### wp-core ###
    
    version: 6.3.1
    site_language: en_US
    user_language: en_US
    timezone: +00:00
    permalink: /blog/%year%/%monthnum%/%day%/%postname%/
    https_status: false
    multisite: true
    user_registration: false
    blog_public: 1
    default_comment_status: open
    environment_type: local
    site_count: 1
    network_count: 1
    user_count: 1
    dotorg_communication: true
    
    ### wp-active-theme ###
    
    name: Twenty Twenty-Three (twentytwentythree)
    version: 1.2
    author: the WordPress team
    author_website: https://www.remarpro.com
    parent_theme: none
    theme_features: core-block-patterns, post-thumbnails, responsive-embeds, editor-styles, html5, automatic-feed-links, block-templates, widgets-block-editor
    theme_path: /Users/reagan/Local Sites/multisite-test/app/public/wp-content/themes/twentytwentythree
    auto_update: Disabled
    
    ### wp-themes-inactive (2) ###
    
    Twenty Twenty-One: version: 1.9, author: the WordPress team, Auto-updates disabled
    Twenty Twenty-Two: version: 1.5, author: the WordPress team, Auto-updates disabled
    
    ### wp-plugins-active (1) ###
    
    Site Kit by Google: version: 1.110.0, author: Google, Auto-updates disabled
    
    ### wp-media ###
    
    image_editor: WP_Image_Editor_Imagick
    imagick_module_version: 1809
    imagemagick_version: ImageMagick 7.1.1-15 Q16 x86_64 98eceff6a:20230729 https://imagemagick.org
    imagick_version: 3.7.0
    file_uploads: File uploads is turned off
    post_max_size: 1000M
    upload_max_filesize: 300M
    max_effective_size: 300 MB
    max_file_uploads: 20
    imagick_limits: 
    	imagick::RESOURCETYPE_AREA: 64 GB
    	imagick::RESOURCETYPE_DISK: 9.2233720368548E+18
    	imagick::RESOURCETYPE_FILE: 6144
    	imagick::RESOURCETYPE_MAP: 32 GB
    	imagick::RESOURCETYPE_MEMORY: 16 GB
    	imagick::RESOURCETYPE_THREAD: 1
    	imagick::RESOURCETYPE_TIME: 9.2233720368548E+18
    imagemagick_file_formats: 3FR, 3G2, 3GP, AAI, AI, APNG, ART, ARW, ASHLAR, AVI, AVS, BAYER, BAYERA, BGR, BGRA, BGRO, BMP, BMP2, BMP3, BRF, CAL, CALS, CANVAS, CAPTION, CIN, CIP, CLIP, CMYK, CMYKA, CR2, CR3, CRW, CUBE, CUR, CUT, DATA, DCM, DCR, DCRAW, DCX, DDS, DFONT, DNG, DOT, DPX, DXT1, DXT5, EPDF, EPI, EPS, EPS2, EPS3, EPSF, EPSI, EPT, EPT2, EPT3, ERF, EXR, FARBFELD, FAX, FF, FITS, FL32, FLV, FRACTAL, FTS, FTXT, G3, G4, GIF, GIF87, GRADIENT, GRAY, GRAYA, GROUP4, GV, HALD, HDR, HISTOGRAM, HRZ, HTM, HTML, ICB, ICO, ICON, IIQ, INFO, INLINE, IPL, ISOBRL, ISOBRL6, JNG, JNX, JPE, JPEG, JPG, JPS, JSON, JXL, K25, KDC, KERNEL, LABEL, M2V, M4V, MAC, MAP, MASK, MAT, MATTE, MEF, MIFF, MKV, MNG, MONO, MOV, MP4, MPC, MPEG, MPG, MPO, MRW, MSL, MSVG, MTV, MVG, NEF, NRW, NULL, ORA, ORF, OTB, OTF, PAL, PALM, PAM, PANGO, PATTERN, PBM, PCD, PCDS, PCL, PCT, PCX, PDB, PDF, PDFA, PEF, PES, PFA, PFB, PFM, PGM, PGX, PHM, PICON, PICT, PIX, PJPEG, PLASMA, PNG, PNG00, PNG24, PNG32, PNG48, PNG64, PNG8, PNM, POCKETMOD, PPM, PS, PS2, PS3, PSB, PSD, PTIF, PWP, QOI, RADIAL-GRADIENT, RAF, RAS, RAW, RGB, RGB565, RGBA, RGBO, RGF, RLA, RLE, RMF, RW2, SCR, SCT, SFW, SGI, SHTML, SIX, SIXEL, SPARSE-COLOR, SR2, SRF, STEGANO, STRIMG, SUN, SVG, SVGZ, TEXT, TGA, THUMBNAIL, TIFF, TIFF64, TILE, TIM, TM2, TTC, TTF, TXT, UBRL, UBRL6, UIL, UYVY, VDA, VICAR, VID, VIFF, VIPS, VST, WBMP, WEBM, WEBP, WMV, WPG, X3F, XBM, XC, XCF, XPM, XPS, XV, YAML, YCbCr, YCbCrA, YUV
    gd_version: bundled (2.1.0 compatible)
    gd_formats: GIF, JPEG, PNG, WebP, BMP
    ghostscript_version: 9.56.1
    
    ### wp-server ###
    
    server_architecture: Darwin 21.3.0 x86_64
    httpd_software: nginx/1.16.0
    php_version: 8.1.23 64bit
    php_sapi: fpm-fcgi
    max_input_variables: 4000
    time_limit: 1200
    memory_limit: 256M
    max_input_time: 600
    upload_max_filesize: 300M
    php_post_max_size: 1000M
    curl_version: 7.77.0 (SecureTransport) LibreSSL/2.8.3
    suhosin: false
    imagick_availability: true
    pretty_permalinks: true
    current: 2023-09-27T12:53:39+00:00
    utc-time: Wednesday, 27-Sep-23 12:53:39 UTC
    server-time: 2023-09-27T12:53:37+00:00
    
    ### wp-database ###
    
    extension: mysqli
    server_version: 8.0.16
    client_version: mysqlnd 8.1.23
    max_allowed_packet: 16777216
    max_connections: 151
    
    ### wp-constants ###
    
    WP_HOME: undefined
    WP_SITEURL: undefined
    WP_CONTENT_DIR: /Users/reagan/Local Sites/multisite-test/app/public/wp-content
    WP_PLUGIN_DIR: /Users/reagan/Local Sites/multisite-test/app/public/wp-content/plugins
    WP_MEMORY_LIMIT: 64M
    WP_MAX_MEMORY_LIMIT: 256M
    WP_DEBUG: false
    WP_DEBUG_DISPLAY: true
    WP_DEBUG_LOG: false
    SCRIPT_DEBUG: false
    WP_CACHE: false
    CONCATENATE_SCRIPTS: undefined
    COMPRESS_SCRIPTS: undefined
    COMPRESS_CSS: undefined
    WP_ENVIRONMENT_TYPE: local
    WP_DEVELOPMENT_MODE: undefined
    DB_CHARSET: utf8
    DB_COLLATE: undefined
    
    ### wp-filesystem ###
    
    wordpress: writable
    wp-content: writable
    uploads: writable
    plugins: writable
    themes: writable
    
    ### google-site-kit ###
    
    version: 1.110.0
    php_version: 8.1.23
    wp_version: 6.3.1
    reference_url: https://multisite-test.local
    amp_mode: no
    site_status: not-connected
    user_status: not authenticated
    verification_status: not-verified
    connected_user_count: none
    active_modules: site-verification, search-console, pagespeed-insights
    recoverable_modules: none
    required_scopes: 
    	openid: ?
    	https://www.googleapis.com/auth/userinfo.profile: ?
    	https://www.googleapis.com/auth/userinfo.email: ?
    	https://www.googleapis.com/auth/siteverification: ?
    	https://www.googleapis.com/auth/webmasters: ?
    capabilities: 
    	googlesitekit_authenticate: ?
    	googlesitekit_setup: ?
    	googlesitekit_view_posts_insights: ?
    	googlesitekit_view_dashboard: ?
    	googlesitekit_manage_options: ?
    	googlesitekit_update_plugins: ?
    	googlesitekit_view_splash: ?
    	googlesitekit_view_authenticated_dashboard: ?
    	googlesitekit_view_wp_dashboard_widget: ?
    	googlesitekit_view_admin_bar_menu: ?
    	googlesitekit_view_shared_dashboard: ?
    	googlesitekit_read_shared_module_data::["search-console"]: ?
    	googlesitekit_read_shared_module_data::["pagespeed-insights"]: ?
    	googlesitekit_manage_module_sharing_options::["search-console"]: ?
    	googlesitekit_manage_module_sharing_options::["pagespeed-insights"]: ?
    	googlesitekit_delegate_module_sharing_management::["search-console"]: ?
    	googlesitekit_delegate_module_sharing_management::["pagespeed-insights"]: ?
    enabled_features: 
    	adsenseSetupV2: ?
    	enhancedMeasurement: ?
    	ga4Reporting: ?
    	gm3Components: ?
    	newsKeyMetrics: ?
    	userInput: ?
    search-console_shared_roles: none
    search-console_management: owner
    pagespeed-insights_shared_roles: none
    pagespeed-insights_management: all_admins
    search_console_property: none
    
    `
    Plugin Support James Osborne

    (@jamesosborne)

    Thanks for the updates, and appreciate your patience while I tested this. As I’ve so far been unable to recreate this, can you share the following:

    1. Does the same occur if you test with another version of PHP active?
    2. Are you using a subdomain site setup, or subdirectory?
    3. Within Site Kit, when you mention you have no account connected, I assume this occurs even if Site Kit has never been successfully setup (ie. you only have the plugin activated, but you never went ahead and completed setup within the plugin)?

    From my own testing, I don’t encounter any fatal errors on a non multisite setup, from testing a couple of different sites and domains (with the same WP, PHP and Site Kit versions). I’ll continue testing this based on your updates above.

    Thread Starter reagans123

    (@reagans123)

    1. I believe this error will happen for any PHP version after 8.0 due to function parameter issues becoming fatal errors vs warnings in older versions. I tested a few versions passed 8.0 and seen the same behaviour.
    2. Looks like this only occurs for “subdirectory” multi-site setups.
    3. Yup, installed and activated, thats it.

    Just realized that you don’t even need to create an account or anything. You can visit the activation template at /wp-activate.php and you’ll see the fatal error. Video example here.

    • This reply was modified 1 year, 5 months ago by reagans123.
    Plugin Support James Osborne

    (@jamesosborne)

    Appreciate you sharing these insights, in particular the recording. As I didn’t yet encounter this on a live multisite setup, using either subdomains or subdirectories, can you whether you get the same on a live site, without using any local setup?

    Thread Starter reagans123

    (@reagans123)

    Yup, I originally discovered the issue on a production site. I’ve set up another (3rd) site to confirm the behaviour. It appears both on my local setup and a hosted instance. Here is a link that shows the critical error screen: https://squalid-rust.mysites.io/wp-activate.php

    Steps to reproduce

    • Fresh install of WordPress as a subdirectory multisite
    • Add Google Site Kit plugin from WP directory and activate plugin
    • Visit /wp-activate.php page (or get there from a user activation email)

    Here is a copy of the Site health info for the site linked above:

    `
    ### wp-core ###
    
    version: 6.3.1
    site_language: en_US
    user_language: en_US
    timezone: +00:00
    permalink: /blog/%year%/%monthnum%/%day%/%postname%/
    https_status: true
    multisite: true
    user_registration: false
    blog_public: 1
    default_comment_status: open
    environment_type: production
    site_count: 1
    network_count: 1
    user_count: 1
    dotorg_communication: true
    
    ### wp-dropins (1) ###
    
    db-error.php: true
    
    ### wp-active-theme ###
    
    name: Twenty Twenty-Three (twentytwentythree)
    version: 1.2
    author: the WordPress team
    author_website: https://www.remarpro.com
    parent_theme: none
    theme_features: core-block-patterns, post-thumbnails, responsive-embeds, editor-styles, html5, automatic-feed-links, block-templates, widgets-block-editor
    theme_path: /www/wp-content/themes/twentytwentythree
    auto_update: Disabled
    
    ### wp-themes-inactive (2) ###
    
    Twenty Twenty-One: version: 1.8, author: the WordPress team, Auto-updates disabled
    Twenty Twenty-Two: version: 1.4, author: the WordPress team, Auto-updates disabled
    
    ### wp-plugins-active (1) ###
    
    Site Kit by Google: version: 1.110.0, author: Google, Auto-updates disabled
    
    ### wp-media ###
    
    image_editor: WP_Image_Editor_Imagick
    imagick_module_version: 1690
    imagemagick_version: ImageMagick 6.9.10-23 Q16 x86_64 20190101 https://imagemagick.org
    imagick_version: 3.7.0
    file_uploads: File uploads is turned off
    post_max_size: 300M
    upload_max_filesize: 300M
    max_effective_size: 300 MB
    max_file_uploads: 20
    imagick_limits: 
    	imagick::RESOURCETYPE_AREA: 85 GB
    	imagick::RESOURCETYPE_DISK: 1.844674407371E+19
    	imagick::RESOURCETYPE_FILE: 786432
    	imagick::RESOURCETYPE_MAP: 85 GB
    	imagick::RESOURCETYPE_MEMORY: 43 GB
    	imagick::RESOURCETYPE_THREAD: 1
    	imagick::RESOURCETYPE_TIME: 1.844674407371E+19
    imagemagick_file_formats: 3FR, 3G2, 3GP, AAI, AI, ART, ARW, AVI, AVS, BGR, BGRA, BGRO, BIE, BMP, BMP2, BMP3, BRF, CAL, CALS, CANVAS, CAPTION, CIN, CIP, CLIP, CMYK, CMYKA, CR2, CRW, CUR, CUT, DATA, DCM, DCR, DCX, DDS, DFONT, DNG, DPX, DXT1, DXT5, EPDF, EPI, EPS, EPS2, EPS3, EPSF, EPSI, EPT, EPT2, EPT3, ERF, FAX, FILE, FITS, FRACTAL, FTP, FTS, G3, G4, GIF, GIF87, GRADIENT, GRAY, GRAYA, GROUP4, H, HALD, HDR, HISTOGRAM, HRZ, HTM, HTML, HTTP, HTTPS, ICB, ICO, ICON, IIQ, INFO, INLINE, IPL, ISOBRL, ISOBRL6, JBG, JBIG, JNG, JNX, JPE, JPEG, JPG, JPS, JSON, K25, KDC, LABEL, M2V, M4V, MAC, MAGICK, MAP, MASK, MAT, MATTE, MEF, MIFF, MKV, MNG, MONO, MOV, MP4, MPC, MPEG, MPG, MRW, MSL, MTV, MVG, NEF, NRW, NULL, ORF, OTB, OTF, PAL, PALM, PAM, PATTERN, PBM, PCD, PCDS, PCL, PCT, PCX, PDB, PDF, PDFA, PEF, PES, PFA, PFB, PFM, PGM, PGX, PICON, PICT, PIX, PJPEG, PLASMA, PNG, PNG00, PNG24, PNG32, PNG48, PNG64, PNG8, PNM, PPM, PREVIEW, PS, PS2, PS3, PSB, PSD, PTIF, PWP, RADIAL-GRADIENT, RAF, RAS, RAW, RGB, RGBA, RGBO, RGF, RLA, RLE, RMF, RW2, SCR, SCT, SFW, SGI, SHTML, SIX, SIXEL, SPARSE-COLOR, SR2, SRF, STEGANO, SUN, TEXT, TGA, THUMBNAIL, TIFF, TIFF64, TILE, TIM, TTC, TTF, TXT, UBRL, UBRL6, UIL, UYVY, VDA, VICAR, VID, VIFF, VIPS, VST, WBMP, WEBP, WMV, WPG, X, X3F, XBM, XC, XCF, XPM, XPS, XV, XWD, YCbCr, YCbCrA, YUV
    gd_version: 2.3.3
    gd_formats: GIF, JPEG, PNG, WebP, BMP, AVIF, XPM
    ghostscript_version: unknown
    
    ### wp-server ###
    
    server_architecture: Linux 5.15.107+ x86_64
    httpd_software: Flywheel/5.1.0
    php_version: 8.2.10 64bit
    php_sapi: fpm-fcgi
    max_input_variables: 10000
    time_limit: 178
    memory_limit: 128M
    max_input_time: 60
    upload_max_filesize: 300M
    php_post_max_size: 300M
    curl_version: 7.68.0 OpenSSL/1.1.1f
    suhosin: false
    imagick_availability: true
    pretty_permalinks: true
    htaccess_extra_rules: true
    current: 2023-09-29T17:48:09+00:00
    utc-time: Friday, 29-Sep-23 17:48:09 UTC
    server-time: 2023-09-29T17:48:09+00:00
    
    ### wp-database ###
    
    extension: mysqli
    server_version: 5.7.43-google
    client_version: mysqlnd 8.2.10
    max_allowed_packet: 33554432
    max_connections: 4030
    
    ### wp-constants ###
    
    WP_HOME: undefined
    WP_SITEURL: undefined
    WP_CONTENT_DIR: /www/wp-content
    WP_PLUGIN_DIR: /www/wp-content/plugins
    WP_MEMORY_LIMIT: 128M
    WP_MAX_MEMORY_LIMIT: 128M
    WP_DEBUG: false
    WP_DEBUG_DISPLAY: true
    WP_DEBUG_LOG: false
    SCRIPT_DEBUG: false
    WP_CACHE: false
    CONCATENATE_SCRIPTS: undefined
    COMPRESS_SCRIPTS: undefined
    COMPRESS_CSS: undefined
    WP_ENVIRONMENT_TYPE: Undefined
    WP_DEVELOPMENT_MODE: undefined
    DB_CHARSET: utf8
    DB_COLLATE: undefined
    
    ### wp-filesystem ###
    
    wordpress: not writable
    wp-content: writable
    uploads: writable
    plugins: writable
    themes: writable
    mu-plugins: writable
    
    ### google-site-kit ###
    
    version: 1.110.0
    php_version: 8.2.10
    wp_version: 6.3.1
    reference_url: https://squalid-rust.mysites.io
    amp_mode: no
    site_status: not-connected
    user_status: not authenticated
    verification_status: not-verified
    connected_user_count: none
    active_modules: site-verification, search-console, pagespeed-insights
    recoverable_modules: none
    required_scopes: 
    	openid: ?
    	https://www.googleapis.com/auth/userinfo.profile: ?
    	https://www.googleapis.com/auth/userinfo.email: ?
    	https://www.googleapis.com/auth/siteverification: ?
    	https://www.googleapis.com/auth/webmasters: ?
    capabilities: 
    	googlesitekit_authenticate: ?
    	googlesitekit_setup: ?
    	googlesitekit_view_posts_insights: ?
    	googlesitekit_view_dashboard: ?
    	googlesitekit_manage_options: ?
    	googlesitekit_update_plugins: ?
    	googlesitekit_view_splash: ?
    	googlesitekit_view_authenticated_dashboard: ?
    	googlesitekit_view_wp_dashboard_widget: ?
    	googlesitekit_view_admin_bar_menu: ?
    	googlesitekit_view_shared_dashboard: ?
    	googlesitekit_read_shared_module_data::["search-console"]: ?
    	googlesitekit_read_shared_module_data::["pagespeed-insights"]: ?
    	googlesitekit_manage_module_sharing_options::["search-console"]: ?
    	googlesitekit_manage_module_sharing_options::["pagespeed-insights"]: ?
    	googlesitekit_delegate_module_sharing_management::["search-console"]: ?
    	googlesitekit_delegate_module_sharing_management::["pagespeed-insights"]: ?
    enabled_features: 
    	adsenseSetupV2: ?
    	enhancedMeasurement: ?
    	ga4Reporting: ?
    	gm3Components: ?
    	newsKeyMetrics: ?
    	userInput: ?
    search-console_shared_roles: none
    search-console_management: owner
    pagespeed-insights_shared_roles: none
    pagespeed-insights_management: all_admins
    search_console_property: none
    
    `
    Thread Starter reagans123

    (@reagans123)

    A team member helped me do some further testing, and we found one extra detail for the bug. You have to specifically enable Google Site Kit at the network level for the error to appear. If you enable the plugin within the site, the error doesn’t appear.

    Low quality video displaying that behaviour

    Plugin Support James Osborne

    (@jamesosborne)

    Thanks for the additional insights @reagans123. Great that you were able to determine so much on this. With that I went ahead and created the following, based on my own experience also:
    https://github.com/google/site-kit-wp/issues/7653

    Note that in my case, I do encounter the error, but only when using the /wp-activate.php on the main site, and not on the subdirectory sites. Can you confirm this is the case with you also?

    Plugin Support James Osborne

    (@jamesosborne)

    Just to keep you updated on this, we are working on a solution for this based on your findings. This won’t make it into the next Site Kit release (due today), but it will hopefully be ready for version 1.112.0, scheduled in 2 weeks.

    I will keep you updated here. Thanks again for reporting this.

    Plugin Support James Osborne

    (@jamesosborne)

    Many thanks for your patience on this. We have Site Kit 1.14.0 just released, and with this a fix for the issue you determine. Can you please update to this latest version and confirm all works as expected?

    Let me know if you have any questions on this.

    Plugin Support James Osborne

    (@jamesosborne)

    As we didn’t receive a response I’ll mark this as resolved. Feel free to open a new support topic if you continue to encounter issues, or reopen this topic and we’d be happy to assist.

Viewing 11 replies - 1 through 11 (of 11 total)
  • The topic ‘Fatal PHP error when activating user account’ is closed to new replies.