Linux Hakları sorunu


2

Öncelikle tüm bu komutları www-data user üzerinden çalıştırıyorum ... ki apache2 kullanıcısı ... Bu komutları çalıştırmak için php ve exec işlevini kullanarak ...

Dizini oluşturdum

mkdir -p testing

Şimdi klasörleri görelim

ls

Dizin testi gösterilmiyor ... klasör oluşturulmuş olmasına rağmen (fiziksel yolu kontrol ediyorum)


Belki de www-data kullanıcısı klasöre yazma hakkına sahiptir, ancak okumaya başlamaz?

Çalışma dizini ile ilgili sorunları önlemek için her zaman göreceli yerine tam yol kullanın.
Let_Me_Be

Yanıtlar:


1

Öncelikle, a) yazdığınız dizinin mevcut olduğundan ve b) okumanıza / yazmanıza izin veren doğru izinlere sahip olduğundan emin olun.

İkincisi, exec, system veya benzeri bir şey kullanmamaya çalışın. Sadece güvenli değil (geçişler gerçek bir güvenlik deliği olabilir) değil, aynı zamanda yeni alt işlemlerin ortaya çıkması vb.

Ayrıca, exec () kullanarak sadece döndürür son Çalıştırdığınız komutun satırı. İşlevleri gerçekleştirmek için gerçekten bir sistem programı kullanmanız gerekiyorsa, her ikisini de kullanmalısınız. Geçiş () Verileri doğrudan tarayıcıya döndürmek shell_exec () Bir dizgede çıktıya sahip olmak istiyorsanız.


Cevabınız bunun bir programlama sorunu olduğunu gösteriyor. Keşke SO'lar bu soruyu terk etmeden önce soruyu okumuş olsalardı ... iç çekmek
Daniel Beck

1
@DanielBeck pfff .. helisel bir eksen etrafına sarılı eğimli bir düzlem kullanarak bunları ekleyiniz.
Majenko
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.