NGINX PathInfo sorunu
NGINX sunucularda genel olarak WISECP için özellikle bir yapılandırma gerekmez. Fakat bazı NGINX sunucularında "PATH_INFO" özelliği devre dışı olabilir. Bu durumda WISECP url yapısı çalışmaz ve buna bağlı olarak görünüm sorunları ile URL erişim sorunları yaşanır.
Çözüm için aşağıdaki adımlar takip edilmelidir. Bu işlemlerin yapılabilmesi için sunucunuzun kök (root) erişimine sahip olmanız gerekir. Sunucunun kök (root) erişimine sahip değilseniz veya bu tür konularda bilgi ve tecrübeniz bulunmuyorsa sunucu hizmeti aldığınız firmadan veya bir sunucu yönetimi uzmanından destek almanızı öneririz.
1) NGINX konfigürasyon dosyanızı açınız.
(Genellikle /etc/nginx/sites-available/example.com veya benzeri bir konumda bulunur.)
Aşağıdaki kodları ekleyiniz veya varsa değiştiriniz:
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass unix:/var/run/php/php8.1-fpm.sock; # PHP-FPM soketinize göre ayarlamalısınız.
include fastcgi_params;
}
Yukarıdaki kodlarda bulunan fastcgi_pass unix:/var/run/php/php8.1-fpm.sock; satırını kullandığınız PHP sürümüne göre değiştirmelisiniz.
2) PHP-FPM konfigürasyon dosyanızı açınız.
(Genellikle /etc/php/8.1/fpm/php.ini veya benzeri bir konumda bulunur.)
Aşağdaki satırı bulunuz:
;cgi.fix_pathinfo=1
(Yukarıdaki satır bulunmuyorsa herhangi bir alana aşağıdaki satırı ekleyebilirsiniz.)
Aşağıdaki ile değiştiriniz:
cgi.fix_pathinfo=1
3) Aşağıdaki komutlar ile NGINX ve PHP-FPM servislerini yeniden başlatınız.
sudo service nginx restart
sudo service php8.1-fpm restart # PHP sürümünüze kendinize göre ayarlayınız.