このサイトは、只今WEB業界で活躍中のデザイナー、プログラマーの方々の情報を集めたweb統合情報サイトです。

web帳

記事詳細

2014.03.23

さくらVPS(仮想専用サーバ)の設定方法 その2 VirtualHost,PHP,MySQL,node設定

前回のさくらVPS(仮想専用サーバ)の設定方法の続きとなります。

VirtualHost設定

まずは、VirtualHost(バーチャルホスト)の設定を行っていきます。

バーチャルホストとは、Webサーバソフトの機能の一つで、1台のWebサーバで複数のドメイン名のWebサイトを運用することになります。

1つのIPアドレスに複数のドメイン名を割り当てることにより、1台のWebサーバで複数のWebサイトを同時に運用することができ、バーチャルホストを利用すれば何台もサーバを用意せずに済みます。

「dev.example.com」といったディレクトリを作成します。

mkdir -p /var/www/dev.example.com/public_html/

作業者に権限を付与します。

chown -R webcyou:webcyou /var/www/dev.example.com/public_html/

/etc/httpd/conf.d/内に「dev.example.com.conf」を作成します。

/etc/httpd/conf.d/内に .confファイルを作成することにより、デフォルトで参照していきます。

vim /etc/httpd/conf.d/dev.example.com.conf

以下の様な設定ファイルを記述。

<VirtualHost *:80>
   ServerName dev.example.com
   DocumentRoot "/var/www/dev.example.com/public_html"
   DirectoryIndex index.html index.php
   ErrorLog /var/log/httpd/dev.example.com_error_log
   CustomLog /var/log/httpd/dev.example.com_access_log combined
   AddDefaultCharset UTF-8
   <Directory "/var/www/dev.example.com/public_html">
       Allow from all
   </Directory>
</VirtualHost>

/etc/httpd/conf/内の httpd.conf を修正していきます。

vim /etc/httpd/conf/httpd.conf

/NameVirtualHost で検索。

#NameVirtualHost *:80

NameVirtualHost *:80

syntax error 等が無いかtestします。

service httpd configtest

問題無ければhttpdを再起動し、修正内容を反映させます。

service httpd restart

何でも良いのですが、testとしてhtmlファイルを置いてみました。

vim /var/www/dev.example.com/public_html/index.html

設定パターンを保存できるHostsファイル書き換えmac用アプリ「Hoster」を使ってhostの設定を行います。

Hoster

Hoster 公式ホームページ

右のDownloadからダウンロード出来ます。

インストールしたら、ホストの追加を行います。

以下の様な感じで、

緑ランプが適応されている状態です。緑色でない場合クリックしましょう。

完了したら、ブラウザで確認。以下の設定したURLを叩いて、

http://dev.example.com/

追加したhtmlが表示出来ればOK!

PHP,MySQL インストール

PHPとMySQLの設定となります。

一通り、yumコマンドでインストール。

yum install php php-devel php-mysql php-gd php-mbstring

php.iniを修正するため、/etc/php.ini.orgでバックアップをとり、

/etc/php.iniを修正していきます。

cp /etc/php.ini /etc/php.ini.org
vim /etc/php.ini

error_logを修正するので /error_logで検索。

/error_log
;error_log = php_errors.log

error_log = var/log/php_errors.log

日本語設定。/mbstringで検索。

/mbstring
;mbstring.language = Japanese

mbstring.language = Japanese
;mbstring.internal_encoding = EUC-JP

mbstring.internal_encoding = UTF-8

/http_inputで検索。コメントアウトを外します。

;mbstring.http_input = auto

mbstring.http_input = auto

mbstring.detect_order もautoにしますので、/detect_orderで検索。コメントアウトを外す。

/detect_order
;mbstring.detect_order = auto

mbstring.detect_order = auto

/expose_phpで検索。OnをOffに変更。

/expose_php

expose_php = On

expose_php = Off

timezoneの設定も追加。/timezoneで検索し、date.timezone = Asia/Tokyo に変更。

/timezone
;date.timezone =

date.timezone = Asia/Tokyo

ここまで修正したら、保存終了。

:wq

httpdを再起動します。

service httpd restart
MySQL インストール

