Linux で Apache を使用してファイル サーバーを構築する手順

Linux で Apache を使用してファイル サーバーを構築する手順

1. ファイルサーバーについて

プロジェクトでは、公開ソフトウェアやデータをプロジェクト チーム メンバーと共有したい場合は、シンプルなファイル サーバーを構築することで実現できます。メンバーがローカル エリア ネットワーク内にいる限り、ブラウザーまたは wget コマンドを使用してデータをダウンロードしてアクセスできます。情報共有とソフトウェアバージョンの一貫性を保つ効果が得られます。この記事では、Apache サービスを使用して Linux 環境でファイル サーバーを構築する方法について説明します。

2. Apacheを使用してファイルサーバーを構築する

1. Linux環境のApacheサービスはhttpdと呼ばれるので、まずhttpdサービスをインストールします。yumソースが設定されている場合は、yumコマンドを使用して直接インストールします。

yum ソースが設定されていない場合は、設定についてはブログ「linux configure local yum source、configure domestic yum source、configure epel source」を参照してください。URL は //www.jb51.net/article/202406.htm です。

[root@node5 ~]# yum -y httpdをインストールします

2. httpdサービスを起動する

#httpdサービスを開始[root@node5 ~]# systemctl start httpd

#httpdサービスのステータスを確認する[root@node5 ~]# systemctl status httpd
● httpd.service - Apache HTTP サーバー
  ロード済み: ロード済み (/usr/lib/systemd/system/httpd.service; 無効; ベンダープリセット: 無効)
  アクティブ: 2020-12-17 16:26:05 CST 木曜日からアクティブ (実行中)、7 秒前
   ドキュメント: man:httpd(8)
      男:apachectl(8)
 メイン PID: 98576 (httpd)
  ステータス: 「リクエストを処理中...」
  Cグループ: /system.slice/httpd.service
      ├─98576 /usr/sbin/httpd -DFOREGROUND
      ├─98577 /usr/sbin/httpd -DFOREGROUND
      ├─98578 /usr/sbin/httpd -DFOREGROUND
      ├─98579 /usr/sbin/httpd -DFOREGROUND
      ├─98580 /usr/sbin/httpd -DFOREGROUND
      └─98581 /usr/sbin/httpd -DFOREGROUND

12月17日 16:26:05 node5 systemd[1]: Apache HTTPサーバーを起動しています...
12月17日 16:26:05 node5 httpd[98576]: AH00558: httpd: 192.168.110.184を使用して、サーバーの完全修飾ドメイン名を確実に特定できませんでした。このメッセージを確実に特定するには、「ServerName」ディレクティブをグローバルに設定してください
12月17日 16:26:05 node5 systemd[1]: Apache HTTPサーバーを起動しました。
ヒント: 一部の行は省略されています。完全な行を表示するには -l を使用してください。

#Apacheのバージョンを確認する [root@node5 ~]# httpd -version
サーバーバージョン: Apache/2.4.6 (CentOS)
サーバー構築日: 2020年11月16日 16:18:20

3. IPアドレスを確認し、Apacheページにアクセスする

#ローカルIPアドレスが192.168.110.184であることがわかります
[root@node5 ソフト]# ifconfig 
ens33: flags=4163<UP、BROADCAST、RUNNING、MULTICAST> mtu 1500
    inet 192.168.110.184 ネットマスク 255.255.255.0 ブロードキャスト 192.168.110.255
    ether 00:0c:29:11:c4:4a txqueuelen 1000 (イーサネット)
    RXパケット 24682 バイト 13301526 (12.6 MiB)
    RXエラー 0 ドロップ 4 オーバーラン 0 フレーム 0
    TXパケット 15119 バイト 2166095 (2.0 MiB)
    TXエラー 0 ドロップ 0 オーバーラン 0 キャリア 0 衝突 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
    inet 127.0.0.1 ネットマスク 255.0.0.0
    inet6 ::1 プレフィックス長 128 スコープID 0x10<ホスト>
    ループ txqueuelen 1 (ローカル ループバック)
    RXパケット 2402 バイト 221903 (216.7 KiB)
    RXエラー 0 ドロップ 0 オーバーラン 0 フレーム 0
    TXパケット 2402 バイト 221903 (216.7 KiB)
    TXエラー 0 ドロップ 0 オーバーラン 0 キャリア 0 衝突 0

ブラウザで http://192.168.110.184/ にアクセスします。次のインターフェイスが表示されたら、Apache サービスが正常にインストールされたことを意味します。

4. 共有ディレクトリ /opt/soft を作成し、共有する必要があるすべてのファイルをこのディレクトリに配置します。

