国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

PHP 致命錯誤:在 crontab 中將 WP-CLI 命令作為 cron-job 運(yùn)行時,無法打開所需的'wp-salt.php”
P粉253518620
P粉253518620 2024-03-28 09:25:13
0
1
788

這個問題旨在作為其他人查找的信息帖子,因為幸運(yùn)的是我已經(jīng)找到了解決方案。

我嘗試在 Cloudways 服務(wù)器上的 crontab 中將 Wordpress-CLI 命令作為 cron 作業(yè)運(yùn)行。該命令直接在終端中運(yùn)行沒有任何問題,但在使用 crontab 啟動時失敗并出現(xiàn)致命 PHP 錯誤。

Wordpress-CLI 的基本命令如下所示:

wp migeratedb 配置文件 [id]

由于 crontab 運(yùn)行的上下文通常未知,并且 $PATH 變量可能不可用,因此我修改了命令以提供必要的絕對路徑:

/usr/local/bin/wp migeratedb 配置文件 [id] --path=/absolute/path/to/wordpress/core/files

同樣,從終端啟動時,這個修改后的命令也可以完美運(yùn)行,沒有任何問題。

最終的 crontab 條目看起來像這樣:

0 5 * * * /usr/local/bin/wp migeratedb 配置文件 [id] --path=/absolute/path/to/wordpress/core/files

當(dāng)從調(diào)度程序運(yùn)行時,它會產(chǎn)生以下錯誤:

PHP Fatal error:  require(): Failed opening required 'wp-salt.php' (include_path='.:/usr/share/php') in phar:///usr/local/bin/wp/vendor/wp-cli/config-command/src/Config_Command.php(444) : eval()'d code on line 34

經(jīng)過一些實驗,我意識到所有 WP-CLI 命令都會發(fā)生此錯誤,除了非?;镜?/p>

wp --info

,產(chǎn)生以下輸出:

OS: Linux 4.19.0-21-amd64 #1 SMP Debian 4.19.249-2 (2022-06-30) x86_64
Shell:  /bin/sh
PHP binary: /usr/bin/php7.4
PHP version:    7.4.33
php.ini used:   /etc/php/7.4/cli/php.ini
MySQL binary:   /usr/bin/mysql
MySQL version:  mysql  Ver 15.1 Distrib 10.4.20-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
SQL modes:  
WP-CLI root dir:    phar://wp-cli.phar/vendor/wp-cli/wp-cli
WP-CLI vendor dir:  phar://wp-cli.phar/vendor
WP_CLI phar path:   [absolute/path/to/user/home/directory]
WP-CLI packages dir:    
WP-CLI cache dir:   [absolute/path/to/user/home/directory]/.wp-cli/cache
WP-CLI global config:   
WP-CLI project config:  
WP-CLI version: 2.7.1

我還嘗試了以下改編,但沒有成功:

  • 下載新的 wp-cli.phar 并將其用于命令。

  • 查看和更改已用文件夾的所有權(quán)限

  • 嘗試以其他用戶身份運(yùn)行 cronjob

  • 使用 /usr/bin/php 更改命令來運(yùn)行 wp-cli.phar

P粉253518620
P粉253518620

全部回復(fù)(1)
P粉790187507

我終于發(fā)現(xiàn)這個錯誤與托管提供商(在本例中為 Cloudways)在 wp-config.php 文件中設(shè)置 Wordpress 配置的方式有關(guān)。

鹽和秘密授權(quán)密鑰存儲在一個單獨(dú)的文件中,即錯誤消息中引用的wp-salt.php。它可以通過以下方式直接在配置文件中引用:require('wp-salt.php')。 由于這不是 WordPress 核心的一部分,并且 crontab 在不同的環(huán)境中運(yùn)行,因此無法確定文件所在的正確目錄,并且 require() 失敗并出現(xiàn)致命錯誤。

要修復(fù)此問題,請將 wp-config.php 中的行更改為 require(__DIR__.'/wp-salt.php');,以便文件始終從與配置文件相同的目錄中引用。

另一種選擇是完全刪除該行并將其替換為 wp-salt.php 文件中的內(nèi)容,就像 Wordpress 核心所做的那樣。

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板