投稿日: | 最終更新日:
ConoHaのVPSにApacheインストール
ConoHaVPSにApacheをインストールし、ipアドレスで接続可能状態にします。
Apacheとは?
Apacheとは、Webサーバアプリケーションです。Apacheを使ってWordPressやDjangoのサイトを公開します。Apache以外にも以下のWebサーバアプリケーションがあります。
- Microsoft IIS(Internet Information Server)
- nginx(エンジンエックス)
Apacheからnginxへの乗り換えが進む昨今ですが、あえてApacheを使ってみます。
Apacheは世界中で最も使われているWebサーバです。ApacheとnginxはOSS(オープンソースソフトウェア)なので無償で利用できます。
「Microsoft IIS」は、Windows Server上で稼働するWebサーバで、ベンチマークテストでは抜群の成績です。しかし、Windowsサーバで使われるもので、IIS単体では使えません。
Apacheをパッケージインストール
Apacheをインストールするには、インストールが簡単ですので「yumコマンド」によってパッケージインストールします。
Apacheをyumでパッケージインストールする理由
運用管理を考えると、Apacheはyumでインストールするほうがトラブルが少なく済みます。企業などでは、プロのエンジニアがソースコードからコンパイルしてインストールすることがあります。しかし、そのエンジニアが退職した瞬間に誰もApacheの扱いが分からなくなり、以下のようなトラブルが発生します。
- 「rpm コマンド」で確認できない
- 「yum コマンド」で確認できない
- httpd(Apache)を重複してインストールしてしまう
- どのパッケージをアンインストールしてよいかわからない
組織や本番環境でWEBサーバを運用する場合は、共通のルール化として「yumでインストールのみ」を選択したほうが無難です。
ApacheがHTTP/2に対応したけれど…
CentOS 7.4(1708)で、HTTP/2(mod_http2)に対応した「Apache httpd 2.4」が登場しました。しかし、現時点(2018年2月現在)ではソースインストールするか、サードパーティリポジトリからインストールする必要があります。今回はHTTP/2を諦めます。(今後解消されるかもしれません。)
2017年末頃からCentOSコミュニティ承認済みの「IUSリポジトリ」を使って「yum」で簡単にインストールできるようになりましたが、あくまでもテストリポジトリですので、まだまだ本番では推奨できません。
作業の流れ
以下のような作業を行います。
- Apacheインストール
- Apacheの自動起動設定・起動
- firewallの設定
- 動作確認
数回のコマンドで実行できます。
準備
以下の準備を行います。
①ConoHaをレンタルします。
②ConoHaにroot以外のユーザを作ります。
③ConoHaにSSH接続するための設定を行います。
④ConoHaへのrootログインを禁止します。
⑤ConoHaのportを22から変更します。
必要なもの
レンタルサーバ | ConoHaのVPSサーバ |
---|---|
独自ドメイン | ムームードメインで、独自ドメインのみ取得。2年契約で(2,000〜3,000円)くらい? |
ConoHaVPSの環境
アプリケーションサーバ OS | CentOS7.4 |
---|---|
クライアントPC
操作開発用のクライアントPCを用意します。windowsでもmacでも可能ですが、今回はubuntuを利用します。
OS | Ubuntu 16.04.1 LTS 64bit |
---|
Apacheインストール
①ConoHaにログインしたら、管理者権限にログインします。
su -
②yumリポジトリで提供されている「Apache httpd 2.4」を確認します。
yum info httpd Loaded plugins: fastestmirror, langpacks 〜省略〜 Available Packages Name : httpd Arch : x86_64 Version : 2.4.6 Release : 67.el7.centos.6 Size : 2.7 M Repo : updates/7/x86_64 Summary : Apache HTTP Server URL : http://httpd.apache.org/ License : ASL 2.0 Description : The Apache HTTP Server is a powerful, efficient, and extensible : web server.
③Apacheをインストールします。
yum -y install httpd
④バージョンを確認します。
httpd -version Server version: Apache/2.4.6 (CentOS) Server built: Oct 19 2017 20:39:16
Apacheのサービス設定
Apacheのインストールが完了したら、httpd(Apache)のサービスの設定をします。
①現在の httpd のサービスの設定を確認します
systemctl list-unit-files | grep httpd httpd.service disabled
「disabled」の状態では、OSの再起動後に自動起動しません。
②コマンドはsystemctlで「enable」に設定します。
systemctl enable httpd Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
再確認。
systemctl list-unit-files | grep httpd httpd.service enabled
③起動状態を確認します。
systemctl status httpd ● httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled) Active: inactive (dead) Docs: man:httpd(8) man:apachectl(8)
ステータスが「Active: inactive (dead)」になっている場合は、サービス停止しています。
④Apacheを起動します。
systemctl start httpd
起動したか確認します。
systemctl status httpd ● httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled) Active: active (running) since Mon 2018-02-12 13:28:56 JST; 4s ago Docs: man:httpd(8) man:apachectl(8) Main PID: 22002 (httpd) Status: "Processing requests..." CGroup: /system.slice/httpd.service
起動が成功すると、ステータスが「Active: active (running)」になっています。
firewallの設定
アクセスする前にファイアウォールを設定します。 CentOS7の初期状態では「firewalld」というファイアウォールが動作するようになっています。
①firewalld に httpd (80番ポート)への通信を許可します。
firewall-cmd --add-service=http --zone=public --permanent
②firewalldを再起動します。
firewall-cmd --reload
httpd(Apache)の動作確認
何も設定をしない状態で httpd(Apache)にアクセスをしてみます。「IPアドレス」でブラウザよりアクセスしてみてください。
①「http://xx-xx-xx(ConoHaVPSのグローバルipアドレス)/」でアクセスしてみました。
②ドキュメントルートにhtmlを配置します。「Hello World!」を表示してみます。(※管理者権限でConoHaのコンソールへログイン)
# cd /var/www/html/ # vi index.html
以下の内容を記述して保存します。
Hello World!
ファイルが保存できたか確認します。
# ls index.htm
③「http://xx-xx-xx(ConoHaVPSのグローバルipアドレス)/index.html」にアクセスすると、以下のような表示が出力します。
次回
次回はVPSに取得した独自ドメインを設定します。
- Python 114
- 制作 54
- RaspberryPi 41
- Django 40
- WordPress 40
- Linux 27
- VPS 22
- JavaScript 21
- PHP 20
- HTML・CSS 19
- AWS 16
- 仮想環境 15
- レスポンシブデザイン 13
- マイコン 11
- WEB全般 11
- 動画製作 9
- Webサービス 8
- 統合開発環境 8
- 機械学習 8
- PyCharm 7
- jQuery 7
- AfterEffects 7
- 起業・設立 7
- Django REST framework 6
- C# 6
- デザイン 6
- SEO 6
- pydata 6
- Visual Studio 5
- 数学 5
- 携帯サイト 5
- heroku 5
- Mac 5
- illustrator 5
- node.js 5
- Anaconda 5
- Nginx 4
- Jupyter Notebook 4
- インフラ 4
- Google Colaboratory 4
- symfony 4
- Webスクレイピング 3
- photoshop 3
- Go言語 3
- PC 3
- ツール 3
- Docker 3
- facebook 3
- 作業効率化 3
- データベース 3
- Cloud9 3
- コマンド 2
- micro:bit 2
- Kali Linux 2
- Webサーバー 2
- MariaDB 2
- ドローン 2
- コンテナ 2
- DaVinci Resolve 2
- ネットワーク 2
- Java 2
- movie 2
- PCDJ 2
- 音楽 2
- XSERVER 2
- Ansible 1
- Vue.js 1
- JSON 1
- Bootstrap 1
- バージョン管理システム 1
- SSL 1
- S3 1
- ムームードメイン 1
- ネットワーク 1
- アニメーション 1
- D3.js 1
- Rhino 1
- アニメ 1
- git 1
- windows 1
- アクセス解析 1
- スマートフォン 1
- アフィリエイトノウハウ 1
- 知識 1
- TypeScript 1
- 役立つ本・書籍 1
- データサイエンス 1
- ESP32 1
- AI 1
- ownCloud 1
- API 1