2013-03-10 26 views
17

Tôi đang tìm một thùng rác đơn giản mà tôi có thể khởi chạy trong trình bao và có nó phục vụ thư mục hiện tại (tốt nhất là không ..), có thể là -p để chỉ định cổng. Vì nó phải là một máy chủ phát triển, nên theo mặc định nó chỉ cho phép các kết nối từ localhost, có thể với một tùy chọn để chỉ định khác. Đơn giản hơn, càng tốt.Máy chủ tệp đơn giản để phục vụ thư mục hiện tại

Không chắc chắn nên sử dụng thẻ nào tại đây.

+1

Bạn có thể đăng bài này lên trên http://serverfault.com/ để thay thế. –

+0

giải pháp ruby: http://stackoverflow.com/questions/3108395/serve-current-directory-from-command-line – Alec

+0

Câu hỏi về "công cụ phần mềm thường được các lập trình viên sử dụng" là chủ đề. Khi bạn phát triển web (và thậm chí cả các kiểu phát triển khác ngày nay), bạn cần truy cập các tệp cục bộ qua HTTP. Có lẽ đây vẫn là chủ đề không chính xác vì nó yêu cầu một đề xuất công cụ, nhưng tôi không đồng ý với lý do đóng cửa được đưa ra. – vossad01

Trả lời

26
python3 -m http.server 

hoặc nếu bạn không muốn sử dụng cổng mặc định 8000

python3 -m http.server 3333 

hoặc nếu bạn muốn cho phép kết nối từ localhost chỉ

python3 -m http.server --bind 127.0.0.1 

Xem docs.


Các Python tương đương 2 lệnh là

python -m SimpleHTTPServer 

python -m SimpleHTTPServer 3333 

Không có tùy chọn --bind.

Xem Python 2 docs.

3

Có ứng dụng Perl App::HTTPThis hoặc tôi thường sử dụng máy chủ Mojolicious nhỏ để thực hiện việc này. Xem blog post của tôi từ một thời gian trở lại.

Tạo tệp có tên là server.pl. Đặt cái này vào trong.

#!/usr/bin/env perl 

use Mojolicious::Lite; 

use Cwd; 
app->static->paths->[0] = getcwd; 

any '/' => sub { 
    shift->render_static('index.html'); 
}; 

app->start; 

Cài đặt Mojolicious: curl get.mojolicio.us | sh và sau đó chạy morbo server.pl.

Nên hoạt động và bạn có thể tinh chỉnh tập lệnh nếu cần.

+0

Tôi không thích đường ống vào vỏ. – Reactormonk

+0

Ok sau đó cài đặt thông qua cpan: 'cpan -i Mojolicious' hoặc thông qua apt (mặc dù nó có thể là một chút cũ. Đây chỉ là một kịch bản cài đặt nhanh :-) –

+0

Phiên bản một lớp của ứng dụng Mojolicious đó là:' perl -Mojo -E 'a-> static-> đường dẫn (["."]); A-> bắt đầu' daemon' – alexm

10

Đối với Node, có http-server:

$ npm install -g http-server 
$ http-server Downloads -a localhost -p 8080 
Starting up http-server, serving Downloads on port: 8080 
Hit CTRL-C to stop the server 

Python có:

  • Python 3: python -m http.server --bind 127.0.0.1 8080
  • Python 2: python -m SimpleHTTPServer 8080

Lưu ý rằng Python 2 không có tùy chọn --bind, vì vậy nó sẽ cho phép tất cả các kết nối (không chỉ từ localhost).

1

Sử dụng Twisted Web:

twistd --pidfile= -n web --path . --port 8080 

--pidfile= vô hiệu hóa các tập tin PID. Nếu không có tệp twistd.pid sẽ được tạo trong thư mục hiện tại. Bạn cũng có thể sử dụng --pidfile ''.

Các vấn đề liên quan