Browsing articles in "Apache"
 
4月
30
2014

さくらのVPSからGMOクラウドVPSへの移行

さくらのVPSを利用していましたが、コストパフォーマンスの良いGMOクラウドVPSに乗り換えることにしました。
その際の設定内容、移行手順を公開します。

移行プラン/料金

・プラン
 GMOクラウドVPS スモールプラン(1年間)
・金額
 4094円+2036×12円=28,526円(2377円/月)
・OS
 CentOS6.2 / LAMPPパック

Linuxの初期設定

GMOクラウドVPSの初期設定』を参考にサーバの初期設定を行う。

必要なパッケージをインストール

上記リンクに記載のない、wget、scpコマンドや、php関連のパッケージをインストール。

yum install wget
yum install openssh-clients
yum install php-mysql php-mbstring php-pdo php-pear
pear install pager

Apacheの初期設定

Apacheの初期設定すべき内容 (httpd.conf)』を参考にApacheを設定。
上記リンク先の記事には記載されていないが、ウェルカムページの設定も全てコメントアウトしておくこと。

cp -p /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.org
vi /etc/httpd/conf/httpd.conf
diff /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.org
vi /etc/httpd/conf.d/welcome.conf

MySQLの初期設定

MySQLの初期設定』を参考に、DBの初期設定を行う。
必要なDB、ユーザを作成しておいてください。

PHPの初期設定

cp -p /etc/php.ini  /etc/php.ini.org
vi /etc/php.ini
diff /etc/php.ini  /etc/php.ini.org
432c432
< expose_php = Off
<ul>
<li></li>
</ul>

&gt; expose_php = On
457c457
&lt; memory_limit = 512M
<ul>
<li></li>
</ul>

&gt; memory_limit = 128M
513c513
&lt; error_reporting = E_ALL &amp; ~E_NOTICE &amp; ~E_DEPRECATED
<ul>
<li></li>
</ul>

&gt; error_reporting = E_ALL &amp; ~E_DEPRECATED
946c946
&lt; date.timezone = Asia/Tokyo
<ul>
<li></li>
</ul>

&gt; ;date.timezone =
1542c1542
&lt; mbstring.language = Japanese
<ul>
<li></li>
</ul>

&gt; ;mbstring.language = Japanese
1549d1548
&lt; mbstring.internal_encoding = UTF-8
1553c1552
&lt; mbstring.http_input = auto
<ul>
<li></li>
</ul>

&gt; ;mbstring.http_input = auto
1558c1557
&lt; mbstring.http_output = UTF-8
<ul>
<li></li>
</ul>

&gt; ;mbstring.http_output = SJIS
1566c1565
&lt; mbstring.encoding_translation = Off
<ul>
<li></li>
</ul>

&gt; ;mbstring.encoding_translation = Off
1571c1570
&lt; mbstring.detect_order = auto
<ul>
<li></li>
</ul>

&gt; ;mbstring.detect_order = auto
1576c1575
&lt; mbstring.substitute_character = none;
<ul>
<li></li>
</ul>

&gt; ;mbstring.substitute_character = none;
1587c1586
&lt; mbstring.func_overload = 0
<ul>
<li></li>
</ul>

&gt; ;mbstring.func_overload = 0
1590c1589
&lt; mbstring.strict_detection = Off
<ul>
<li></li>
</ul>

&gt; ;mbstring.strict_detection = Off

Postfixの初期設定

cp -p /etc/postfix/main.cf /etc/postfix/main.cf.org
vi /etc/postfix/main.cf
diff /etc/postfix/main.cf /etc/postfix/main.cf.org
113c113
&lt; inet_interfaces = all
<ul>
<li></li>
</ul>

&gt; #inet_interfaces = all
116c116
&lt; #inet_interfaces = localhost
<ul>
<li></li>
</ul>

&gt; inet_interfaces = localhost
677,686d676
&lt;
&lt; ## add
&lt; smtpd_sasl_auth_enable = yes
&lt; smtpd_sasl_path = smtpd
&lt; smtpd_sasl_type = cyrus
&lt; smtpd_sasl_security_options = noanonymous
&lt; broken_sasl_auth_clients=yes
&lt; smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination,permit_auth_destination,reject
&lt; smtpd_sasl_local_domain = iderea.com
&lt;
cp -p /etc/aliases /etc/aliases.org
vi  /etc/aliases
diff  /etc/aliases /etc/aliases.org
97,103d96
&lt;
&lt; # for iderea.com
&lt; hijikata:       h.hijikata@gmail.com
&lt; android-webrank:h.hijikata@gmail.com
&lt; android:h.hijikata@gmail.com
&lt; 360news:        h.hijikata@gmail.com
&lt;
newaliases
/etc/init.d/postfix restart

コンテンツ・DBの移行

/etc/crontabをコメントアウト

タイミングを考慮した上で、/etc/crontabをコメントアウトし、バッチ処理を停止する。

コンテンツのバックアップ

df、duコマンドで、ディスク容量に空きがあることを確認してから、コンテンツを丸ごとtarで固めます。

df -h
du -sh /tutty.info
tar cfz /tmp/tutty.info.tgz /tutty.info

コンテンツのリストア

移行先のサーバへ転送して、展開します。
最後に不要なファイルは削除します。

scp /tmp/tutty.info.tgz x.x.x.x:/tmp
ssh x.x.x.x
cd /
tar xfz /tmp/tutty.info.tgz
rm /tmp/tutty.info.tgz
exit
rm /tmp/tutty.info.tgz

DBのバックアップ

特定のデータベースを指定してバックアップします。

