drupal 8 /update.php/selection 提示“请求的页面未找到”错误的解决(Nginx)

AIV.WU 提交于 周一, 12/23/2019 - 04:59

此问题针对update.php正常,跳转/update.php/selection后Not found的情况。

在Nginx环境下,这个问题很大几率是有conf配置不当引起的。

因为一般教程里配置php都只是用location ~ \.php$

但 "/update.php/selection"是以"selection"结尾的。这就导致的Nginx会把它重写成index.php?q=/update.php/selection。可想而知肯定是找不到此位置的。

因此解决方法就是在conf里加入location ~ ^/update.php设置:

    

location ~ ^/update.php {                                              
 root /var/www/*****/public_html;


    fastcgi_split_path_info ^(.+\.php)(/.+)$;            // 除此两项外其他参数与location ~ \.php$ 里的相同

fastcgi_index update.php;                                           //除此两项外其他参数与location ~ \.php$ 里的相同


 fastcgi_pass  php-fpm;
   
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_intercept_errors on;
    include fastcgi_params;
  }


设置完成保存重启nginx即可。

类别

标签