Unix üzerinde Apache + PHP yazma izinlerini

5 Cevap php

Ben fötr apache ile PHP site başlatmak için çalışıyorum ve ben writting izinler hakkında bir sorun var. Apache bazı klasörlere yazma izinleri yok gibi görünüyor, ama neden anlamıyorum bulaşmıyor.

I've checked httpd.conf and it has group: apache, user: apache. I then made: chown -R apache:apache www and set 777 permissions to the folders, but it still says:

Uyarı: file_put_contents (/ var / www / public / temp.txt) [koymak Function.file-içerikler]: 8. satırda / var / www / public / newtest.php inkar İzni: failed to open stream

Lütfen tavsiye.

UPDATE: Btw, if I make "php newtest.php" from command line, the file temp.txt is created with group root and user root. It just doest not work from the browser.

5 Cevap

Uyarı: file_put_contents (/ var / www / public / temp.txt) [koymak Function.file-içerikler]: 8. satırda / var / www / public / newtest.php inkar İzni: failed to open stream

Burada çok kötü şeyler var.

Kesinlikle ayrı bir dizinde, tercihen belge kök dışında tamamen - Eğer gerçekten iyi uzakta kodundan httpd yazılabilir dosyaları tutmak istediğiniz gerçeği ile başlayalım.

chown-R apache: apache www ve klasörlere 777 izinlerini ayarlamak

Ve izinleri vardı aslında ne olduğunu sonradan kontrol ettin mi? Btw Yukarıda da noktayı görmek - Eğer herkes tarafından tüm web yazılabilir yaptıysanız o zaman sadece sorun için soruyorsun. Kesinlikle sahibini VE İKİ izinlerini değiştirmek chouldn't.

SELinux'un etkin var mı? (Root olarak çalıştırın sestatus). Eğer öyleyse o zaman ya onu devre dışı bırakmak veya yapılandırmak için öğrenmek gerekir - ama ilk eski moda izinlerle vâkıf tavsiye ederim, sonra SELinux'u devre dışı bırakın.

C.

newtest.php için chmod 775 yapmak ;)

ls-la / var / www / public

Sadece :-) kontrol etmek için

Eğer Temp.txt dokunma ve sadece file_put_contents değiştirmek () ve FILE_APPEND bayrağı eklemek için denediniz mi?

Ben mpm'ye olarak mod_itk için apache geçiş ve sahibi belge kök dizini ve içerdiği php scriptler izinleriyle belirli sankonu çalışıyor tavsiye ederim.