ulas
C# & ASP.NET
Kullanıcı
-
Üyelik
25.07.2016
-
Yaş/Cinsiyet
28 / E
-
Meslek
Full Stack Developer
-
Konum
Diğer
-
Ad Soyad
U** K**
-
Mesajlar
1401
-
Beğeniler
404 / 404
-
Ticaret
18, (%100)
Merhaba,
PHP'yi Nginx sunucusunda çalıştırmak istiyorum. Nginx sunucusu sorunsuz çalışıyor fakat PHP ile arasında bir bağ yok gibi duruyor. Örneğin html klasöründeki varsayılan index.html sayfasını ziyaret ettiğimde bir problem yok. Ancak aynı klasöre attığım index.php sayfası açılmıyor, dosya şeklinde indiriliyor. Yardımcı olursanız sevinirim.
Çözüldü;
nginx.conf doyasını bu şekilde düzenlemeniz yeterli.
root html;
location / {
index index.html index.htm index.php;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
technovenue.com
webtegez
İstersen Milyoner Olursun
Kullanıcı
-
Üyelik
04.11.2013
-
Yaş/Cinsiyet
29 / E
-
Meslek
Elektronik Teknikeri - PHP'ci
-
Konum
İstanbul Anadolu
-
Ad Soyad
B** P**
-
Mesajlar
329
-
Beğeniler
100 / 99
-
Ticaret
0, (%0)
Hocam
fastcgi_pass 127.0.0.1:9000; yerine fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
girin. Hangi php sürümünü kullanıyorsanız .sock dosyasının yolunu yukarında değiştiriniz.
Ayrıca nginx'in "snippets/fastcgi-php.conf" klasöründe böyle bir dosya olması gerekmekte. Eğer var ise
include snippets/fastcgi-php.conf; kodunu da eklemeniz gerekmekte.
Bu şekilde bir deneyebilirmisiniz?
Batuhan P. | SoftVore.com
webtegez
İstersen Milyoner Olursun
Kullanıcı
-
Üyelik
04.11.2013
-
Yaş/Cinsiyet
29 / E
-
Meslek
Elektronik Teknikeri - PHP'ci
-
Konum
İstanbul Anadolu
-
Ad Soyad
B** P**
-
Mesajlar
329
-
Beğeniler
100 / 99
-
Ticaret
0, (%0)
ulas adlı üyeden alıntı
webtegez Şuan sorun yaşamıyorum. Muhtemelen şu alttaki iki kısım eklenmediği veya yanlış eklendiği için sorun yaşadım;
root html;
location / {
index index.html index.htm index.php;
}
Varsayılan nginx.conf dosyasında, root dosya yolu farklı veya belirlenmemiş oluyor. Birde location altında index.php yok. Bunlar eklendikten sonra sorun kalkıyor.
Hocam onu da şöyle izah edeyim.
root html;
alanı sizin dosyalarınızın hangi klasörde olduğunu belirtmeniz içindir. Nginx yapılandırması, yukarıda belirttiğiniz html klasörü içerisinde index.php, index.html vs arayacaktır. Bu yüzden buraya tam yol girmeniz gerekmektedir.
Örn:root /var/www/siteadi/public_html
veya
root C:/XAMPP/siteadi/html
vb. gibi.
Bir diğer yanlış nokta ise:
index index.html index.htm index.php;
kodunun location içinde olmaması konusu.
Bu belirttiğim kodu location dışında ayrı kalması nginx yapılandırması için daha iyi olacaktır.
index index.html index.htm index.php;
location / {
}
gibi olması gerekmektedir.
1 kişi bu mesajı beğendi.
Batuhan P. | SoftVore.com