H5P Guides

Troubleshooting H5P errors

A guide for dealing with the most frequent problems met when setting up and administering the H5P plugin on your site.

We are continually updating H5P and fixing issues that we find or that are reported along the way. Before posting about an issue, please check the latest updates to see whether there is a fix for your issue. A list of recent updates can be found in the Release Overview page.
 
List of contents:

Unfulfilled H5P Dependencies

The problems listed in this section must be handled by the system administrator

Your PHP version does not support ZipArchive

Your PHP installation does not support the ZipArchive extension, which is needed for H5P.

Your PHP version does not support mbstring

The mbstring PHP extension is not loaded. H5P need this to function properly

 

Network Communication Issues

The problems listed in this section must be handled by the system administrator. Several different messages may be displayed when an H5P site fails to communicate with h5p.org:

  • Failed fetching external data
  • Failed communicating with the H5P HUB
  • Failed registering site at H5P HUB
  • Got no content types from HUB

You should first verify your H5P site is able to communicate with h5p.org e.g. by using the ping command (run it on your server). If that fails, it might e.g be a problem with the server's DNS setup or it might be a firewall or similar blocking the traffic. 

A common problem we see with Guzzle is that a required certificate is not present when using the HTTPS protocol.
You can usually solve this by adding a valid "cacert" to your server setup. See papi Joe's comment for more information.

Invalid H5Ps

The problems listed below are mainly relevant for developers, and can most probably be seen during the development phase

The file you uploaded is not a valid HTML5 Package (It does not have the .h5p file extension)

An h5p file has to have the .h5p file extension to be valid

Unable to unzip H5P file

The file you uploaded is not a valid HTML5 Package. The H5P file you were trying to use was not possible to unzip. It might be corrupt.

Invalid h5p.json file

The h5p.json file is either missing or it is not valid.

Invalid content folder

The H5P is missing the mandatory content folder.

Invalid content.json file

Could not find or parse the content.json file

Library directory name mismatch

Library directory name must match machineName or machineName-majorVersion.minorVersion (from library.json)

Missing required library

A mandatory library is missing from your package

Missing library dependency

One of the library dependencies is missing

Invalid library name

The library name is not according to the specification

Invalid library.json file

The library.json file is missing/not readable, or the content is not according to the specification

Invalid semantics.json file

The semantics.json file is missing/not readable, or the content is not according to the specification

Invalid language file

A language file included is not following the specification

Missing file

A mandatory file is missing from the library

Missing required property in library.json

The library.json content is not following the specification

Illegal option in library.json

The library.json content is not following the specification

 

Other issues

A mix of issues that does not fit in the other categories.

API version unsupported

You are trying to install an H5P library which requires a newer version of the API. Please update the H5P module/plugin

Insecure file in H5P

There is a file in your H5P that is not allowed inside an H5P because of security

Failed creating H5P export file

H5P was unable to create the downloadable H5P file. Please check the file permissions

Save content failed

Something went wrong when writing the content to disk. Please check the file permissions