sandstormports / wordpress-sandstorm

WordPress Sandstorm package
Apache License 2.0
4 stars 3 forks source link

Installing certain Plugins causes Error 500 #27

Open xet7 opened 6 years ago

xet7 commented 6 years ago

From @JamborJan on February 19, 2018 19:29

Installing certain plugins like:

cause a grain to constantly create a 500: Internal Server Error.

bildschirmfoto 2018-02-19 um 20 23 13

Others like

work well. I know due to the special configuration of Wordpress on Sandstorm not all plugins work but destroying a grain completely should be avoided.

Debug Log after installing the Yoast plugin:

Debug log: Plugin TEST 01
...** SANDSTORM SUPERVISOR: Starting up grain. Sandbox type: userns
started php-fpm. status code: 0
started nginx. status code: 0
2018/02/19 19:10:01 [emerg] 42#42: io_setup() failed (38: Function not implemented)
2018/02/19 19:10:01 [emerg] 44#44: io_setup() failed (38: Function not implemented)
2018/02/19 19:10:01 [emerg] 46#46: io_setup() failed (38: Function not implemented)
2018/02/19 19:10:01 [emerg] 45#45: io_setup() failed (38: Function not implemented)
2018/02/19 19:10:21 [error] 42#42: *40 FastCGI sent in stderr: "PHP message: PHP Warning:  An unexpected error occurred. Something may be wrong with WordPress.org or this server&#8217;s configuration. If you continue to have problems, please try the <a href="https://wordpress.org/support/">support forums</a>. (WordPress could not establish a secure connection to WordPress.org. Please contact your server administrator.) in /wordpress-read-only/wp-includes/update.php on line 303
PHP message: PHP Warning:  An unexpected error occurred. Something may be wrong with WordPress.org or this server&#8217;s configuration. If you continue to have problems, please try the <a href="https://wordpress.org/support/">support forums</a>. (WordPress could not establish a secure connection to WordPress.org. Please contact your server administrator.) in /wordpress-read-only/wp-includes/update.php on line 467" while reading upstream, client: 127.0.0.1, server: , request: "POST /wp-admin/update.php?action=upload-plugin HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "my server name"
2018/02/19 19:10:24 [error] 42#42: *50 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Uncaught Error: Call to undefined function apply_filters_deprecated() in /var/wordpress/wp-content/plugins/wordpress-seo/admin/menu/class-admin-menu.php:246
Stack trace:
#0 /var/wordpress/wp-content/plugins/wordpress-seo/admin/menu/class-admin-menu.php(36): WPSEO_Admin_Menu->get_manage_capability()
#1 /wordpress-read-only/wp-includes/plugin.php(525): WPSEO_Admin_Menu->register_settings_page('')
#2 /wordpress-read-only/wp-admin/includes/menu.php(149): do_action('admin_menu', '')
#3 /wordpress-read-only/wp-admin/menu.php(279): require_once('/wordpress-read...')
#4 /wordpress-read-only/wp-admin/admin.php(138): require('/wordpress-read...')
#5 /wordpress-read-only/wp-admin/plugins.php(10): require_once('/wordpress-read...')
#6 {main}
  thrown in /var/wordpress/wp-content/plugins/wordpress-seo/admin/menu/class-admin-menu.php on line 246" while reading response header from upstream, client: 127.0.0.1, server: , request: "GET /wp-admin/plugins.php?activate=true&plugin_status=all&paged=1&s= HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "my server name"
** SANDSTORM SUPERVISOR: Grain shutdown requested.
** SANDSTORM SUPERVISOR: Starting up grain. Sandbox type: userns
started php-fpm. status code: 0
started nginx. status code: 0
2018/02/19 19:10:42 [emerg] 34#34: io_setup() failed (38: Function not implemented)
2018/02/19 19:10:42 [emerg] 36#36: io_setup() failed (38: Function not implemented)
2018/02/19 19:10:42 [emerg] 38#38: io_setup() failed (38: Function not implemented)
2018/02/19 19:10:42 [emerg] 37#37: io_setup() failed (38: Function not implemented)
2018/02/19 19:10:48 [error] 34#34: *15 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Uncaught Error: Call to undefined function apply_filters_deprecated() in /var/wordpress/wp-content/plugins/wordpress-seo/admin/menu/class-admin-menu.php:246
Stack trace:
#0 /var/wordpress/wp-content/plugins/wordpress-seo/admin/menu/class-admin-menu.php(36): WPSEO_Admin_Menu->get_manage_capability()
#1 /wordpress-read-only/wp-includes/plugin.php(525): WPSEO_Admin_Menu->register_settings_page('')
#2 /wordpress-read-only/wp-admin/includes/menu.php(149): do_action('admin_menu', '')
#3 /wordpress-read-only/wp-admin/menu.php(279): require_once('/wordpress-read...')
#4 /wordpress-read-only/wp-admin/admin.php(138): require('/wordpress-read...')
#5 /wordpress-read-only/wp-admin/index.php(10): require_once('/wordpress-read...')
#6 {main}
  thrown in /var/wordpress/wp-content/plugins/wordpress-seo/admin/menu/class-admin-menu.php on line 246" while reading response header from upstream, client: 127.0.0.1, server: , request: "GET /wp-admin/ HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "my server name"

