Güvenli ffmpeg çalıştırmak için PHP ile exec kullanarak

2 Cevap php

Ben video kodlama amaçlı PHP ffmpeg çalıştırmak istiyorum.

Ben exec veya Geçiş komutları kullanarak düşünüyordum. Ancak, bu işlevleri sağlayan bir güvenlik riski olduğu konusunda uyardı olmuştur. Benim destek personeli sözleriyle:

Direktifi 'disable_functions' sistemi komutlarının yürütülmesine izin herhangi bir işlevleri devre dışı bırakmak için kullanılır. Bu sunucunun daha fazla güvenlik için. Bu PHP düzgün kullanılmadığı takdirde sunucu çatlak için kullanılır.

Ben exec etkinse, sonra birisi (muhtemelen) keyfi bir unix komutu verebilecek olduğunu tahmin ediyorum. Herkes PHP ffmpeg çalıştırmak için güvenli bir yol biliyor mu?

Bu arada, ben adanmış bir sunucu üzerinde değilim. Teşekkürler vaktinden!

2 Cevap

exec kendisi bir güvenlik riski yapacağınız güvenli bir terminale giriş daha fazla bir sunmaz.

Bunu gibi bir dizinin içeriğini listelemek olsaydı, bunu bu şekilde düşünüyorum

exec( 'ls /foo/bar' );

Sizin kullanıcı php komut gönderilen ne önemi olmaz, sadece şimdiye kadar belirtilen dizin listelemek istiyorum.

As long as you are careful to sanitize any inputs from the user, and refrain from outputing sensitive information you should be ok.

Komut satırında çalışan önce girdi sanatize için aşağıdaki yöntemleri kullanın:

Eğer bir ffmpeg-php kütüphanesi kullanmayı deneyebilirsiniz ... burada bulunan: http://sourceforge.net/projects/ffmpeg-php/