いったん中断してdrupalで自社のページをつくる

CodeIgniterは一旦中断して一週間程で自社のページをつくることにする。

携帯向けページは必要ないからdrupalで作る予定だけど、
携帯も考えるならgeeklogなんだろーな。すんなり携帯で閲覧+記事の投稿ができるみたいだし。

まあいいや、興味があるのでdrupalで仕立て上げることにする。


以下Linux上にdrupalを素の状態で設置するときのメモ
(名前ベースのバーチャルホストでの例、SSLはとりあえず無し、)
/var/vhosts/xxx/drupal.example.com/htmlを、http://example.com で公開すると仮定
rm -f とかやる前には pwdでいる場所を確認してね


・DBを作る

mysqladmin -uroot -pパスワード create DB名


・DBを使えるようにする

mysql -uroot -pパスワード DB名
grant all privileges on DB名.* to DBユーザ名@"localhost" identified by 'DBパスワード';
flush privileges;
\q


drupalのダウンロードと解凍

(結構いろいろ試したりするのでディレクトリは深め)
mkdir /var/vhosts/xxx/drupal.example.com 

(設置するディレクトリに移動)
cd /var/vhosts/xxx/drupal.example.com 

(ソースの取得と解凍)
wget http://downloads.sourceforge.net/drupal-jp/drupal-6.4-japanese_004.tgz
tar zxvf drupal-6.4-japanese_004.tgz

(/var/vhosts/xxx/drupal.example.com/html がドキュメントルート)
mv drupal-6.4 html 


drupalのインストール前準備

(.htaccessはうちの場合は特に変更の必要は無いのでそのまま)
本稼働後に.htaccessの内容は vhosts.confに移動する。

cd /var/vhosts/xxx/drupal.example.com/html/;

(scripts以下は不要なので削除)

rm -rf ./scripts;

(robots.txt以外の *.txtを削除)

find ./ -type f -name "*.txt"|grep -v robots|xargs rm -f;

(オーナーの変更)

chown -R apache:apache ./

(パーミッションの変更)

find ./ -type f |xargs chmod 644;
find ./ -type d |xargs chmod 755;
find ./sites/default/files -type d|xargs chmod 777;
chmod 666 ./sites/default/settings.php;

次は、apacheのバーチャルホストの設定と、
公開するまでにベーシック認証を掛けておく設定


apacheの名前ベースのバーチャルホストの設定

うちの場合、バーチャルホストは /etc/httpd/conf/vhosts.confに書いているので、ここに追加

vi /etc/httpd/conf/vhosts.conf
<VirtualHost *:80>
    ServerAdmin webmaster@example.com
    DocumentRoot /var/vhosts/xxx/drupal.example.com/html
    ServerName example.com
    ErrorLog logs/xxx-error_log
    CustomLog logs/xxx-access_log combined env=!no_log
        <Directory "/var/vhosts/xxx/drupal.example.com/html">
                Options Includes FollowSymLinks ExecCGI MultiViews
                AllowOverride ALL
                Order deny,allow
                allow from all
                AuthUserFile /var/vhosts/xxx/drupal.example.com/.htpasswd
                AuthGroupFile /dev/null
                AuthName "please login"
                AuthType Basic
                require valid-user
        </Directory>
</VirtualHost>


(公開できるまでベーシック認証を掛けておく)

 cd /var/vhosts/xxx/drupal.example.com/;
 htpasswd -bc .htpasswd ベーシック認証のユーザー名 ベーシック認証のパスワード ;


apacheの再起動

/etc/init.d/httpd/graceful


Mercurialでバージョン管理開始

これで最低限の準備が整ったので、おれおれバージョン管理をMercurialでとりあえずやっておく。
本格的に管理するかしないか微妙なものもとりあえず hg init ; hg addremove;hg commit -m "init" しておく。
こういうときMercurialは、vssやcvssvnと違って便利

cd /var/vhosts/xxx/drupal.example.com;
hg init;
hg addremove;
hg commit -m "init";

cd /etc/;
hg commit -m "vhostsの変更 - drupal.example.comを追加" 


drupalインストーラ実行と後かたづけ

後はインストーラーに従ってdrupalのインストールを実行するだけ。

終わったら

cd /var/vhosts/xxx/drupal.example.com ;
chmod 644 ./sites/default/settings.php ;
rm ./install.php ;
rm -rf ./profiles/ ;

インストーラ等を削除



素の状態drupalの準備は以上、不要なファイルとかdbの権限が適切かとかは後で見直す