And for the Divi Plugin:

Please contact your server administrator.) in /wordpress-read-only/wp-includes/update.php on line 303
PHP message: PHP Warning:  An unexpected error occurred. Something may be wrong with WordPress.org or this server&#8217;s configuration. If you continue to have problems, please try the <a href="https://wordpress.org/support/">support forums</a>. (WordPress could not establish a secure connection to WordPress.org. Please contact your server administrator.) in /wordpress-read-only/wp-includes/update.php on line 467" while reading upstream, client: 127.0.0.1, server: , request: "POST /wp-admin/update.php?action=upload-plugin HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "my server name"
** SANDSTORM SUPERVISOR: Grain still in use; staying up for now.
2018/02/19 19:27:36 [error] 42#42: *90 FastCGI sent in stderr: "PHP message: PHP Warning:  An unexpected error occurred. Something may be wrong with WordPress.org or this server&#8217;s configuration. If you continue to have problems, please try the <a href="https://wordpress.org/support/">support forums</a>. (WordPress could not establish a secure connection to WordPress.org. Please contact your server administrator.) in /wordpress-read-only/wp-includes/update.php on line 123
PHP message: PHP Warning:  An unexpected error occurred. Something may be wrong with WordPress.org or this server&#8217;s configuration. If you continue to have problems, please try the <a href="https://wordpress.org/support/">support forums</a>. (WordPress could not establish a secure connection to WordPress.org. Please contact your server administrator.) in /wordpress-read-only/wp-includes/upd" while reading upstream, client: 127.0.0.1, server: , request: "POST /wp-admin/update.php?action=upload-plugin HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "my server name"
2018/02/19 19:27:36 [error] 42#42: *90 FastCGI sent in stderr: "ate.php on line 303
PHP message: PHP Warning:  An unexpected error occurred. Something may be wrong with WordPress.org or this server&#8217;s configuration. If you continue to have problems, please try the <a href="https://wordpress.org/support/">support forums</a>. (WordPress could not establish a secure connection to WordPress.org. Please contact your server administrator.) in /wordpress-read-only/wp-includes/update.php on line 467" while reading upstream, client: 127.0.0.1, server: , request: "POST /wp-admin/update.php?action=upload-plugin HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "my server name"
2018/02/19 19:27:50 [error] 42#42: *144 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Uncaught Error: Call to undefined function wp_get_custom_css() in /var/wordpress/wp-content/plugins/divi-builder/includes/builder/core.php:54
Stack trace:
#0 /var/wordpress/wp-content/plugins/divi-builder/includes/builder/core.php(66): et_builder_maybe_enable_inline_styles()
#1 /var/wordpress/wp-content/plugins/divi-builder/includes/builder/framework.php(3): require_once('/var/wordpress/...')
#2 /var/wordpress/wp-content/plugins/divi-builder/divi-builder.php(209): require('/var/wordpress/...')
#3 /var/wordpress/wp-content/plugins/divi-builder/divi-builder.php(46): ET_Builder_Plugin->et_plugin_setup_builder()
#4 /var/wordpress/wp-content/plugins/divi-builder/divi-builder.php(339): ET_Builder_Plugin->__construct()
#5 /wordpress-read-only/wp-includes/plugin.php(525): et_divi_builder_init_plugin('')
#6 /wordpress-read-only/wp-settings.php(392): do_action('init')
#7 /wordpress-read-only/wp-config.php(98): require_once('/wordpress-read...')
#8 /wordpress-read-only/wp-load.php(37):" while reading response header from upstream, client: 127.0.0.1, server: , request: "GET /wp-admin/plugins.php?activate=true&plugin_status=all&paged=1&s= HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "my server name"

Copied from original issue: dwrensha/wordpress-sandstorm#34

JamborJan commented 6 years ago

After having updated to the latest Wordpress version including php7 Divi Themes and Divi Builder are working now in Dev-Mode. Needs to be tested again with the final release candidate.

JamborJan commented 6 years ago

Same for the Yoast plugin, works now in Dev mode, needs to be tested again with the final release candidate.

ocdtrekkie commented 6 years ago

There's a super valid concern here that while all plugins will probably never officially work with Sandstorm, bad plugins can definitely hose WordPress on Sandstorm. (And actually, buggy plugins can hose regular WordPress installs too.) When a WP install gets hosed by a plugin, you generally need to remove it manually from the file system, which isn't possible with Sandstorm.

Would it be beyond the scope of reason to have like a maintenance page, say /pluginhelp or the like that you could add to the grain URL, which let you somehow delete or disable a WordPress plugin, that would work even if WordPress itself wasn't running?

ocdtrekkie commented 6 years ago

In an ideal case, users should backup their grains before adding plugins, but given that no automatic process for rolling back a grain exists, and the process of downloading a backup of your hosed grain, editing it to remove the offending plugin, and reuploading the grain is relatively painful, it'd be good to find a way to dodge this. (Really, WordPress itself should have a better way of handling this, IMHO.)