Laravel4中设置Web运行模式

  1. 创建stone的manifest目录,用户保存services.json, 保证运行stone的用户目录有写入权限。

     mkdir -p app/storage/meta/stone/request app/storage/meta/stone/boot
    
  2. 修改public/index.php与bootstrap/start.php, 让Stone的Kernel接管请求的处理。

     // 修改public/index.php
     if (PHP_SAPI == 'cli') {
         define('STONE_WEB_MODE', true);
     }
    
     // 修改bootstrap/start.php
     if (defined('STONE_WEB_MODE')) {
         $app = new Qufenqi\Stone\Foundation\Application;
     } else {
         $app = new Illuminate\Foundation\Application;
     }
    
  3. 运行Stone-Web, Web模式处在开发阶段, 所以默认不会以deamon模式启动, 便于调试

     sudo php ./public/index.php
    
  4. 修改nginx配置

     location ~ \.php$ {
         fastcgi_split_path_info ^(.+\.php)(/.+)$;
         fastcgi_index index.php;
         # fastcgi_pass unix:/var/run/php5-fpm.sock; # PHP-FPM
         fastcgi_pass unix:/var/run/stone-web-fpm.sock; # Stone
         include fastcgi_params;
     }
    
     sudo nginx -s reload
    
  5. 调试

    如果你运行时没有任何反应, 可能是某些地方配置或者权限有问题, Laravel4对于底层调试很不友好, 参看:Laravel4下的调试

results matching ""

    No results matching ""