mysqldump -u root -p tutty | gzip > /tmp/tutty.sql.gz

DBのリストア

移行先サーバへ転送して、リストアします。
最後に不要なファイルは削除します。

scp /tmp/tutty.sql.gz x.x.x.x:/tmp
ssh x.x.x.x
gunzip /tmp/tutty.sql.gz
mysql -u root -p < /tmp/tutty.sql
rm /tmp/tutty.sql
exit
rm /tmp/tutty.sql.gz

DNSレコード修正&動作確認

基本的には、Aレコードを修正するだけで問題ない。
ドメイン及びIPアドレスでアクセスし、動作確認を行う。

/etc/crontabを設定

移行先サーバの/etc/crontabに、移行前と同様の設定をする。


 
11月
8
2013

Apacheの初期設定すべき内容 (httpd.conf)

Apacheの初期設定すべき内容をまとめました。
マルチドメインを想定して、バーチャルホストの設定もしています。

設定時のApacheのバージョンは、2.2.15です。

ApacheやOS等のバージョンを非表示にする

Apacheはデフォルトで、Apache、OS、PHPなどのバージョンを
HTTPレスポンスヘッダを含めたり、デフォルトのエラーページに表示させたりします。
この情報を最小限に抑止するために、「ServerTokens」、「ServerSignature」を下記の通り設定します。

ServerTokens Prod
ServerSignature Off

使用しないデフォルト設定をコメントアウト

htmlディレクトリは使用しないため、コメントアウト。

#<Directory "/var/www/html">
#    Options Indexes FollowSymLinks
#    AllowOverride None
#    Order allow,deny
#    Allow from all
#</Directory>

iconsディレクトリは使用しないため、コメントアウト。

#Alias /icons/ "/var/www/icons/"
#<Directory "/var/www/icons">
#    Options Indexes MultiViews FollowSymLinks
#    AllowOverride None
#    Order allow,deny
#    Allow from all
#</Directory>

cgi-binディレクトリは使用しないため、コメントアウト。

#ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
#<Directory "/var/www/cgi-bin">
#    AllowOverride None
#    Options None
#    Order allow,deny
#    Allow from all
#</Directory>

ディレクトリインデックス機能は使用しないため、コメントアウト。

#IndexOptions FancyIndexing VersionSort NameWidth=* HTMLTable Charset=UTF-8
#AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
#AddIconByType (TXT,/icons/text.gif) text/*
#AddIconByType (IMG,/icons/image2.gif) image/*
#AddIconByType (SND,/icons/sound2.gif) audio/*
#AddIconByType (VID,/icons/movie.gif) video/*
#AddIcon /icons/binary.gif .bin .exe
#AddIcon /icons/binhex.gif .hqx
#AddIcon /icons/tar.gif .tar
#AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
#AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
#AddIcon /icons/a.gif .ps .ai .eps
#AddIcon /icons/layout.gif .html .shtml .htm .pdf
#AddIcon /icons/text.gif .txt
#AddIcon /icons/c.gif .c
#AddIcon /icons/p.gif .pl .py
#AddIcon /icons/f.gif .for
#AddIcon /icons/dvi.gif .dvi
#AddIcon /icons/uuencoded.gif .uu
#AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
#AddIcon /icons/tex.gif .tex
#AddIcon /icons/bomb.gif core
#AddIcon /icons/back.gif ..
#AddIcon /icons/hand.right.gif README
#AddIcon /icons/folder.gif ^^DIRECTORY^^
#AddIcon /icons/blank.gif ^^BLANKICON^^
#DefaultIcon /icons/unknown.gif

コンテントネゴシエーション機能は使用しないため、コメントアウト。

##AddHandler type-map var

SSIは使用しないため、コメントアウト。

#AddType text/html .shtml
#AddOutputFilter INCLUDES .shtml

マルチドメイン対応のVirtualHostを設定

※環境に合わせて設定値を変更してください。

NameVirtualHost *:80
<VirtualHost *:80>
    ServerAdmin webmaster@tutty.info
    DocumentRoot /var/www_chroot/tutty.info/www
    ServerName tutty.info
    ErrorLog /var/www_chroot/tutty.info/logs/tutty.info-error_log
    CustomLog /var/www_chroot/tutty.info/logs/tutty.info-access_log combined
    <Directory "/var/www_chroot/tutty.info/www">
        AllowOverride All
        Options       FollowSymLinks
        Order         allow,deny
        Allow         from all
   </Directory>
</VirtualHost>

補足

私が普段使用しているWeb関連のディレクトリ構成は、下記の通りです。
ドメイン単位でディレクトリを分けています。

# Apacheログディレクトリ
 /var/www_chroot/(ドメイン名)/logs/
# ドキュメントルート
 /var/www_chroot/(ドメイン名)/www/
# ドキュメントルート外(非公開用)
 /var/www_chroot/(ドメイン名)/work/

※ルートフォルダに、ドメイン名のシンボリックリンクを張ると使いやすいです。
※必要に応じて変更してください。


 
6月
15
2011

さくらVPSサーバの環境設定方法

概要

今まで使用してきたお名前.comのVPSサーバの契約期間が終わるため、以前より気になっていたさくらのVPSサーバに乗り換えることにしました。

契約したのは、980円/月でVPNサーバが使用できる格安なプランです。
スペックは、メモリ:512MB、ディスク容量:20GB、CPU:2コア、ネットワーク:共用100Mbpsです。


 
5月
3
2011

tutty.infoを開設

tutty.info

個人サイト tutty.info を開設しました。



このエントリーをはてなブックマークに追加