Miniwebserver: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Astro (Diskussion | Beiträge) (→Ruby: gürü) |
Astro (Diskussion | Beiträge) (This page must use the Rübÿ Spëëd Mëtäl Cödïng template!!!111) |
||
Zeile 1: | Zeile 1: | ||
[[Category:Ruby]] [[Category:Python]] | [[Category:Ruby]] [[Category:Python]] | ||
=Python= | =Python= | ||
==beginner version== | ==beginner version== | ||
<source lang="python"> | <source lang="python"> | ||
Zeile 8: | Zeile 6: | ||
import sys | import sys | ||
import os | import os | ||
from SocketServer import ThreadingMixIn | from SocketServer import ThreadingMixIn | ||
from BaseHTTPServer import HTTPServer | from BaseHTTPServer import HTTPServer | ||
from SimpleHTTPServer import SimpleHTTPRequestHandler | from SimpleHTTPServer import SimpleHTTPRequestHandler | ||
class ThreadingHTTPServer(ThreadingMixIn, HTTPServer): | class ThreadingHTTPServer(ThreadingMixIn, HTTPServer): | ||
pass | pass | ||
if len(sys.argv) != 3: | if len(sys.argv) != 3: | ||
print "Usage: %s <port> <dir>" % (sys.argv[0],) | print "Usage: %s <port> <dir>" % (sys.argv[0],) | ||
sys.exit() | sys.exit() | ||
address = ('', int(sys.argv[1])) | address = ('', int(sys.argv[1])) | ||
server = ThreadedHTTPServer(address, SimpleHTTPRequestHandler) | server = ThreadedHTTPServer(address, SimpleHTTPRequestHandler) | ||
os.chdir(sys.argv[2]) | os.chdir(sys.argv[2]) | ||
try: | try: | ||
server.serve_forever() | server.serve_forever() | ||
Zeile 30: | Zeile 22: | ||
pass | pass | ||
</source> | </source> | ||
==advanced version== | ==advanced version== | ||
<source lang="python"> | <source lang="python"> | ||
#!/usr/bin/env python | #!/usr/bin/env python | ||
import sys | import sys | ||
from twisted.python import log | from twisted.python import log | ||
from twisted.internet import reactor | from twisted.internet import reactor | ||
from twisted.web import server, static | from twisted.web import server, static | ||
if len(sys.argv) != 3: | if len(sys.argv) != 3: | ||
print "Usage: %s <port> <dir>" % (sys.argv[0],) | print "Usage: %s <port> <dir>" % (sys.argv[0],) | ||
sys.exit() | sys.exit() | ||
root = static.File(sys.argv[2]) | root = static.File(sys.argv[2]) | ||
site = server.Site(root) | site = server.Site(root) | ||
reactor.listenTCP(int(sys.argv[1]), site) | reactor.listenTCP(int(sys.argv[1]), site) | ||
log.startLogging(sys.stderr) | log.startLogging(sys.stderr) | ||
reactor.run() | reactor.run() | ||
</source> | </source> | ||
==guru version== | ==guru version== | ||
<source lang="bash"> | <source lang="bash"> | ||
twistd -n web --path $path --port $port | twistd -n web --path $path --port $port | ||
</source> | </source> | ||
=Ruby= | =Ruby= | ||
==äđëqüäŧë== | ==äđëqüäŧë== | ||
<source lang="ruby"> | <source lang="ruby"> | ||
#!/usr/local/bin/ruby | #!/usr/local/bin/ruby | ||
require 'webrick' | require 'webrick' | ||
include WEBrick | include WEBrick | ||
if ARGV.size != 2 | if ARGV.size != 2 | ||
puts "Usage: #{$0} <port> <dir>" | puts "Usage: #{$0} <port> <dir>" | ||
exit | exit | ||
end | end | ||
s = HTTPServer.new( | s = HTTPServer.new( | ||
:Port => ARGV[0].to_i, | :Port => ARGV[0].to_i, | ||
:DocumentRoot => ARGV[1] | :DocumentRoot => ARGV[1] | ||
) | ) | ||
trap("INT"){ s.shutdown } | trap("INT"){ s.shutdown } | ||
s.start | s.start | ||
</source> | </source> | ||
==gürü== | ==gürü== | ||
<source lang="bash"> | <source lang="bash"> | ||
ruby -rwebrick -e 'WEBrick::HTTPServer.new(:Port=>8080,:DocumentRoot=>"/tmp").start' | ruby -rwebrick -e 'WEBrick::HTTPServer.new(:Port=>8080,:DocumentRoot=>"/tmp").start' | ||
</source> | </source> | ||
{{Rübÿ Spëëd Mëtäl Cödïng}} |
Version vom 26. Juni 2008, 17:12 Uhr
Python
beginner version
#!/usr/bin/env python
import sys
import os
from SocketServer import ThreadingMixIn
from BaseHTTPServer import HTTPServer
from SimpleHTTPServer import SimpleHTTPRequestHandler
class ThreadingHTTPServer(ThreadingMixIn, HTTPServer):
pass
if len(sys.argv) != 3:
print "Usage: %s <port> <dir>" % (sys.argv[0],)
sys.exit()
address = ('', int(sys.argv[1]))
server = ThreadedHTTPServer(address, SimpleHTTPRequestHandler)
os.chdir(sys.argv[2])
try:
server.serve_forever()
except KeyboardInterrupt:
pass
advanced version
#!/usr/bin/env python
import sys
from twisted.python import log
from twisted.internet import reactor
from twisted.web import server, static
if len(sys.argv) != 3:
print "Usage: %s <port> <dir>" % (sys.argv[0],)
sys.exit()
root = static.File(sys.argv[2])
site = server.Site(root)
reactor.listenTCP(int(sys.argv[1]), site)
log.startLogging(sys.stderr)
reactor.run()
guru version
twistd -n web --path $path --port $port
Ruby
äđëqüäŧë
#!/usr/local/bin/ruby
require 'webrick'
include WEBrick
if ARGV.size != 2
puts "Usage: #{$0} <port> <dir>"
exit
end
s = HTTPServer.new(
:Port => ARGV[0].to_i,
:DocumentRoot => ARGV[1]
)
trap("INT"){ s.shutdown }
s.start
gürü
ruby -rwebrick -e 'WEBrick::HTTPServer.new(:Port=>8080,:DocumentRoot=>"/tmp").start'
Rübÿ Spëëd Mëtäl Cödïng
Projects: CacaANSICam | Date Determinator | DVB-Scraping | Filmnächte-Scraping | GeeKal | Gruntmaster | Harvester | Hirn | Irb | Jargon-File | Ruby-MediaWiki | Miniwebserver | Momomoto | Pentabarf | Podcast-fetching | Ruby | Ruby-Geekend | Ruby und Ruby on Rails | Sedusa | VDS-Badges | Xmotoctl | Youtube-Scraping