CodeIgniterをVPSにデプロイする方法!初心者向けサーバー公開手順
生徒
「パソコンで作ったCodeIgniterのウェブサイトを、インターネット上で誰でも見られるようにするにはどうすればいいですか?」
先生
「作ったウェブサイトを、インターネット上に置くことをデプロイといいます。そのためにはVPSという専用のサーバーを使うのが一般的ですよ。」
生徒
「VPSとは何ですか?パソコンと何が違うんでしょうか?」
先生
「VPSは、インターネット上に24時間つながっている、あなた専用の貸しパソコンのようなものです。さくらVPSやConoHa VPSなどが有名ですね。一緒に設定手順を見ていきましょう!」
1. デプロイとVPSの基礎知識
ウェブサイトを作ることは、家を建てることに似ています。自分のパソコンの中でサイトを作るのは、自分の部屋に模型の家を建てるようなものです。これをインターネットという広い世界で誰でも見られるように公開することを、エンジニア用語でデプロイと呼びます。
VPSとは、バーチャル・プライベート・サーバーの略です。簡単に言うと、インターネット上に存在する、あなた専用の高性能なパソコンです。普通のレンタルサーバーと違って、中身を自由にカスタマイズできるため、CodeIgniterのようなフレームワークを動かすのに最適です。さくらインターネットやConoHaなどの会社が、この貸し出しサービスを提供しています。
2. VPSへの接続準備
VPSを借りたら、まずは自分のパソコンから接続する必要があります。これにはSSHという技術を使います。SSHとは、離れた場所にあるパソコンを安全に操作するための通信手段です。まるでリモコンで遠隔操作するようなイメージです。
接続にはターミナルやコマンドプロンプトという画面を使います。以下のコマンドを打つことで、VPSの扉を開くことができます。
ssh root@あなたのVPSのIPアドレス
IPアドレスとは、インターネット上の住所のようなものです。このコマンドを打ってパスワードを入力すれば、VPSの中に入ることができます。
3. サーバー環境の構築
CodeIgniterを動かすためには、PHPというプログラミング言語が動く環境が必要です。また、ウェブサイトを表示するためのソフトウェア(ApacheやNginx)もインストールしなければなりません。
まずは、サーバーでPHPが正しく動くか確認する簡単なプログラムを作ってみましょう。これをindex.phpとして保存します。
<?php
echo "サーバー環境は正常です!";
?>
このように表示されれば、プログラムが動く土台ができた証拠です。これがウェブサーバーの基礎となります。
4. CodeIgniterのアップロード
次に、あなたのパソコンで作ったCodeIgniterのデータを、VPSに転送します。FTPソフトやSCPコマンドを使います。FTPとは、ファイルをサーバーに送るための配達便のようなものです。
転送が完了したら、CodeIgniterが正しく動くか確認するために、設定ファイルの環境変数を修正します。CodeIgniterは、どのサーバーで動いているかを自動で判断する機能を持っています。
$config['base_url'] = 'http://あなたのドメイン/';
ドメインとは、インターネット上の表札です。これを設定することで、ウェブブラウザからアクセスできるようになります。
5. データベースの設定と接続
ウェブサイトに会員登録機能やブログ機能がある場合、データを保存するためのデータベースが必要です。MySQLやMariaDBといったデータベース管理システムをVPSにインストールします。
CodeIgniterからデータベースへ接続するためには、データベース名、ユーザー名、パスワードを設定します。これらは、家で言うところの「家の鍵」のようなものです。
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'db_user';
$db['default']['password'] = 'secret_password';
$db['default']['database'] = 'my_database';
これを設定することで、CodeIgniterがデータベースと会話できるようになり、情報の保存や読み込みが可能になります。
6. 公開前の最終確認
最後に、ウェブサイトが正しく表示されるか確認しましょう。ウェブブラウザを開き、あなたのドメインを入力します。トップページが表示されれば成功です。
公開後は、CI/CDの考え方を取り入れると便利です。CI/CDとは、プログラムの更新を自動化する仕組みです。初心者の方は、まずは手動でアップロードすることから始め、慣れてきたらGitを使って自動化を目指すと良いでしょう。VPSは常に動いているため、セキュリティ対策としてファイアウォール設定を忘れないようにしてください。