CentOS7+ApacheからNginxへ移行のため色々取り組んでるよ!

ブログ

2018年1月からさくらインターネットでVPS(仮想専用サーバ)を借りてLinuxの勉強をしたりWordpressでブログを書いている投資混浴エンジニアの すずめ8(@suzume8_vc) です。

IT業界でシステムエンジニア歴は約20年です。社会人になってからLinuxを触ってます。Webサーバと言えばApacheの時代が長く続いてますが、最近は新しいWebサーバであるNginx(エンジンエックス)を使う方も増えてきたようなので、勉強のためインストールと接続テストを行ってみました。
2018年7月から純金積立、投資信託、日本株など投資関係と青森県酸ヶ湯温泉の混浴の記事が伸びているため、投資混浴エンジニアと名乗ってますw
最初にVPS(仮想専用サーバ)を借りて、サーバ構築のため参考にしたサイトはさくらインターネットさんのネコでもわかるシリーズとなります。
シリーズの3回目でWebサーバとして利用できるようにするためApacheのインストールの記事を参考にしてサーバ構築を行いました。
Apacheといえば、俺が社会人になりLinuxで勉強をしていた時からあったアプリケーションとなります。
当時はLinuxなど触ったことなくはっきり言ってチンプンカンプンでApacheって何…?、Webサーバ、良くわからんよ…?状態でしたが、20年近く経ち、色々なサイトを参考にしつつ勉強をしてどうにか自分でWebサーバの構築ができるようになりました!
ネコでもわかるシリーズで取り扱っていたWebサーバがApacheだったため、そのままApacheをインストールしましたが、この時も別のWebサーバをインストールしようか迷ってました。

今のところWebサーバに関して特に不満はありませんが、今後Apacheに代わるWebサーバが標準となることも考えられるため、勉強目的でNginx(エンジンエックス)のインストールと設定を行ってみることにしました。

◎ Nginx(エンジンエックス)について理解したい
◎ インストールおよび設定ができるようになりたい
◎ 最終的にはApacheからNginxへ移行できるようになりたい
; //

Nginxとは

エンジンエックスと読むようです。
正直俺も読み方は知りませんでした。
ウィキペディアより引用させて頂きます。

フリーかつオープンソースなWebサーバである。処理性能・高い並行性・メモリ使用量の小ささに焦点を当てて開発されており、HTTP、HTTPS、SMTP、POP3、IMAPのリバースプロキシの機能や、ロードバランサ、HTTPキャッシュなどの機能も持つ。

Webサーバの数はApacheのほうが多いようですが、上位サイトではNginxの使用が増えているようです。
残念ながら俺のブログのようにごくごく小さなサイトではApacheでも今のところ問題はありません。

インストールと接続テスト(2019年1月6日更新)

まずはTeratermを起動してssh 経由でサーバへ接続します。

次に、root権限でコマンドを実行するため su コマンドを実行します。

$ su –
次に、etcディレクトリ -> yum.repos.dディレクトリ と移動してnginx.repoファイルを作成します。
# vim nginx.repo

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=0

次に、Nginxが事前にインストールされてないか確認します。

# yum list installed |grep nginx

Nginxがインストールされてなければインストールを行います。

# yum –enablerepo=nginx install nginx

インストールされたか再度確認します。
今度はインストールされているはずです。

# yum list installed |grep nginx

次に、etcディレクトリ -> nginxディレクトリ -> conf.dディレクトリへ移動し、default.confファイルを編集します。

# vim default.conf
listen 80 となっているところを任意のポート番号へ変更します。
その後、Firewallのポートを開けます。
xxxxは任意のポート番号が入ります。
# firewall-cmd –zone=public –add-port=xxxx/tcp –permanent
次にリロードを行い、設定を反映させます。
# firewall-cmd –reload
次にNginxのサービスを起動します。
# systemctl start nginx
最後にChromeなどの任意のWebブラウザからhttp://[自分のサーバ名]:xxxx で接続し、“Welcome to Nginx!”のメッセージが出ればNginxで接続できたことが確認できます。

Nginxのサービス停止とFirewallのポートを閉じる方法

悪意のあるアクセスを受けないようにするため、接続後は必ずNginxのサービスを停止し、Firewallのポートを閉じましょう。

# firewall-cmd –zone=public –remove-port=xxxx/tcp – -permanent
# firewall-cmd –reload
# systemctl stop nginx
念のためChromeなどの任意のWebブラウザからhttp://[自分のサーバ名]:xxxx で接続し、エラーが出ることを確認しましょう。
ポートが閉じられて、nginxのサービスが停止しているとWebブラウザから接続できないのでエラーが出るのが正解です。

今後について(2019年1月6日更新)

最終的にはApacheからNginxへ移行できるようにできればと考えてます。
自分自身色々と勉強する必要があるので、今後も時間を見つけてチャレンジしていきます!

まとめ

  • ネコでもわかるシリーズを見てApacheのインストールを行いました!
  • 勉強のためNginxのインストールと設定を行いました!
  • 最終的にはApacheからNginxへ移行を行えればと考えてます!

 

タイトルとURLをコピーしました