GNU/Linux >> Linux の 問題 >  >> Linux

LinuxでHTTPを介してファイルとフォルダをすばやく提供する方法

今日、私はWebブラウザを介してローカルエリアネットワーク内の他のシステムで単一のファイルまたはディレクトリ全体を提供するためのさまざまな方法に出くわしました。 Ubuntuテストマシンでいくつかのメソッドをテストしましたが、以下に説明するように、すべて正常に機能しました。 LinuxでHTTPを介してファイルやフォルダを簡単かつ迅速に提供する方法を知りたい場合は、次のいずれかの方法が間違いなく役立ちます。

LinuxでHTTPを介してファイルとフォルダを提供する

免責事項: ここに記載されているすべての方法は、安全なローカルエリアネットワーク内で使用することを目的としています。これらのメソッドにはセキュリティメカニズムがないため、本番環境で使用することはお勧めしません。 。警告されました!

方法1-simpleHTTPserver(Python)を使用する

次のリンクで、ファイルとディレクトリを即座に共有するための簡単なhttpサーバーをセットアップするための簡単なガイドをすでに作成しました。 Pythonがインストールされているシステムがある場合、この方法は非常に便利です。

  • simpleHTTPserverを使用して基本的なファイルサーバーをセットアップする方法

方法2-Quickserve(Python)を使用する

この方法は、特にArchLinuxとそのバリアント用です。詳細については、次のリンクを確認してください。

  • ArchLinuxでファイルとフォルダを即座に共有する方法

方法3-Rubyを使用する

この方法では、Rubyを使用して、UnixライクなシステムでHTTP経由でファイルとフォルダーを提供します。次のリンクの説明に従って、RubyとRailsをインストールします。

  • CentOSおよびUbuntuにRubyonRailsをインストールする

Rubyをインストールしたら、ネットワーク経由で共有するディレクトリ(ostechnixなど)に移動します。

$ cd ostechnix

そして、次のコマンドを実行します。

$ ruby -run -ehttpd . -p8000
[2018-08-10 16:02:55] INFO WEBrick 1.4.2
[2018-08-10 16:02:55] INFO ruby 2.5.1 (2018-03-29) [x86_64-linux]
[2018-08-10 16:02:55] INFO WEBrick::HTTPServer#start: pid=5859 port=8000

ポート8000​​がルーターまたはファイアウォールで開かれていることを確認してください。ポートがすでに他のサービスで使用されている場合は、別のポートを使用してください。

これで、URL- http:// :8000 / を使用して、任意のリモートシステムからこのフォルダのコンテンツにアクセスできます。 。

ルビーhttpサーバー

共有を停止するには、 CTRL + Cを押します 。

方法4-Http-server(NodeJS)を使用する

Httpサーバー NodeJSで記述されたシンプルな本番環境対応のコマンドラインhttp-serverです。設定は不要で、Webブラウザを介してファイルやディレクトリを即座に共有するために使用できます。

以下の説明に従ってNodeJSをインストールします。

  • LinuxにNodeJSをインストールする方法

NodeJSをインストールしたら、次のコマンドを実行してhttp-serverをインストールします。

$ npm install -g http-server

次に、任意のディレクトリに移動し、以下に示すようにHTTPを介してその内容を共有します。

$ cd ostechnix
$ http-server -p 8000
Starting up http-server, serving ./
Available on:
  http://127.0.0.1:8000
  http://192.168.225.24:8000
  http://192.168.225.20:8000
Hit CTRL-C to stop the server

これで、URL( http:// :8000 )を使用して、ネットワーク内のローカルシステムまたはリモートシステムからこのディレクトリのコンテンツにアクセスできます。 。

nodejs http-server

共有を停止するには、 CTRL + Cを押します 。

方法5-Miniserve(Rust)を使用する

ミニサーブ は、HTTP経由でファイルをすばやく提供できるもう1つのコマンドラインユーティリティです。これは、 Rust で記述された、非常に高速で使いやすく、クロスプラットフォームのユーティリティです。 プログラミング言語。上記のユーティリティ/メソッドとは異なり、認証サポートを提供するため、共有のユーザー名とパスワードを設定できます。

次のリンクの説明に従って、LinuxシステムにRustをインストールします。

  • LinuxにRustプログラミング言語をインストールする

Rustをインストールした後、次のコマンドを実行してminiserveをインストールします。

$ cargo install miniserve

または、リリースページからバイナリをダウンロードすることもできます。 実行可能にします。

$ chmod +x miniserve-linux

そして、コマンドを使用して実行できます(miniserveバイナリファイルが現在の作業ディレクトリにダウンロードされていると仮定します):

$ ./miniserve-linux <path-to-share>

使用法

ディレクトリを提供するには:

$ miniserve <path-to-directory>

例:

$ miniserve /home/sk/ostechnix/
miniserve v0.2.0
Serving path /home/sk/ostechnix at http://[::]:8080, http://localhost:8080
Quit by pressing CTRL-C

これで、URLを使用してローカルシステム自体から共有にアクセスできます- http:// localhost:8080 および/またはURLを使用したリモートシステムから-http:// :8080

単一のファイルを提供するには:

$ miniserve <path-to-file>

例:

$ miniserve ostechnix/file.txt

ユーザー名とパスワードを使用してファイル/フォルダーを提供します:

$ miniserve --auth joe:123 <path-to-share>

複数のインターフェースにバインドする:

$ miniserve -i 192.168.225.1 -i 10.10.0.1 -i ::1 -- <path-to-share>

ご覧のとおり、私は5つの方法しか与えていません。ただし、このガイドの最後に添付されているリンクに記載されている方法は他にもいくつかあります。それらもテストしてください。また、ブックマークを付けて随時再訪し、リストに新しい追加があるかどうかを確認してください。

参照:

  • http静的サーバーのワンライナーのリスト

Linux
  1. LinuxでFlatpakをインストールして使用する方法

  2. LinuxおよびUnixでネットワーク経由で大きなファイルをすばやく転送する方法

  3. Linux でソースから Nginx をインストールして構成する方法

  1. LinuxにElasticsearchとKibanaをインストールする方法

  2. LinuxにAnsibleをインストールしてテストする方法

  3. Linux ですべてのフォルダーとファイルの名前を小文字に変更するにはどうすればよいですか?

  1. Linux Screenをインストールして使用する方法は?

  2. Linuxでファイルとディレクトリの名前を変更する方法

  3. Linuxでファイルとディレクトリを圧縮する方法