直接源碼運行,一切正常。今天試著將程序打包,一運行報錯,可能是什么原因呢?
Wengg\WebmanApiSign\ApiSignException: 簽名參數(shù)錯誤 in phar:///var/www/html/webman.ikidcenter.com/webman.bin/vendor/wen-gg/webman-api-sign/src/ApiSignService.php:100 Stack trace: #0 phar:///var/www/html/webman.ikidcenter.com/webman.bin/vendor/wen-gg/webman-api-sign/src/ApiSignMiddleware.php(26): Wengg\WebmanApiSign\ApiSignService->check(Array) #1 phar:///var/www/html/webman.ikidcenter.com/webman.bin/vendor/workerman/webman-framework/src/App.php(341): Wengg\WebmanApiSign\ApiSignMiddleware->process(Object(support\Request), Object(Closure)) #2 phar:///var/www/html/webman.ikidcenter.com/webman.bin/vendor/workerman/webman-framework/src/App.php(168): Webman\App::Webman\{closure}(Object(support\Request)) #3 phar:///var/www/html/webman.ikidcenter.com/webman.bin/vendor/workerman/workerman/Connection/TcpConnection.php(646): Webman\App->onMessage(Object(Workerman\Connection\TcpConnection), Object(support\Request)) #4 [internal function]: Workerman\Connection\TcpConnection->baseRead(Resource id #547, 2, Resource id #547) #5 phar:///var/www/html/webman.ikidcenter.com/webman.bin/vendor/workerman/workerman/Events/Event.php(193): EventBase->loop() #6 phar:///var/www/html/webman.ikidcenter.com/webman.bin/vendor/workerman/workerman/Worker.php(1635): Workerman\Events\Event->loop() #7 phar:///var/www/html/webman.ikidcenter.com/webman.bin/vendor/workerman/workerman/Worker.php(1426): Workerman\Worker::forkOneWorkerForLinux(Object(Workerman\Worker)) #8 phar:///var/www/html/webman.ikidcenter.com/webman.bin/vendor/workerman/workerman/Worker.php(1400): Workerman\Worker::forkWorkersForLinux() #9 phar:///var/www/html/webman.ikidcenter.com/webman.bin/vendor/workerman/workerman/Worker.php(560): Workerman\Worker::forkWorkers() #10 phar:///var/www/html/webman.ikidcenter.com/webman.bin/vendor/workerman/webman-framework/src/support/App.php(131): Workerman\Worker::runAll() #11 phar:///var/www/html/webman.ikidcenter.com/webman.bin/vendor/webman/console/src/Commands/StartCommand.php(29): support\App::run() #12 phar:///var/www/html/webman.ikidcenter.com/webman.bin/vendor/symfony/console/Command/Command.php(298): Webman\Console\Commands\StartCommand->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)) #13 phar:///var/www/html/webman.ikidcenter.com/webman.bin/vendor/symfony/console/Application.php(1040): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)) #14 phar:///var/www/html/webman.ikidcenter.com/webman.bin/vendor/symfony/console/Application.php(301): Symfony\Component\Console\Application->doRunCommand(Object(Webman\Console\Commands\StartCommand), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)) #15 phar:///var/www/html/webman.ikidcenter.com/webman.bin/vendor/symfony/console/Application.php(171): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)) #16 phar:///var/www/html/webman.ikidcenter.com/webman.bin/webman(53): Symfony\Component\Console\Application->run() #17 /var/www/html/webman.ikidcenter.com/webman.bin(5): require('phar:///var/www...') #18 {main}
上面的問題沒有了,首頁可以出來了,但是出現(xiàn)新的報錯。如下
think\db\exception\PDOException: SQLSTATE[HY000] [2002] No such file or directory in phar:///var/www/html/webman.ikidcenter.com/webman.bin/vendor/topthink/think-orm/src/db/PDOConnection.php:797 Stack trace: #0 phar:///var/www/html/webman.ikidcenter.com/webman.bin/vendor/topthink/think-orm/src/db/connector/Mysql.php(66): think\db\PDOConnection->getPDOStatement('SHOW FULL COLUM...')
打包的時候不應該都打進去么?我看配置文件有沒有剔除這個包,打包的配置文件如下:
return [
'enable' => true,
'build_dir' => BASE_PATH . DIRECTORY_SEPARATOR . 'build',
'phar_filename' => 'webman.phar',
'bin_filename' => 'webman.bin',
'signature_algorithm'=> Phar::SHA256, //set the signature algorithm for a phar and apply it. The signature algorithm must be one of Phar::MD5, Phar::SHA1, Phar::SHA256, Phar::SHA512, or Phar::OPENSSL.
'private_key_file' => '', // The file path for certificate or OpenSSL private key file.
'exclude_pattern' => '#^(?!.*(composer.json|/.github/|/.idea/|/.git/|/.setting/|/runtime/|/vendor-bin/|/build/|/vendor/webman/admin/))(.*)$#',
'exclude_files' => [
'.env', 'LICENSE', 'composer.json', 'composer.lock', 'start.php', 'webman.phar', 'webman.bin'
],
'custom_ini' => '
memory_limit = 256M
',
];
SQLSTATE[HY000] [2002] No such file or directory 是數(shù)據(jù)庫host配置有問題,localhost改成127.0.0.1或者實際內(nèi)網(wǎng)ip