Başka Server'a Upload
12
●4.354
- 29-12-2012, 11:20:45Merhabalar arkadaşlar. Kendi Serverımda çalışan bir formum var. Bu formumdan başka bir server'a dosya yükletmek istiyorum. Bu işlemi güvenli bir şekilde yapabilmek için nasıl bir yol izlemeliyim? Uzak server'da yukle.php gibi bir oluşturup bu dosyanın içinde sadece benim server'ımın dosya yüklemesinemi izin vermeliyim ?
- 29-12-2012, 11:29:25en basiti ile ile anlatayım form action="" olan yere server adresini http://www.serveradi.com/yukle.php gibi giriniz o serverda ki yukle php ye normal post işlemlerini atınız bu en doğal hali güvenlik için kendi içinizde capatcha yapar sonuc doğru ise javascript ile formu yine yukarıda belirteceğiniz adrese post eder.
ek bir hatırlatma isterseniz diğer serverdaki yükle php nizi de referer göstererek sizin serverdan gelecek postları kabul ettirirseniz daha da güvenli olur. - 29-12-2012, 12:17:30istersen şöyle yap yada sonra söyleyeceklerimi yap sana kalmış dosya yüklemeyi jquery -javascript-ajax ile yap ister dosya seçilince ister dosyayı gönder deyince karşıya yüklesin yükleme tamamlanana kadarda ana formun gönderilmesini engelle bir hidden form elemanı oluştur resim bilgilerini de buna bas vb., ------ yada yapmak istersen curl le post ile dosyayı gönderttir karşıdaki form karşılayacak dosyaya ki bilirsiniz post ile göndermenin sınırı vardır bu mantıksız yol bence hemde sizin için zor olur, yada karşıda cek.php yap linki gönder dosya ana sunucuya yüklenince sunucundan base64 yada nasıl göndereceksen artık, karşı server çeksin sunucundan.
- 29-12-2012, 15:22:41teşekkürler aşağıdaki gibi bir yol izledim hatasız bir şekilde çalışıyor fakat dosyayı Upload ' etmiyor. Nedeni ne olabilir acaba ?
--R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 15:22:41 -->-> Daha önceki mesaj 14:55:15 --
localim'deki index.php :
<form method="POST" enctype="multipart/form-data" name="form" id="form" action="http://www.uzakserver.com/burak/yukle.php"> <br /> <input type="file" name="projeler" id="projeler" ><br /> <input id="sub_olus" name="sub_olus" type="submit" /> </form>
uzak server'ımdaki yukle.php :
$projeler_dosyaisim=$_FILES["projeler"]["name"]; if (!empty($projeler_dosyaisim) AND empty($ikaz)) { // Kontroller $uzanti=sonnokta($projeler_dosyaisim); $uzizin=uzantiizin($uzanti); // Uzantı problemsizse, if ($uzizin == "evet") { //Dosya isim random ve türkçe karakter arındırması $rasgele=substr(md5(microtime()),0,6); $projeler_dosyaisim2=urlduzelt($projeler_dosyaisim); $projeler_dosyaisimdb=$projeler_dosyaisim2.'-'.$rasgele.'.'.$uzanti; $yol="uploads/".$projeler_dosyaisim2.'-'.$rasgele.'.'.$uzanti; move_uploaded_file($_FILES["projeler"]["tmp_name"],$yol); echo "Dosya Başarılı Bir Şekilde Upload Edilmiştir."; } else { $ikaz ='Yüklemek istediğiniz dosya türü sistem tarafından kabul edilmemektedir.<br>'; } } - 29-12-2012, 15:39:09tamam şu anda düzeldi dosya izin ayarları ile ilgili bir problem varmışmsgr adlı üyeden alıntı: mesajı görüntüle
--R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 15:39:09 -->-> Daha önceki mesaj 15:26:48 --
referer olayı güvenlik olarak iyimidir acaba ?VTA adlı üyeden alıntı: mesajı görüntüle - 29-12-2012, 15:54:10Teşekkür ederim o tarz bişi kullanacağımoophp adlı üyeden alıntı: mesajı görüntüle
- 30-12-2012, 00:06:32FTP ile de yapabilirsiniz.
function uploadFile($ftp_conn,$source,$file,$target){ $kaynak = $source; if(@ftp_chdir($ftp_conn,$target)){ if(@ftp_put($ftp_conn,$file,$kaynak,FTP_BINARY)){ }else{ echo "Hata dosya yüklenemedi"; } }else{ echo "/ Dizine geçilemedi"; } //ftp_close($ftp_conn); } $ftp_user_name = "user"; $ftp_user_pass = "pass"; $ftp_host = "ip ya da ftp adresi"; $ftp_id = ftp_connect($ftp_host); $ftp_baglan = ftp_login($ftp_id, $ftp_user_name, $ftp_user_pass); if ((!$ftp_id) || (!$ftp_baglan)) { die("FTP BAGLANTISI SAĞLANAMIYOR"); } if(!ftp_pasv($ftp_id,TRUE)){ die("PASV moduna geçilemedi"); } uploadFile($ftp_id,'folder/file.dat','file.dat','/folder');