2017-01-03 27 views
7

規格: Ubunutu 16.04.1服務器 nginx的1.10 HHVM 3.17.0HHVM RepoMode分段錯誤

我試圖收集的文件列表,並運行他們通過HHVM編譯器利用回購方式,與下面的代碼:

#!/bin/bash 

if [ "$(whoami)" != "root" ]; then 
    echo "Only root can do this."; 
    exit 1; 
else 

    if [ $# -eq 0 ]; then 
     echo "Please pass the account name to enable this for" 
     exit 1; 
    else 

     #Get a list of files 
     FLIST=$(find /home/$1/www/ -type f -name '*.php'); 
     for F in $FLIST 
     do 
      if [ -f $F ]; then 
       echo "Adding; $F"; 
       echo $F >> $1-list.txt; 
      fi; 
     done; 
     hhvm --hphp -t hhbc -v AllVolatile=false -v WholeProgram=false --input-list $1-list.txt; 
     sleep 1; 
     rm -f $1-list.txt; 
    fi; 

fi; 

在我的服務器上運行它,我呈現:

running hphp... 
creating temporary directory /tmp/hphp_cFPMUQ ... 
parsing inputs... 
Unable to stat file /home/kpirnie/www/wp-content/PHPMailer/vendor/autoload.php 
Unable to stat file /home/kpirnie/www/wp-content/PHPMailer/test/vendor/autoload.php 
Unable to stat file /home/kpirnie/www/wp-content/PHPMailer/test/testbootstrap.php 
Unable to stat file /home/kpirnie/www/wp-content/plugins/cloudflare/vendor/cloudflare/cf-ip-rewrite/vendor/autoload.php 
Unable to stat file /home/kpirnie/www/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/phing/tasks/phing/Task.php 
Unable to stat file /home/kpirnie/www/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/phar:/guzzle.phar/vendor/symfony/class-loader/Symfony/Component/ClassLoader/UniversalClassLoader.php 
Unable to stat file /home/kpirnie/www/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/phing/tasks/PEAR/PackageFileManager2.php 
Unable to stat file /home/kpirnie/www/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/phing/tasks/PEAR/PackageFileManager/File.php 
Unable to stat file /home/kpirnie/www/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/phing/tasks/PEAR/Packager.php 
Unable to stat file /home/kpirnie/www/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/phing/tasks/phing/tasks/ext/git/GitBaseTask.php 
Unable to stat file /home/kpirnie/www/wp-content/plugins/cloudflare/vendor/sebastian/comparator/vendor/autoload.php 
Unable to stat file /home/kpirnie/www/wp-content/plugins/wordpress-seo/vendor/composer/autoload_static.php 
parsing inputs took 0'01" (1425127 us) wall time 
pre-optimizing... 
Core dumped: Segmentation fault 
Stack trace in /tmp/stacktrace.31028.log 
hphp failed 
running hphp took 0'02" (2216979 us) wall time 

我CA n驗證Unable to stat的文件確實不存在。

Stacktrace顯示看起來像內存轉儲(我假設)由於分段故障。

我該如何實現真實回購模式?跳過丟失的文件?但是如何?

+0

這個問題應該在別的地方嗎? – Kevin

+0

不能完全明白爲什麼這個問題有一個Nginx標記 – Dayo

回答

1

如果您的源代碼中沒有提及這些文件,請嘗試將空文件放在這些位置。

但是,很可能您正在通過包含它們的路徑引用這些文件。我懷疑這是一個HHVM問題,你應該提交你的失敗測試案例here