Ağdaki başka bir bilgisayardan dosya almak için http iyi bir seçim, çünkü her bilgisayarda browser ya da wget gibi araçlar var.
Dosya sunan http server ruby ile birkaç satırda yapılabiliyor. Aşağıdaki kodu sharehttp ismiyle kaydedip çalıştırma izni verdikten sonra normal bir program gibi (sisteminizde ruby yüklüyse) kullanabilirsiniz.
#!/usr/bin/rubyKullanmak için /usr/bin/sharehttp olarak kaydedip, çalıştırma izni verebilirsiniz(ya da PATH inizde istediğiniz bir yere). Mesela /home/alp dizinini paylaşmak istiyorum:
#Alp OZKUL, Feb 2007
if ARGV.length == 0
port = 4000
path = Dir::pwd
elsif ARGV.length == 1
if ARGV[0] == "-h" || ARGV[0] == "--help" || ARGV[0] == "-help"
puts " Usage: sharehttp [PATH] [PORT]"
puts " Default values are PORT=4000, PATH=current working directory"
exit
end
port = 4000
path = ARGV[0]
elsif ARGV.length == 2
port = ARGV[1].to_i
path = ARGV[0]
else
exit
end
puts "(CTRL+C to exit)"
puts "PATH: #{path}"
puts "PORT: #{port}"
require 'webrick'
include WEBrick
server = HTTPServer.new(
:Port => port,
:DocumentRoot => path
)
trap("INT"){ server.shutdown }
server.start
sharehttp /home/alpBrowserdan http://localhost:4000 e girip dizinin listelenmiş olduğunu göreceksiniz.
3 yorum:
Kendi makinemizden erişebiliyoruz fakat ağdaki diğer makineler ip.adresi/4000 yazınca erişemiyor?
Başka makinelerden de erişebiliyoruz. Senin sisteminde firewall kurulu olabilir. Ya da doğru erişmeye çalıştığından emin misin?
http://192.168.1.6:4000
gibi..
Evet adresi dediğin gibi yazıyorum. Üstteki yoruma yazarken yanlış yazmışım. Fakat erişilemiyor yine de. Sanırım farklı bir problem var. Zira samba ile paylaştırdığım klasörleri yine windows makineler göremiyor.
Yorum Gönder