[root@node5 soft]# mkdir /opt/soft

#このコマンドは、システム内のすべての tar.gz 圧縮パッケージを共有ディレクトリ [root@node5 soft] に配置します。# find / -name "*.tar.gz" -exec mv {} /opt/soft \;

[root@node5 soft]# ls /opt/soft/
amhello-1.0.tar.gz elasticsearch-6.2.2.tar.gz FastDFS_v5.08.tar.gz kibana-6.2.2-linux-x86_64.tar.gz nginx-1.19.3.tar.gz ntp-4.2.6p5.tar.gz tomcat-native.tar.gz
apache-tomcat-8.0.51.tar.gz fastdfs_client_java._v1.25.tar.gz findfile.tar.gz libopts-40.0.15.tar.gz nginx-1.8.0.tar.gz rarlinux-3.8.0.tar.gz cookies.txt
commons-daemon-native.tar.gz fastdfs-nginx-module_v1.16.tar.gz jdk-8u172-linux-x64.tar.gz nginx-1.10.0.tar.gz ngx_cache_purge-2.3.tar.gz today_db.tar.gz

5. Apacheにアクセスするためのデフォルトページは/var/www/html/なので、共有ディレクトリを/var/www/html/にリンクするだけです。

[root@node5 ~]# ln -s /opt/soft /var/www/html/file

[root@node5 ~]# ll /var/www/html/file
lrwxrwxrwx 1 root root 9 12月 17 16:29 /var/www/html/file -> /opt/soft

6. Apacheサービスを再起動してページを表示します。

[root@node5 ~]# systemctl httpdを再起動します

ブラウザを使用して http://192.168.110.184/file/ にアクセスします。次のインターフェイスが表示されたら、ファイル サーバーがセットアップされていることを意味します。

7. Web ページから、中国語の文字が文字化けしていることがわかりました。設定ファイルを変更することで、中国語の文字が正常に表示されるようになります。

#Apache 設定ファイルの末尾に 1 行追加します [root@node5 ~]# echo "IndexOptions Charset=UTF-8" >> /etc/httpd/conf/httpd.conf

[root@node5 ~]# systemctl httpdを再起動します

もう一度 Web ページ http://192.168.110.184/file/ にアクセスすると、ページ上の中国語のテキストが正常に表示されていることがわかります。

3. ファイルサーバーが利用可能かどうかをテストする

1. Windows のブラウザを使用して、http://192.168.110.184/file/ にアクセスします。ページが開き、クリックするとソフトウェアが自動的にダウンロードされる場合は、Windows 経由でファイルが正常にダウンロードされたことを意味します。

2. LAN内の別のLinuxマシンにファイルをダウンロードできるかどうかをテストする

#まず、node8 マシンの root アカウントを使用してダウンロード ファイルをテストします #wget コマンドを使用してファイル [root@node8 ~] をダウンロードします # wget http://192.168.110.184/file/Cookie.txt
--2020-12-17 16:53:00-- http://192.168.110.184/file/%E9%A5%BC%E5%B9%B2.txt
192.168.110.184:80 に接続しています...接続されました。
HTTP リクエストが送信されました。応答を待っています... 200 OK
長さ: 1181 (1.2K) [text/plain]
保存先: 'cookies.txt'

