WP CLI session_start冲突

时间:2018-02-15 21:13:57

标签: php wordpress

我尝试在我的服务器上使用wp命令,但是每次运行时都会收到这些警告(wp实际上会有效,但它很有声音关于警告):

运行命令时:

myuser@serverhtml$ wp

PHP Warning:  session_start(): open(/var/lib/php/session/sess_6r7oiur5t1lhsokahj590d1aa7, O_RDWR) failed: Permission denied (13) in /home/int/myuser/html/wp-content/plugins/wp-cassify/classes/wp_cassify_plugin.php on line 201
PHP Stack trace:
PHP   1. {main}() /usr/local/bin/wp:0
PHP   2. include() /usr/local/bin/wp:4
PHP   3. include() phar:///usr/local/bin/wp/php/boot-phar.php:8
PHP   4. WP_CLI\bootstrap() phar:///usr/local/bin/wp/php/wp-cli.php:23
PHP   5. WP_CLI\Bootstrap\LaunchRunner->process() phar:///usr/local/bin/wp/php/bootstrap.php:75
PHP   6. WP_CLI\Runner->start() phar:///usr/local/bin/wp/php/WP_CLI/Bootstrap/LaunchRunner.php:23
PHP   7. WP_CLI\Runner->load_wordpress() phar:///usr/local/bin/wp/php/WP_CLI/Runner.php:1100
PHP   8. require() phar:///usr/local/bin/wp/php/WP_CLI/Runner.php:1174
PHP   9. do_action() /home/int/myuser/html/wp-settings.php:450
PHP  10. WP_Hook->do_action() /home/int/myuser/html/wp-includes/plugin.php:453
PHP  11. WP_Hook->apply_filters() /home/int/myuser/html/wp-includes/class-wp-hook.php:310
PHP  12. call_user_func_array() /home/int/myuser/html/wp-includes/class-wp-hook.php:286
PHP  13. wp_cassify\WP_Cassify_Plugin->wp_cassify_session_start() /home/int/myuser/html/wp-includes/class-wp-hook.php:286
PHP  14. session_start() /home/int/myuser/html/wp-content/plugins/wp-cassify/classes/wp_cassify_plugin.php:201
PHP Warning:  session_start(): Cannot send session cookie - headers already sent by (output started at /home/int/myuser/html/wp-content/themes/mytheme/functions.php:627) in /home/int/myuser/html/wp-content/plugins/wp-cassify/classes/wp_cassify_plugin.php on line 201
PHP Stack trace:
PHP   1. {main}() /usr/local/bin/wp:0
PHP   2. include() /usr/local/bin/wp:4
PHP   3. include() phar:///usr/local/bin/wp/php/boot-phar.php:8
PHP   4. WP_CLI\bootstrap() phar:///usr/local/bin/wp/php/wp-cli.php:23
PHP   5. WP_CLI\Bootstrap\LaunchRunner->process() phar:///usr/local/bin/wp/php/bootstrap.php:75
PHP   6. WP_CLI\Runner->start() phar:///usr/local/bin/wp/php/WP_CLI/Bootstrap/LaunchRunner.php:23
PHP   7. WP_CLI\Runner->load_wordpress() phar:///usr/local/bin/wp/php/WP_CLI/Runner.php:1100
PHP   8. require() phar:///usr/local/bin/wp/php/WP_CLI/Runner.php:1174
PHP   9. do_action() /home/int/myuser/html/wp-settings.php:450
PHP  10. WP_Hook->do_action() /home/int/myuser/html/wp-includes/plugin.php:453
PHP  11. WP_Hook->apply_filters() /home/int/myuser/html/wp-includes/class-wp-hook.php:310
PHP  12. call_user_func_array() /home/int/myuser/html/wp-includes/class-wp-hook.php:286
PHP  13. wp_cassify\WP_Cassify_Plugin->wp_cassify_session_start() /home/int/myuser/html/wp-includes/class-wp-hook.php:286
PHP  14. session_start() /home/int/myuser/html/wp-content/plugins/wp-cassify/classes/wp_cassify_plugin.php:201
PHP Warning:  session_start(): Cannot send session cache limiter - headers already sent (output started at /home/int/myuser/html/wp-content/themes/mytheme/functions.php:627) in /home/int/myuser/html/wp-content/plugins/wp-cassify/classes/wp_cassify_plugin.php on line 201
PHP Stack trace:
PHP   1. {main}() /usr/local/bin/wp:0
PHP   2. include() /usr/local/bin/wp:4
PHP   3. include() phar:///usr/local/bin/wp/php/boot-phar.php:8
PHP   4. WP_CLI\bootstrap() phar:///usr/local/bin/wp/php/wp-cli.php:23
PHP   5. WP_CLI\Bootstrap\LaunchRunner->process() phar:///usr/local/bin/wp/php/bootstrap.php:75
PHP   6. WP_CLI\Runner->start() phar:///usr/local/bin/wp/php/WP_CLI/Bootstrap/LaunchRunner.php:23
PHP   7. WP_CLI\Runner->load_wordpress() phar:///usr/local/bin/wp/php/WP_CLI/Runner.php:1100
PHP   8. require() phar:///usr/local/bin/wp/php/WP_CLI/Runner.php:1174
PHP   9. do_action() /home/int/myuser/html/wp-settings.php:450
PHP  10. WP_Hook->do_action() /home/int/myuser/html/wp-includes/plugin.php:453
PHP  11. WP_Hook->apply_filters() /home/int/myuser/html/wp-includes/class-wp-hook.php:310
PHP  12. call_user_func_array() /home/int/myuser/html/wp-includes/class-wp-hook.php:286
PHP  13. wp_cassify\WP_Cassify_Plugin->wp_cassify_session_start() /home/int/myuser/html/wp-includes/class-wp-hook.php:286
PHP  14. session_start() /home/int/myuser/html/wp-content/plugins/wp-cassify/classes/wp_cassify_plugin.php:201
PHP Warning:  Unknown: open(/var/lib/php/session/sess_6r7oiur5t1lhsokahj590d1aa7, O_RDWR) failed: Permission denied (13) in Unknown on line 0
PHP Stack trace:
PHP   1. {main}() /usr/local/bin/wp:0
PHP   2. include() /usr/local/bin/wp:4
PHP   3. include() phar:///usr/local/bin/wp/php/boot-phar.php:8
PHP   4. WP_CLI\bootstrap() phar:///usr/local/bin/wp/php/wp-cli.php:23
PHP   5. WP_CLI\Bootstrap\LaunchRunner->process() phar:///usr/local/bin/wp/php/bootstrap.php:75
PHP   6. WP_CLI\Runner->start() phar:///usr/local/bin/wp/php/WP_CLI/Bootstrap/LaunchRunner.php:23
PHP   7. WP_CLI\Runner->_run_command_and_exit() phar:///usr/local/bin/wp/php/WP_CLI/Runner.php:1102
PHP   8. WP_CLI\Runner->run_command() phar:///usr/local/bin/wp/php/WP_CLI/Runner.php:376
PHP   9. WP_CLI\Dispatcher\Subcommand->invoke() phar:///usr/local/bin/wp/php/WP_CLI/Runner.php:353
PHP  10. call_user_func() phar:///usr/local/bin/wp/php/WP_CLI/Dispatcher/Subcommand.php:425
PHP  11. WP_CLI\Dispatcher\{closure}() phar:///usr/local/bin/wp/php/WP_CLI/Dispatcher/Subcommand.php:425
PHP  12. call_user_func() phar:///usr/local/bin/wp/php/WP_CLI/Dispatcher/CommandFactory.php:89
PHP  13. Help_Command->__invoke() phar:///usr/local/bin/wp/php/WP_CLI/Dispatcher/CommandFactory.php:89
PHP Warning:  Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/lib/php/session) in Unknown on line 0
PHP Stack trace:
PHP   1. {main}() /usr/local/bin/wp:0
PHP   2. include() /usr/local/bin/wp:4
PHP   3. include() phar:///usr/local/bin/wp/php/boot-phar.php:8
PHP   4. WP_CLI\bootstrap() phar:///usr/local/bin/wp/php/wp-cli.php:23
PHP   5. WP_CLI\Bootstrap\LaunchRunner->process() phar:///usr/local/bin/wp/php/bootstrap.php:75
PHP   6. WP_CLI\Runner->start() phar:///usr/local/bin/wp/php/WP_CLI/Bootstrap/LaunchRunner.php:23
PHP   7. WP_CLI\Runner->_run_command_and_exit() phar:///usr/local/bin/wp/php/WP_CLI/Runner.php:1102
PHP   8. WP_CLI\Runner->run_command() phar:///usr/local/bin/wp/php/WP_CLI/Runner.php:376
PHP   9. WP_CLI\Dispatcher\Subcommand->invoke() phar:///usr/local/bin/wp/php/WP_CLI/Runner.php:353
PHP  10. call_user_func() phar:///usr/local/bin/wp/php/WP_CLI/Dispatcher/Subcommand.php:425
PHP  11. WP_CLI\Dispatcher\{closure}() phar:///usr/local/bin/wp/php/WP_CLI/Dispatcher/Subcommand.php:425
PHP  12. call_user_func() phar:///usr/local/bin/wp/php/WP_CLI/Dispatcher/CommandFactory.php:89
PHP  13. Help_Command->__invoke() phar:///usr/local/bin/wp/php/WP_CLI/Dispatcher/CommandFactory.php:89

