PHPWebAdmin setup problems

Overview

This page describes common set up mistakes when installing PHPWebAdmin.

Basic set up

  • When you upgrade your hMailServer installation to a later version, make sure to copy the latest PHPWebAdmin from the hMailServer installation directory to your web directory. Not doing this may prevent PHPWebAdmin from working.

Settings in config.php

  • When you specify paths and URLs in the config file, it is very important that you use the forward slash /, and not the backward slash , as folder separator. It is also very important that you end every path and every URL with /.

Settings in PHP.ini

Editing the wrong PHP.ini

A common cause of trouble is to edit PHP.ini in the wrong directory. When a PHP script is executed, no error is reported if the file PHP.ini cannot be found. Sometimes users edits a PHP.ini in a specific directory and later it turns out that PHP tried to read the file from another directory. To check which PHP.ini is used, follow these steps:

  1. Create a new file called test.php in your webroot.
  2. Add the following code to the file:
    <?php phpinfo();?>
  3. Go to the PHP script using your web browser (http://www.example.com/test.php)
  4. Check the value of the Configuration File (php.ini) Path setting near the top.

Error reporting isn't enabled

If you get a blank page when visiting PHPWebAdmin, it's likely that error reporting is not enabled in php.ini. Enable error reporting to make it easier to troubleshoot errors. Make sure that error_reporting is uncommented and set to E_ALL. If you aren't running any other PHP scripts on the server, set display_errors to On. If you are running other PHP scripts, you probably don't want errors to displayed in your web browser and need to check the PHP log for errors instead.

DCOM not being enabled

PHPWebAdmin uses the hMailServer COM API to access the settings and your objects in your hMailServer installation. For this to work, it may be required to enable DCOM in the PHP configuration. Make sure that com.allow_dcom = true exists and is uncommented in php.ini.

For php version 5.3.15 / 5.4.5 and higher the COM API has been disabled as a module. The error probably will be PHP Fatal error:  Class 'COM' not found in \phpwebadmin\initialize.php on line xx. Make sure you edit the php.ini file has been edited with the value extension=php_com_dotnet.dll in the extentions.

Session directory not created

If PHP is configured to use sessions, you must ensure that session.save_path is uncommented and has a valid value. You must also check that your web browser has write permission in this directory. For example, if you are using Microsoft IIS, the user IUSR_[computername] needs write-permissions on this directory.

Other permission issues

  • If you are using Microsoft SQL Server for hMailServer, you may need to give the user IUSR_[computername] access to the hMailServer database.
  • If you are using IIS, or Apache under a dedicated user, you must give the service account access to the hMailServer COM library.

 

Search documentation