Nginx不执行php

时间:2019-08-20 21:11:39

标签: php nginx fastcgi

我正在将Nginx用于两个网站。初次使用它的用户并不满意(在我的情况下,Apache无法正常工作)。我正在尝试将PHP用于需要它的新项目。我有PHP 7.3 FPM。要测试,phpinfo();确实可以,但是在添加该项目(openCAD)时,index.php似乎为空。

我尝试穿上MyBB,看看它是否可以执行,而根本不能执行,只是空白页。

这是我的Nginx配置

server {

        root /var/www/mywebsite.com/;
        index index.php index.html index.htm index.nginx-debian.html;

        server_name mywebsite.com www.mywebsite.com;



         location / {
                try_files $uri $uri/ =404;
        }

        location ~ \.php$ {
                fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
                fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include fastcgi_params;
        }

        location ~ /\.ht {
                deny all;
        }

    listen [::]:443 ssl ipv6only=on; # managed by Certbot
    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/mywebsite.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/mywebsite.com/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot



}server {
    if ($host = www.mywebsite.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    if ($host = mywebsite.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot



    listen 80;
    listen [::]:80;


    server_name mywebsite.com www.mywebsite.com;
    return 404; # managed by Certbot




}



server {
    if ($host = www.appeal.mywebsite.com) {
        return 301 https://mywebsite.com/appeal;
    } # managed by Certbot


    if ($host = appeal.mywebsite.com) {
        return 301 https://mywebsite.com/appeal;
    } # managed by Certbot


    listen 80 ;
    listen [::]:80 ;
    server_name www.appeal.mywebsite.com appeal.mywebsite.com;
    return 404; # managed by Certbot




}

server {


    if ($host = www.cad.mywebsite.com) {
        return 301 https://mywebsite.com/cad;
    } # managed by Certbot


    if ($host = cad.mywebsite.com) {
        return 301 https://mywebsite.com/cad;
    } # managed by Certbot


    listen 80 ;
    listen [::]:80 ;
    server_name www.cad.mywebsite.com cad.mywebsite.com;
    return 404; # managed by Certbot




}


这是尝试访问MyBB的错误日志

2019/08/20 15:48:11 [error] 23516#23516: *71 FastCGI sent in stderr: "PHP message: PHP Warning:  require_once(/var/www/mywebsite.com/php/inc/init.php): failed to open stream: No such file or directory in /var/www/mywebsite.com/php/global.php on line 20PHP message: PHP Fatal error:  require_once(): Failed opening required '/var/www/mywebsite.com/php/inc/init.php' (include_path='.:/usr/share/php') in /var/www/mywebsite.com/php/global.php on line 20" while reading response header from upstream, client: 70.44.50.53, server: mywebsite.com, request: "GET /php/index.php HTTP/1.1", upstream: "fastcgi://unix:/var/run/php/php7.3-fpm.sock:", host: "mywebsite.com"

1 个答案:

答案 0 :(得分:0)

根据您的错误日志,mybb尝试在/var/www/mywebsite.com/php/中查找其文件,但是您的root设置为/var/www/mywebsite.com/。因此,看来您没有正确设置。如果按原样保留root,则需要确保mybb的文件夹,例如incadmin等是/var/www/mywebsite.com/的子目录。