Libraries upload broken in D6
I get a white screen of death and a 500 error when I attempt to upload libraries at /admin/content/h5p/libraries or in the node/add form for interactive content.
This is on a heavily customized, but not core-hacked D6.15 site that I support. The odd thing is, the module installs and works perfectly on the local and staging copies of the same site. Stage and local have identical code to production and a slightly older copy (~3 months old) of the database.
Here's more detail on what happens:
I push the Upload button (or the Save button on node/add), choose libraries.h5p at the library management screen or an individual content type library like 611.h5p in the node/add form, and I see the "Uploading n%" message on the bottom of my browser where n goes to 100. Then, whitescreen. Doesn't kill the site. I go back to the libraries list or the content types list in node/add for interactive content, and there are no libraries or content types listed there.
I do see the temp files being created in sites/default/files/h5p/temp after upload. That's it. Nothing in sites/default/files/h5p/libraries.
This happens for user1 and users in all other roles who have access to the interface, even with all h5p permissions assigned.
No error messages in /admin/reports, in apache error log, or in console except the 500 error for /admin/content/h5p/libraries.
Here's what I've tried:
- Every different way to set PHP upload limits and timeout (php.ini, .htaccess, settings.php, Drupal UI). I had them as high as 520 MB and 5 minutes. Zero change.
- At admin/settings/uploads: adding h5p to list of allowed extensions, then removing it from the list
- At admin/settings/h5p: Every combination of checked and unchecked boxes on that screen. Did not touch whitelist fields or default h5p package path. Current settings are per screen cap.
Here's what finally worked:
- Manually copying the contents of h5p_libraries and h5p_libraries_libraries tables, as well as sites/default/files/h5p/libraries directory, to production, with appropriate file permissions.