Sagepay Nginx-dagi Cartthrob xabarnoma URL manziliga murojaat qilishni boshlaganda

https://xxx.xxx.xxx/themes/third_party/ cartthrob/lib/extload.php

yaxshi ishlaydi, lekin

https://xxx.xxx.xxx/themes/ third_party/cartthrob/lib/extload.php/sage_s

404 qiymatini qaytaradi.

My nginx server konfiguratsiyasi quyidagicha:

server {
  listen 443 default_server ssl;
  ssl_certificate /etc/nginx/ssl/xxx_xxx_xxx.pem;
  ssl_certificate_key /etc/nginx/ssl/xxx_xxx_xxx.key;
  server_name xxx.xxx.xxx;
  root /sites/xxx_xxx_xxx/public_html;

  access_log /var/log/nginx/xxx_xxx_xxx-access.log;
  error_log  /var/log/nginx/xxx_xxx_xxx-error.log info;

  location/{
    index index.php;
    try_files $uri $uri/ @ee;
  }

  location @ee {
    rewrite ^(.*) /index.php?$1 last;
  }

  location ~ \.php$ {
    include /etc/nginx/fastcgi_params;
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_index index.php5;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  }
}
3
keyingi satrlarni error_logdan keyin qo'shishga harakat qiling: location /themes/third_party/cartthrob/lib/extload.php {rewrite ^ (. *) /themes/third_party/cartthrob/lib/extload.php?$1 last; }
qo'shib qo'ydi muallif Nikos Steiakakis, manba

2 javoblar

Keyingi konfiguratsiyani sinab ko'ring:

server {
  listen 443 default_server ssl;
  ssl_certificate /etc/nginx/ssl/xxx_xxx_xxx.pem;
  ssl_certificate_key /etc/nginx/ssl/xxx_xxx_xxx.key;
  server_name xxx.xxx.xxx;
  root /sites/xxx_xxx_xxx/public_html;

  access_log /var/log/nginx/xxx_xxx_xxx-access.log;
  error_log  /var/log/nginx/xxx_xxx_xxx-error.log info;

  location /themes/third_party/cartthrob/lib/extload.php { 
    rewrite ^(.*) /themes/third_party/cartthrob/lib/extload.php?$1 last; 
  }

  location/{
    index index.php;
    try_files $uri $uri/ @ee;
  }

  location @ee {
    rewrite ^(.*) /index.php?$1 last;
  }

  location ~ \.php$ {
    include /etc/nginx/fastcgi_params;
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_index index.php5;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  }
}
3
qo'shib qo'ydi
Ha, bu juda yaxshi ishlaydi - rahmat!
qo'shib qo'ydi muallif David Tchepak, manba

Ensure your firewalls allow outbound Port 443 (HTTPS only) & inbound ports 443 (& optionally 80 HTTP) access in order to communicate with our servers (on Test/Live).

Bizning (Sage Pays) Bildirishnomasini olmasam, DNS muammosini tekshiring.

Ikki NotificationURLs o'rtasidagi asosiy farqlar qanday?

Statusni, StatusDetail va RedirectURLni yuborganingizda Sage Pays xabarnomasini qabul qilganda, javoblar buferini tozalash uchun ishonch hosil qiling.

1
qo'shib qo'ydi
Salom! Javob berganingiz uchun tashakkur, lekin bu masala, albatta, mening nginx konfiguratsiyasi bilan bog'liq. Boshqa birov bir xil muammolarga duch kelganiga ishonaman va nginxni qanday qilib sozlashni menga imkon berishi mumkin. Har bir narsa, masalan, Cartthrob va Sagepay kabi yaxshi ishlashi mumkin.
qo'shib qo'ydi muallif David Tchepak, manba