100%[= ...   

2020-12-17 16:53:00 (130 MB/秒) - 「cookie.txt」が保存されました [1181/1181]
 
[root@node8 ~]# wget http://192.168.110.184/file/today_db.tar.gz
--2020-12-17 16:53:26-- http://192.168.110.184/file/today_db.tar.gz
192.168.110.184:80 に接続しています...接続されました。
HTTP リクエストが送信されました。応答を待っています... 200 OK
長さ: 767 [application/x-gzip]
保存先: 'today_db.tar.gz'

100%[= ...   

2020-12-17 16:53:26 (268 MB/秒) - 'today_db.tar.gz' を保存しました [767/767]

#ファイルが正常にダウンロードできることがわかった [root@node8 ~]# ls cookie.txt today_db.tar.gz
today_db.tar.gz クッキー.txt

#ダウンロードファイルをテストするには、node8 マシン上の共通アカウント file1 を使用します [root@node8 ~]# useradd file1

[root@node8 ~]# echo "123456" | passwd --stdin file1
ユーザー file1 のパスワードを変更します。
passwd: すべての認証トークンが正常に更新されました。

[root@node8 ~]# su - ファイル1 
[file1@node8 ~]$ pwd
/ホーム/ファイル1
[file1@node8 ~]$ ls
[file1@node8 ~]$ wget http://192.168.110.184/file/Cookie.txt
--2020-12-17 17:44:10-- http://192.168.110.184/file/%E9%A5%BC%E5%B9%B2.txt
192.168.110.184:80 に接続しています...接続されました。
HTTP リクエストが送信されました。応答を待っています... 200 OK
長さ: 1181 (1.2K) [text/plain]
保存先: 'cookies.txt'

100%[= ...   

2020-12-17 17:44:10 (254 MB/秒) - 「cookie.txt」が保存されました [1181/1181]

[file1@node8 ~]$ wget http://192.168.110.184/file/today_db.tar.gz
--2020-12-17 17:44:20-- http://192.168.110.184/file/today_db.tar.gz
192.168.110.184:80 に接続しています...接続されました。
HTTP リクエストが送信されました。応答を待っています... 200 OK
長さ: 767 [application/x-gzip]
保存先: 'today_db.tar.gz'

100%[= ...   

2020-12-17 17:44:20 (216 MB/秒) - 'today_db.tar.gz' を保存しました [767/767]

#ファイル[file1@node8 ~]は正常にダウンロードできることが分かりました$ ls
today_db.tar.gz クッキー.txt

それ以来、ファイル サーバーは正常に構築され、正常に機能しています。

上記は、Linux で Apache を使用してファイル サーバーを構築する手順の詳細です。Linux でのファイル サーバーの構築の詳細については、123WORDPRESS.COM の他の関連記事をご覧ください。

以下もご興味があるかもしれません:
  • Linux インストール Apache サーバー構成プロセス
  • Linux オペレーティング システムに Apache サービスをインストールする方法
  • LinuxベースのApacheウェブサイトサービス構成の詳細な説明
  • Linux での Apache サーバーの構成と管理の簡単な分析
  • Linux での Apache サービスの展開と構成

<<:  MySQL での外部キーの作成、制約、削除

>>:  Vueはテーブルページング機能を実装します

推薦する

jsでライトスイッチの効果を実現

この記事の例では、ライトスイッチ効果を実現するためのjsの具体的なコードを参考までに共有しています。...

CSS のグリッドプロパティの使用に関する詳細な説明

グリッドレイアウト親要素に追加された属性グリッドテンプレートの列/グリッドテンプレートの行要素の行ま...

MySQLの日付文字列タイムスタンプ変換の詳細な説明

時刻、文字列、タイムスタンプ間の変換は、日常生活でよく使用されます。よく使用されますが、私は使用する...

Tomcat+Mysql の高同時実行構成の最適化の説明

1.Tomcatの最適化構成(1)Tomcatのcatalina.batを変更するJavaをサーバー...

JavaScriptオブジェクト指向について学ぼう

目次JavaScript プロトタイプチェーンオブジェクトプロトタイプトップレベルのプロトタイプOb...

Vue3カプセル化メッセージメッセージプロンプトインスタンス関数の詳細な説明

目次Vue3 カプセル化メッセージプロンプトインスタンス関数スタイルレイアウトカプセル化メッセージ....

ウェブデザイナーのウェブデザイン学習経験とスキルのまとめ

会社の影響力が拡大し、製品が改良され続けるにつれて、関連するイメージデザインもそれに追いつき、徐々に...

Xftp のダウンロードとインストールのチュートリアル (グラフィック チュートリアル)

Windows と Linux 間でファイルを転送する場合は、Xftp ツールを使用できます。この...

MySQL シリーズ 10 同時実行制御を実装するための MySQL トランザクション分離

目次1.同時アクセス制御2. 取引1. トランザクションは ACID 原則に従います。 2. トラン...

Google 翻訳ツール: 多言語ウェブサイトを素早く実装

Google Chinaは、ウェブサイトやブログを素早く簡単に多言語化できる翻訳ツールをリリースした...

Node.jsをゼロから学ぶ

目次URL モジュール1. 解析メソッド2. フォーマット方法3. 解決方法イベントモジュール(イベ...

ドメイン名、ポート、IPに基づいてnginx仮想ホストを構築する

nginxでサポートされている仮想ホストには3つの種類があります1. ドメイン名ベースの仮想ホスティ...

Javascriptの基礎を学ぶための10の重要な質問

目次1. Javascript とは何ですか? 2. DOMとは何か3. JSコードの実行方法4. ...

JavaScript ループトラバーサルの 24 種類のメソッドをすべてご存知ですか?

目次序文1. 配列走査法1. 各() 2. マップ() 3. 〜のために4. フィルター() 5. ...

WeChatアプレットは画像コントロールを選択します

この記事の例では、WeChatアプレットで画像コントロールを選択するための具体的なコードを参考までに...