Common phpVirtualBox Errors and Issues

Ian Moore

NOTE: If your problem is not fixed or mentioned on this Wiki page, please see this.


Contents


Error Messages

Invalid username or password

The default username / password to use when logging in to phpVirtualBox is admin / admin.
See: https://sourceforge.net/p/phpvirtualbox/wiki/Authentication%20in%20phpVirtualBox/

Some users have reported issues logging in if the PHP engine can't write to its session folder. It is impossible to cover all the possible PHP configurations here, so difficult to give direct guidance. I suggest you google "php failed to write session data" adding your operating system to the search.

Error logging in or connecting to vboxwebsrv

NOTE: This is different than an Invalid username or password error.

This typically indicates that the username and / or password is incorrect in config.php. These must be set to the system username / password of the user that administers your VirtualBox virtual machines.

If you have upgraded from VirtualBox 3.2.x and this was working before, you may have to run the following commands on your VirtualBox host:

VBoxManage setproperty vrdeauthlibrary default

VBoxManage setproperty websrvauthlibrary default

Could not connect to host

This indicates that phpVirtualBox could not connect to the vboxwebsrv server. Either the location setting in config.php is wrong, vboxwebsrv is not running on the VirtualBox host, or SELinux is blocking access to vboxwebsrv. If you have SELinux enabled, see:

https://sourceforge.net/p/phpvirtualbox/wiki/Installation/#selinux-considerations

looks like we got no XML document

This message occurs when the $location setting in config.php is incorrect. The most common cause is that it is set to the location of phpVirtualBox rather than the SOAP URL of vboxwebsrv.

There are 2 locations involved. One is the URL that phpVirtualBox is accessible through, and the other is the URL through which phpVirtualBox communicates with vboxwebsrv. The $location setting in config.php needs to be set to the URL to vboxwebsrv.

The setting probably looks something like this:

var $location = 'http://localhost/phpvirtualbox/';

but needs to look like this:

var $location = 'http://127.0.0.1:18083/';

The URL through which phpVirtualBox is accessible does not need to be specified.

HTTP GET method not implemented

You are navigating to the $location setting in config.php. This is the URL through which phpVirtualBox communicates with VirtualBox's vboxwebsrv. Instead you need to navigate to phpVirtualBox's folder on your web server. Probably something like: http://localhost/phpvirtualbox

The virtual machine 'vm name' has terminated unexpectedly during startup

This is usually an indication of some sort of misconfiguration of the VM. For instance you may have enabled "Enable VT-x/AMD-V" in the VM's configuration, but your processor does not support it (just an example). Unfortunately the only way to get the correct error message is to start the VM using another VirtualBox interface such as the VirtualBox GUI, VBoxManage, or VBoxHeadless. These should print a more descriptive error.

If the cause is not apparent through the error message, post the issue on the forums over at http://www.virtualbox.org

Method 'ns1:xxxxxxxxxxx' not implemented: method name or namespace not recognized

You are probably using a version of phpVirtualBox that is incompatible with your version of VirtualBox.

phpVirtualBox versioning is aligned with VirtualBox versioning in that the major and minor release numbers will maintain compatibility. phpVirtualBox 4.0-x will only be compatible with !VirtualBox 4.0.x. Regardless of what the latest x revision is. phpVirtualBox 4.1-x will only be compatible with VirtualBox 4.1.x. ..etc..

Download and install the correct version of phpVirtualBox, restart apache, and clear your web browser's cache.

Function ("xxxxxxxxxxxxxxxxx") is not a valid method for this service

The short answer is to restart apache.

PHP caches the WSDL file for vboxwebsrv and is still using an older version. The default cache timeout set in php.ini is 1 day. Restarting apache should force PHP to refresh this file.

Undefined method: xxxxxxxxx

You have probably upgraded phpVirtualBox and not cleared your web browser's cache. The version in your web browser's cache does not match the version on the server. Clear your browser's cache and refresh the page.

Issues

Empty virtual machine list

This is usually an indication that the username / password entered in config.php is not that of the user that administers your VirtualBox virtual machines.

Preview Box only shows VM name. Even when the VM is running.

- or -

Console Tab is ALWAYS disabled

To enable screen shots and the Console tab, please install a VirtualBox extension pack that supports VRDE such as the Oracle VM VirtualBox Extension Pack found in the Downloads section of http://www.virtualbox.org

Right click menu is displayed under context menu on VM Details tab when using Firefox

In Firefox, click on the Tools menu -> Options -> Content -> Advanced (next to Enable JavaScript), and enable the Disable or replace context menus option.

vboxwebsrv stops after some time

- or -

memory usage of vboxwebsrv grows constantly

The fixes are easy, but the explanations around the fixes are long. The short answer is that this is a memory leak in pam_smbpass.so - a file used to sync samba passwords with system passwords. You have 2 options:

Disable authentication in vboxwebsrv.

-or-

Remove PAM references to this file so that it is not called for authentication

Each have their own gotchas.

  • Disable authentication in vboxwebsrv - The end-result of this is that a username / password is no longer required to interact with VirtualBox through vboxwebsrv. If you are running vboxwebsrv bound to localhost or 127.0.0.1, and you are not worried about other people on your system mucking with vboxwebsrv, or you are on a protected network, then this is probably not an issue. To disable authentication in vboxwebsrv, run:

    VBoxManage setproperty websrvauthlibrary null

as the user that runs VirtualBox on your system. NOTE: a username / password will still be required to log into phpVirtualBox. If you don't like that option, read on..

  • Remove pam_smbpass.so or PAM references to it - pam_smbpass is a PAM module that can be used on conforming systems to keep the smbpasswd (Samba password) database in sync with the UNIX password file. If you do not use samba (a software suite used to integrate *nix with Windows), removing the samba package from your system is the easiest choice. If you do use samba, but don't care to keep your your samba user database in sync with system passwords, you can comment out any references to pam_smbpass in /etc/pam.d/*. If you use samba AND want to keep your samba user database in sync with system passwords, your only choice is to disable vboxwebsrv authentication.

Preview Box is Black and VM is running / saved

The power or screen saver settings of the guest OS in the virtual machine is probably set to turn off the monitor or display a blank screen after a period of inactivity. Change this setting in the guest operating system of the virtual machine.

2D / 3D acceleration options do not exist

These options have no effect in a headless environment (console via VRDE) and so are not displayed.

My error message or issue is not covered here

Chances are, you are not the first person to encounter a particular error message. Please search the forums at https://sourceforge.net/p/phpvirtualbox/discussion/ for your issue. If none is found, please post a new topic to the Help forum.