From b2evolution manual
To have a Debuglog with a load of information on the bottom of each page, set
$debug = 1;
For even more verbose debug info, you can use
$debug = 2;
Note: this may break the proper display of some pages by inserting debug information inline.
If you want to be able to turn on/off the debuglog selectively at will, leave the default setting of $debug = 'pwd' but define a password in $debug_pwd like this:
$debug = 'pwd'; $debug_pwd = 'mysecret';
Once this is done, you can go to any page and append the following to the URL to turn on the debuglog:
To turn off, just load a page with
Enable the AJAX debuglog
You can also display a debuglog for AJAX calls. It will float in a CSS window about the page and will be populated in real time (for example, when loading a comment form).
Turn on with:
$debug_jslog = 1;
Alternatively, as above:
$debug_jslog = 'pwd'; $debug_pwd = 'mysecret';
Then call any page with the following appended to the url:
Turn off with
Note: For the JSlog to work properly should disable the page caching for current blog or clear the cache folder every time you want to use this param in the URL.
Enable logging of XMLRPC
To debug communication between a blogging tool which uses the XMLRPC interface, you can set
$debug_xmlrpc_logging = 1;
in /conf/_advanced.php. This will log to the file `/xmlsrv/xmlrpc.log` then and will be helpful when debugging what's going on or why a particular request fails.
You may also want to test against the latest code by using http://test.b2evo.net/HEAD/xmlsrv/xmlrpc.php (login: admin, password: demopass).
Sometimes it's useful to override some configuration settings on a specific test machine without affecting the normal configuration files that are synchronized with the production server.
To do this you can create a file called /conf/_overrides_TEST.php
This file will be loaded after all other configuration files and any setting in that file will override previous values.
Blank pages or sudden script abortion often mean that there's a fatal error during the PHP script execution and the website/server is configured to not display them.
A cause for this might be a parse error or the exhaustion of the memory limit).
You can try to look into the server's error log or add the following code to /conf/_basic_config.php (/conf/_config.php before b2evo 1.8):
ini_set( 'error_reporting', E_ALL ); /* report all errors */ ini_set( 'display_errors', 'on' ); /* display them on the page */
Add this after the opening "<?php" tag at the beginning of the page.
Note that this won't help, if you have a parse error in the config file you're editing itself, because PHP cannot execute the statements that change the reporting..
Often additional information may be useful/required.
Therefore you can setup a simple file in your web root directory like so:
<?php phpinfo(); ?>
Save this as p.php and give the URL to that file to the developer that asks for it or mention it in your bug report.
E.g., you can search on the resulting page for "safe_mode" to see if your installation is setup like so.
If you have file permission problems, try the following script. Upload it into your "blogs" directory, where "media" is and call it from a browser. It will display a recursive list of the subdirectories in "media" and display info about the permissions that apply to each directory (including and especially user/group permissions).