问题似乎与我的wp-cassify插件(https://github.com/CGCookie/wp-cassify)及其session_start功能的使用有关,但知识不足以知道从何处开始。

4 个答案:

答案 0 :(得分:0)

初始化插件时,Wordpress似乎已经启动了会话处理程序。因此,PHP会打印一个警告。

您可以修改插件以将/home/int/myuser/html/wp-content/plugins/wp-cassify/classes/wp_cassify_plugin.php调用包装在测试中,如建议的Loopo。它应该在第201行的permission denied文件中。

此修复程序应该消除所有其他错误。 (我怀疑要引发session_start错误,因为文件被打开两次,因为{{1}}被调用了两次。)

答案 1 :(得分:0)

您似乎没有对服务器上的/var/lib/php/session/sess_6r7oiur5t1lhsokahj590d1aa7文件的写入权限,您可以解决它。如果您可以访问服务器的系统文件,则可以使此文件可写,或者如果您无权访问此文件夹,则可以更改会话目录。在调用session_start()之前调用session_save_path()并为其指定服务器可写入的目录的名称。有关详细信息,您可以see here

答案 2 :(得分:0)

您是否尝试卸载wp-cli并在新位置重新安装?每当我在共享主机上时,我首先运行wp命令时遇到问题。每次我都要写一个别名。但是,我最终重新安装到了一个bin目录,在那里我拥有不同的权限,而且工作得更好。

答案 3 :(得分:0)

解决方案最终要添加:

ini_set('session.save_path',realpath(dirname($_SERVER['DOCUMENT_ROOT']) . '/../session')); 

wp-config.php内。

相关问题