Drupal では、ひとつのインストールで複数のサブドメイン上のサイトの運用ができるる。たとえば、
/sites/licca.sitex.jp/settings.php
/sites/water.sitex.jp/settings.php
/sites/barbie.sitex.jp/settings.php
/sites/figure.sitex.jp/settings.php
としてそれぞれの settings.php のデータベースなどを設定してあげれば、
のように運用することができる。ちなみに複数のサブドメイン用のテーブルさえもひとつのデータベース中に混在させることができる。この場合は settings.php ファイル中にテーブルのプリフィックス licca_ や barbie_、water_、figure_ などを指定する(settings.php のコメントにそのやり方が書いてある)。
さて、cron の設定だが、これは crontab に
*/15 * * * * /usr/bin/php /home/yourname/www/cron.php > /dev/null
としてもうまくいかない。単にルートのサイトの cron が実行されるだけで、サブドメインにある Drupal サイトの cron までは実行してはくれないようだ。従ってサブドメイン用には以下のように crontab を設定する。もちろん Linux サーバの方に GET コマンドがインストールされていなければならない(これを読んでいる方の環境がウィンドウズでないことを祈る)。
*/15 * * * * GET https://licca.sitex.jp > /dev/null
*/15 * * * * GET https://water.sitex.jp > /dev/null
*/15 * * * * GET https://barbie.sitex.jp > /dev/null
*/15 * * * * GET https://figure.sitex.jp > /dev/null
GET コマンドがインストールされていなければ、
/usr/bin/wget を使う。
*/15 * * * * /usr/bin/wget https://licca.sitex.jp > /dev/null
*/15 * * * * /usr/bin/wget https://water.sitex.jp > /dev/null
*/15 * * * * /usr/bin/wget https://barbie.sitex.jp > /dev/null
*/15 * * * * /usr/bin/wget https://figure.sitex.jp > /dev/null
/usr/bin/wget がダメならば、
curl を使う。
*/15 * * * * curl --silent --compressed https://licca.sitex.jp > /dev/null
*/15 * * * * curl --silent --compressed https://water.sitex.jp > /dev/null
*/15 * * * * curl --silent --compressed https://barbie.sitex.jp > /dev/null
*/15 * * * * curl --silent --compressed https://figure.sitex.jp > /dev/null
ノート:
さて上の例だと、*/15 と 15分となっているのは
、Drupal 最強モジュールのひとつと思われる Leech モジュールの最低実行単位が 15分だからであるが、この数字は適宜変えてよい。しかし、上の例では私のレンタルサーバの環境では問題があって、上の cron を実行すると
cron が重複して実行されました。
なるエラーが表示されて実際には cron の実行が失敗する。そこで考えたのが以下のように各処理をずらしてあげること。これでうまく動いてくれている。
0,15,30,45 * * * * curl --silent --compressed https://licca.sitex.jp > /dev/null
3,18,33,48 * * * * curl --silent --compressed https://water.sitex.jp > /dev/null
6,21,36,51 * * * * curl --silent --compressed https://barbie.sitex.jp > /dev/null
9.24,39,54 * * * * curl --silent --compressed https://figure.sitex.jp > /dev/null
トラックバック URL:
https://perltips.twinkle.cc/trackback/213