nginx设置不起作用

时间:2016-05-04 15:31:18

标签: php laravel nginx

我在数字海洋上创建了一个新实例并安装了laravel(通过克隆我曾经使用过的git repo)。然后我为nginx配置了默认配置,但该站点甚至无法远程访问。

server {
    listen 80 default_server;
    listen [::]:80 default_server ipv6only=on;

    root /var/www/mfserver/public/;
    index index.php index.html index.htm;

    server_name IPADDRESS;

    location / {
        try_files $uri $uri/ /index.php$is_args$args;
    }

    error_page 404 /404.html;
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /usr/share/nginx/html;
    }

    location ~ \.php$ {
        try_files $uri $uri /index.php$is_args$args;
        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;
    }
}

brwoser的答案是:“SERVERIP目前无法处理此请求。”

我得到的错误是在error.log

  

PHP消息:PHP致命错误:require():需要打开失败   '/var/www/mfserver/bootstrap/../vendor/autoload.php'   (include_path ='。:/ usr / share / php:/ usr / share / pear')in   /var/www/mfserver/bootstrap/autoload.php在第17行“阅读时   来自上游的响应头,$

2 个答案:

答案 0 :(得分:2)

如果您还没有下载Laravel的依赖项,则可能会出现错误。

尝试:

composer install

composer update

答案 1 :(得分:1)

PHP无法打开Laravel核心文件。这通常是因为所有权问题。

发出此命令:
ls -l /var/www/mfserver

您可能会看到这样的列表。

drwxr-xr-x   3 root root   4096 Apr 27 03:58 bootstrap

那不对。它需要由nginx用户拥有,通常为www-data

发出此命令来修复它:
chown -R www-data:www-data /var/www/mfserver