nginx下部署默认laravel返回404

问题描述

laravel项目在Apache下能正常访问,nginx下反向代理Apache服务器做php处理就返回404,
应该是index.php中执行错误,是权限问题吗?
https://laravel.lscsfs.cn/ 返回404
https://laravel.lscsfs.cn/hos...https://laravel.lscsfs.cn/inf... 正常

apache errorlog

[Wed Jul 03 16:09:02.523181 2019] [:error] [pid 3342] [client 127.0.0.1:58666] script '/var/www/html/index.php' not found or unable to stat

为什么Apache会去找html下的index.php?

相关代码

nginx的conf

server {
    listen       443;
    
    server_name  laravel.lscsfs.cn;
    root         /var/www/laravel/public;
    index    index.html index.php;
    
    ssl on;
    ssl_certificate ssl/laravel.lscsfs.cn/1_laravel.lscsfs.cn_bundle.crt;
    ssl_certificate_key ssl/laravel.lscsfs.cn/2_laravel.lscsfs.cn.key;
    ssl_session_cache shared:SSL:1m;
    ssl_session_timeout  5m;
    ssl_ciphers HIGH:!aNULL:ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers on;

    #Load configuration files for the default server block.
    include /etc/nginx/default.d/*.conf;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }
    
       location ~ \.php$ {
        proxy_pass             http://localhost:8080;
        proxy_set_header    Host $host;
        proxy_set_header    X-Real-IP $remote_addr;
        proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header    X-Request-URI    $request_uri;
        proxy_connect_timeout    30;
        proxy_send_timeout        30;
        proxy_read_timeout         30;
        client_max_body_size     10m;
        client_body_buffer_size 128k;
        proxy_buffer_size         4k;
        proxy_buffers             4 32k;
        proxy_busy_buffers_size     64k;
        proxy_temp_file_write_size     64k;
    }
    
    error_page 404 /404.html;
        location = /40x.html {
    }

    error_page 500 502 503 504 /50x.html;
        location = /50x.html {
    }
阅读 3.3k
1 个回答
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