将我的 Azure 应用服务更改为 PHP 8.1,nginx 不断返回 404

问题描述 投票:0回答:2

我正在尝试将 CakePHP 应用程序从 PHP 7.4 迁移到使用 PHP 8.1 的 Azure 应用服务。我很难弄清楚使其工作所需的 nginx 配置。

我采用了基本的 nginx 配置,添加了 CakePHP 书中的更改,并在启动期间注入配置文件 (

cp /home/default /etc/nginx/sites-enabled/default
)。

除了根页面之外,我一直收到 404 错误。在索引页面上,由于这些链接也返回 404,也会出现布局问题。

server {
    #proxy_cache cache;
        #proxy_cache_valid 200 1s;
    listen 8080;
    listen [::]:8080;
    #root /home/site/wwwroot;
    root /home/site/wwwroot/webroot;
    #index  index.php index.html index.htm;
    index  index.php;
    server_name  example.com www.example.com; 
    port_in_redirect off;

    #location / {            
    #    index  index.php index.html index.htm hostingstart.html;
    #}

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /html/;
    }
    
    # Disable .git directory
    location ~ /\.git {
        deny all;
        access_log off;
        log_not_found off;
    }

    #added from CakePHP book
    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    #added from CakePHP book
    location ~ \.php$ {
        try_files $uri =404;
        include fastcgi_params;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_intercept_errors on;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

    # Add locations of phpmyadmin here.
    #location ~ [^/]\.php(/|$) {
    #    fastcgi_split_path_info ^(.+?\.php)(|/.*)$;
    #    fastcgi_pass 127.0.0.1:9000;
    #    include fastcgi_params;
    #    fastcgi_param HTTP_PROXY "";
    #    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    #    fastcgi_param PATH_INFO $fastcgi_path_info;
    #    fastcgi_param QUERY_STRING $query_string;
    #    fastcgi_intercept_errors on;
    #    fastcgi_connect_timeout         300; 
    #    fastcgi_send_timeout           3600; 
    #    fastcgi_read_timeout           3600;
    #    fastcgi_buffer_size 128k;
    #    fastcgi_buffers 4 256k;
    #    fastcgi_busy_buffers_size 256k;
    #    fastcgi_temp_file_write_size 256k;
    #}
}
php azure nginx cakephp azure-web-app-service
2个回答
0
投票

我未能在副本后面添加

service nginx restart
命令。看来现在可以工作了。


0
投票

我遇到了同样的问题,您使用什么代码在启动时注入文件。 每当我从天蓝色门户重新启动服务器时,它都会清除所有内容并更改为默认值。

© www.soinside.com 2019 - 2024. All rights reserved.