5行のbashを使用して単純なWebサーバーを作成する方法

最近、ブログはサーバーのトピックで少し活発になっています、私たちの友人のフィコは彼のシリーズでコンピュータネットワークについて私たちに講義をしています 中小企業のためのコンピュータネットワーク、およびWebサーバーをインストールして構成するためのいくつかの記事 GNU / LinuxにXAMPPをインストールして構成する方法 y UbuntuにGooglePageSpeedを使用してNGINXを自動的にインストールする方法.

フリーソフトウェアの世界がいかに育ち、時にはシンプルで、時にはもう少し複雑なのか、今日は小さな5行の試みをお届けします。これにより、シンプルなWebサーバーを作成できます。

シナトラ

シナトラ によって行われた試みの名前です ベンラーディ 自由に配布されているので、正確であると同時に効果的です。必要なコード行を使用してbashを作成またはダウンロードし、ホストするポートとメッセージを使用してbashを実行するだけです。

このスクリプトを使用すると、簡単なWebサーバーを作成でき、さまざまなGNU / Linuxディストリビューションで動作し、OS Xで動作します。インストールは不要で、使用するパスに柔軟性があり、あらゆる種類のコンテンツを許可し、さらに到達できます。任意のサーバーに情報をすばやく配置したい場合に、非常に便利なツールになります。

シナトラの使い方

シナトラ これは、次のコード行で構成されています。

#!/ bin / bash RESPONSE = "HTTP / 1.1 200 OK \ r \ nConnection:keep-alive \ r \ n \ r \ n $ {2:-" OK "} \ r \ n" while {echo -en " $ RESPONSE "; } | nc -l "$ {1:-8080}"; エコーを行う "============================================== = "完了

.shファイルを任意の名前で作成し、次のように実行するだけです。

./shinatra.sh [port] [response]

公式リポジトリから更新されたスクリプトを取得することもできます。これを行うには、次の手順に従います。

git clone https://github.com/benrady/shinatra.git cd shinatra / ./shinatra.sh 80 'サーバー応答メッセージ'

スクリプトに、たとえば次のように、必要なものを送信できます。

簡単なWebサーバーを作成する

間違いなく、Webサーバーを機能させるための高速でシンプルかつ簡単な方法であり、そのユーティリティと範囲はさまざまです。 このスクリプトをどのように使用しますか? 便利だと思いますか?


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:MiguelÁngelGatón
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。

  1.   ガスパルフェルナンデス

    少し前に、ルートやすべてに応じていくつかの応答を定義できる同様のスクリプトを作成しました。 5行ではありませんでしたが、いくつかのことができました。 http://totaki.com/poesiabinaria/2015/03/mini-servidor-web-con-bash-y-netcat-para-paginas-en-mantenimiento/

    ネットキャットスタイルを使用することの欠点は、同時実行性を利用しないことと、リソースが大量に浪費されることですが、これは素晴らしい実験です🙂

  2.   ゴンサロ・マルティネス

    もうXNUMXつの方法は、python(実質的にすべてのディストリビューションに付属)を使用することです。

    sudo python -m SimpleHTTPServer 80

    動作が異なります。この方法は、サーバーが実行されているディレクトリにあるファイルを提供しますが、別の簡単な方法です

  3.   ホセ·ペレス

    phpの別のものは
    php -S 127.0.0.1:9000

  4.   AntonioCifuentesプレースホルダー画像

    コマンドラインごとのWebサーバーの完全なリストが必要な場合に備えて、XNUMX年前に読んだこの投稿。

    https://www.busindre.com/servidor_web_por_linea_de_comandos.

  5.   エドゥアルド・クオモ

    何もインストールされておらず、ROOT権限がないサーバーでファイルを転送できます。

    #!/ bin / bashに
    ファイル=»$ 1″
    ポート= 8080

    n =»\ r \ n»
    body =»$(base64«$ {file}»)»

    応答=»HTTP / 1.1 200OK»
    RESPONSE =»$ {RESPONSE} $ {n}接続:キープアライブ»
    RESPONSE =»$ {RESPONSE} $ {n}コンテンツタイプ:アプリケーション/オクテットストリーム»
    RESPONSE =»$ {RESPONSE} $ {n} Content-Disposition:inline; ファイル名= \»$ {ファイル} \»»
    RESPONSE =»$ {RESPONSE} $ {n} $ {n} $ {body}»

    while {echo -en "$ RESPONSE"; } | nc -l "$ {port}"; 行う
    エコー«============================================== »»
    行われ

    次に、それを受け取ったら、「base64-dfilename」で再度変換します。

  6.   エドゥアルド・クオモ

    他にも多くの例があります。
    $ マン nc

  7.   ホセマリアガルシア

    LinuxとmacOSでは、優先シェルとパッケージマネージャーを使用できます。 Windows 10では、Windows Subsystem for Linuxをインストールして、UbuntuとBashのバージョンをWindowsと統合することができます。これは非常に優れたチュートリアルです。

    https://clongeek.com/como-instalar-macos-desde-usb/