• I started noticing errors in web server error log:

    [29-Oct-2021 20:55:10 Europe/Moscow] PHP Warning:  Use of undefined constant ABSPATH - assumed 'ABSPATH' (this will throw an Error in a future version of PHP) in /var/www/my-wordpress/wp-admin/includes/c
    lass-wp-privacy-data-export-requests-list-table.php on line 11
    [29-Oct-2021 20:55:10 Europe/Moscow] PHP Warning:  require_once(ABSPATHwp-admin/includes/class-wp-privacy-requests-table.php): failed to open stream: No such file or directory in /var/www/my-wordpress/wp
    -admin/includes/class-wp-privacy-data-export-requests-list-table.php on line 11
    [29-Oct-2021 20:55:10 Europe/Moscow] PHP Fatal error:  require_once(): Failed opening required 'ABSPATHwp-admin/includes/class-wp-privacy-requests-table.php' (include_path='.:/usr/share/php') in /var/www/my-wordpress/wp-admin/includes/class-wp-privacy-data-export-requests-list-table.php on line 11

    Not sure what causes them, I have a semi-clean WP installation. I also noticed few mentions of the same error messages on the web but without any solution.

Viewing 15 replies - 1 through 15 (of 17 total)
  • Moderator Steven Stern (sterndata)

    (@sterndata)

    Volunteer Forum Moderator

    Have you edited your wp-config.php file? That should be among the last lines:

    /* That's all, stop editing! Happy publishing. */
    
    /** Absolute path to the WordPress directory. */
    if ( ! defined( 'ABSPATH' ) ) {
            define( 'ABSPATH', dirname( __FILE__ ) . '/' );
    }
    
    /** Sets up WordPress vars and included files. */
    require_once( ABSPATH . 'wp-settings.php' );
                                                     
    Thread Starter shadowlmd

    (@shadowlmd)

    $ grep ABSPATH wp-config.php
     * * ABSPATH
    if ( !defined('ABSPATH') )
            define('ABSPATH', dirname(__FILE__) . '/');
    require_once(ABSPATH . 'wp-settings.php');
    Moderator Steven Stern (sterndata)

    (@sterndata)

    Volunteer Forum Moderator

    I can’t tell from that if that part is commented out. Please post that part of wp-config.php, from the stop editing line on down.

    Thread Starter shadowlmd

    (@shadowlmd)

    It’s not commented out.

    I guess this error appears when bots are trying to access class-wp-privacy-data-export-requests-list-table.php directly.

    Update: my guess was wrong, nothing happens when file is accessed directly because the code is inside class.

    • This reply was modified 3 years, 4 months ago by shadowlmd.
    Thread Starter shadowlmd

    (@shadowlmd)

    This is a part of wp-config.php from “stop editing” line:

    /* Это всё, дальше не редактируем. Успехов! */
    /** Абсолютный путь к директории WordPress. */
    if ( !defined('ABSPATH') )
        define('ABSPATH', dirname(__FILE__) . '/');
    /** Инициализирует переменные WordPress и подключает файлы. */
    require_once(ABSPATH . 'wp-settings.php');
    define( 'FS_METHOD', 'direct' );
    Moderator Steven Stern (sterndata)

    (@sterndata)

    Volunteer Forum Moderator

    Move the fsmethod line above the “stop editing” line.

    Thread Starter shadowlmd

    (@shadowlmd)

    Done.

    Moderator Steven Stern (sterndata)

    (@sterndata)

    Volunteer Forum Moderator

    and?

    Thread Starter shadowlmd

    (@shadowlmd)

    Do you believe that would change anything? I don’t. But I’ll watch for errors in logs. They are rare, happens only once in a few days.

    Moderator Steven Stern (sterndata)

    (@sterndata)

    Volunteer Forum Moderator

    It would be great if you could trace it to a particular GET statement in the webserver logs.

    Thread Starter shadowlmd

    (@shadowlmd)

    That’s a good idea. I was able to trace it. And the error still reproduces if I try to access the same URI.
    91.134.248.245 xn--90aebdqtcv.xn--p1ai - [29/Oct/2021:20:55:10 +0300] "GET /wp-admin/includes/class-wp-privacy-data-export-requests-list-table.php HTTP/1.1" 500 0 "https://xn--90aebdqtcv.xn--p1ai/wp-admin/includes/class-wp-privacy-data-export-requests-list-table.php" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.99 Safari/533.4"

    Moderator Steven Stern (sterndata)

    (@sterndata)

    Volunteer Forum Moderator

    ARe you getting it directly or through a link in wp-admin? If I do

    wget https://example.com/wp-admin/includes/class-wp-privacy-data-export-requests-list-table.php

    I get an error. That file is not meant to be hit directly from a browser.

    Thread Starter shadowlmd

    (@shadowlmd)

    Directly. It’s not me getting it. It’s some bots, obviously. Check User-Agent string.

    Moderator Steven Stern (sterndata)

    (@sterndata)

    Volunteer Forum Moderator

    OK, then, ignore it. ??

    Thread Starter shadowlmd

    (@shadowlmd)

    And it doesn’t really matter whether it’s meant to be hit directly or not because bots don’t care. I believe, some checks must be done to avoid such issues. Like it’s done in most other places:

    // Exit if accessed directly.
    defined( 'ABSPATH' ) || exit;
Viewing 15 replies - 1 through 15 (of 17 total)
  • The topic ‘Use of undefined constant ABSPATH’ is closed to new replies.