続いて、MySQLをyumコマンドでインストールします。

yum install mysql-server

こちらも同様、mycnfを編集していくのでバックアップを作成し修正。

cp /etc/my.cnf /etc/my.cnf.org
vim /etc/my.cnf

以下を追加します。

character_set_server=utf8
default-storage-engine=InnoDB
innodb_file_per_table
[mysql]
default-character-set=utf8
[mysqldump]
default-character-set=utf8

追加したら、保存終了。

:wq

mysqldを再起動。

service mysqld start

MySQLの初回起動時に実行するとよいコマンドmysql_secure_installation を実行します。

MySQL Serverのインストール後の初期設定はセキュリティの甘い設定となっているため、このコマンドを利用することで、以下のような設定を簡単に行うことができます。

・rootパスワードの変更

・rootのリモートホストからのログイン禁止

・匿名ユーザの削除

・testデータベースの削除

mysql_secure_installation

任意のパスワードを設定し、後は y リターンで大丈夫かと思います。

MySQLの自動起動設定のchkconfig mysqld onを行います。

chkconfig mysqld on

ここまでできたら、 mysql -u root -pでログイン出来るか確認します。

mysql -u root -p

rvm sqlite Ruby on Rails node.js etc..インストール

続いて、node.jsやruby、sqliteをyumコマンドでインストールしていくのですが、

Ruby on Rails もインストールしたいので、rubyの最新版をインストールするため、rvmを使ってインストールを行います。

yum install zlib-devel openssl-devel sqlite-devel

権限がないとエラーとなりますので、sudoコメンドで実行。

sudo yum install zlib-devel openssl-devel sqlite-devel

rvmをインストール。

curl -L https://get.rvm.io | bash -s stable

rvmを実行。

source /home/webcyou/.rvm/scripts/rvm

バージョンを指定しrvmコマンドでインストール。

rvm install 1.9.3

rubyのバージョンを確認し、1.9.3であれば成功。

(確認取れない場合は一旦、VPSから抜けて再度ログインすると良いかもです。)

バージョン確認。

ruby -v
gem -v

sqliteもインストールしていきます。

gem install --no-ri --no-rdoc sqlite3

–no-ri –no-rdocオプション付与で、ドキュメントのインストールをしない様にしております。

node.js インストール

続いて、node.jsをインストールします。

公式サイトは以下からとなります。

node.js

http://nodejs.org

公式サイトからのリンクもあるのですが、こちらにCentOSのインストール方法が記載されております。

https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager#rhelcentosscientific-linux-6

RHEL/CentOS/Scientific Linux 6

yum repolist
rpm -Uvh http://download-i2.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
sudo yum install nodejs npm --enablerepo=epel
sudo yum install npm --enablerepo=epel

記載されているコマンドを実行していけばインストール出来るかと思います。 インストールされているか確認。

node -v
Ruby on Rails インストール

Ruby on Railsはgemコマンドを用いてインストールしていきます。

gem install rails

Ruby on Railsはデフォルトだと、ポート3000番を使用する為、3000番のポートを利用出来るように /etc/sysconfig/iptables に追加していきます。

sudo vim /etc/sysconfig/iptables

以下の記述を追加し iptablesを再起動。

-A SERVICES -p tcp --dport 3000 -j ACCEPT
sudo service iptables restart

railsコマンドでappテンプレートを生成してみます。

rails new apptest
cd apptest

3000番ポートを利用した rails serverが起動するか確認。

rails server

といった感じに、「さくらVPS」の設定方法でした。ではでは。

  • RSSを登録する

  • follow us in feedly

Graphical FrontEnd Engineer
- Daisuke Takayama

MAD CITY 北九州市で生まれ育つ。20代はバンド活動に明け暮れ、ふと「webデザイナーになりたい。」と思い、デジタルハリウッド福岡校入学。卒業後、数々の賞を受賞、web業界をざわつかせる。
現在、港区六本木で活動中。

WEBデザイナーの、WEBデザイナーによる、WEBデザイナーの為のサイト。「みんなで書こう!」と仲間を募ってみたが、結局書くのは自分だけとなってしまいました。日々のメモを綴っていきます。