Nginx

Nginx - 錯誤的響應標頭

  • May 12, 2016

安裝 joomla 時,我遇到了與響應標頭相關的問題。

在安裝過程中,一個ajax post請求發送到伺服器,響應狀態303不是200!所以ajax回調不會觸發並且安裝中斷。

我認為這個問題與 nginx 配置有關,因為我在 apache 本地伺服器上對其進行了測試,並且那裡沒有問題。

nginx訪問日誌:

POST /installation/index.php HTTP/1.1" 303 5 "http://.../installation/index.php" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36"

apache(本地)訪問日誌:

"POST /joomla-test/installation/index.php HTTP/1.1" 200 286

nginx 配置:

location ~ \.php$ {
       try_files $uri =404;
       fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
       fastcgi_index index.php;
       fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
       #fastcgi_pass_header Status; <-- tested but not work !
       include fastcgi.conf;

   }

HTTP 303 是一種重定向。

您提供的配置片段中沒有任何地方會創建任何重定向。因此,它來自您提供的塊中正在處理的 PHP 文件,我相信:您需要檢查 PHP 應用程序以修復這種不希望的重定向。

引用自:https://serverfault.com/questions/746255