nginx configuration for laravel



我为nginx创建了这个配置文件来访问我的laravel页面:

server {
    listen 80;
    listen [::]:80;
    root /var/www/mfserver/public;
    index index.php index.html index.htm;
    server_name dispo.medifaktor.de;
    location / {
        try_files $uri $uri/ /index.php?is_args$args;
    }
    error_page 404 /index.php;
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /var/www/mfserver/public;
    }
    location ~ .php$ {
        try_files $uri /index.php =404;
        fastcgi_split_path_info ^(.+.php)(/.+)$;
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
        fastcgi_intercept_errors off;
        fastcgi_buffer_size 16k;
        fastcgi_buffers 4 16k;
    }
}

当我调用页面 dispo.medifaktor.de 时,我会看到主页。但是当我打电话给 http://dispo.medifaktor.de/v1/incidents 时,我收到服务器错误500。为什么我无法访问这些页面?

路由文件正在工作:

Route::group(['domain' => 'dispo.medifaktor.de', 'namespace' => 'API'], function() {
    Route::group(['prefix' => 'v1', 'namespace' => 'v1'], function() {
        // INCIDENTS ROUTES
        Route::get('/incidents', 'IncidentsAPIIncidentController@index');
        Route::post('/incidents', 'IncidentsAPIIncidentController@store');
        Route::get('/incidents/{incidents}', 'IncidentsAPIIncidentController@show');
        Route::get('/incidents/{incidents}/responders', 'IncidentsAPIIncidentResponderController@index');
    });
});

nginx的错误.log指出:

2016/05/26 11:22:40 [error] 32590#0: *22 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Uncaught exception 'UnexpectedValueException' with message 'The stream or file "/var/www/mfserver/storage/logs/laravel.log" could not be opened: failed to open stream: Permission denied' in /var/www/mfserver/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php:97
Stack trace:
#0 /var/www/mfserver/vendor/monolog/monolog/src/Monolog/Handler/AbstractProcessingHandler.php(37): MonologHandlerStreamHandler->write(Array)
#1 /var/www/mfserver/vendor/monolog/monolog/src/Monolog/Logger.php(336): MonologHandlerAbstractProcessingHandler->handle(Array)
#2 /var/www/mfserver/vendor/monolog/monolog/src/Monolog/Logger.php(615): MonologLogger->addRecord(400, Object(UnexpectedValueException), Array)
#3 /var/www/mfserver/vendor/laravel/framework/src/Illuminate/Log/Writer.php(202): MonologLogger->error(Object(UnexpectedValueException), Array)
#4 /var/www/mfserver/vendor/laravel/framework/src/Illuminate/Log/Writer.php(113): IlluminateLogWriter->writeLog('error', Object(UnexpectedV...
PHP message: PHP Fatal error:  Uncaught exception 'UnexpectedValueException' with message 'The stream or file "/var/www/mfserver/storage/logs/laravel.log" could not be opened: failed to open stream: Permission denied' in /var/www/mfserver/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php:97
Stack trace:
#0 /var/www/mfserver/vendor/monolog/monolog/src/Monolog/Handler/AbstractProcessingHandler.php(37): MonologHandlerStreamHandler->write(Array)
#1 /var/www/mfserver/vendor/monolog/monolog/src/Monolog/Logger.php(336): MonologHandlerAbstractProcessingHandler->handle(Array)
#2 /var/www/mfserver/vendor/monolog/monolog/src/Monolog/Logger.php(615): MonologLogger->addRecord(400, Object(SymfonyComponentDebugExceptionFatalErrorException), Array)
#3 /var/www/mfserver/vendor/laravel/framework/src/Illuminate/Log/Writer.php(202): MonologLogger->error(Object(SymfonyComponentDebugExceptionFatalErrorException), Array)
#4 /var/www/mfserver

大多数文件夹应该是正常的"755"和文件"644"。

对于基于 nix 的操作系统。使用以下 .

sudo chgrp -R www-data storage bootstrap/cache
sudo chmod -R ug+rwx storage bootstrap/cache

nginx的组"www-data"未设置在laravel文件夹中。现在我可以访问所有内容

最新更新