10月 15
1] apache の取得
apache よりダウンロード
2] apache 展開&コンパイル
/usr/local/src/下に配置
※SSLを組み込む場合は事前にOpenSSLをインストールし、 configure オプションに
–with-ssl=../openssl-X.X.XX/ \
–enable-shared=ssl
を加える
今回はロードバランサ(Pound)側にてSSLラッパするのでOpenSSLのインストールは行わない
$su -
cd /usr/local/src/
tar -zxvf httpd-2.2.10.tar.gz
cd httpd-2.2.10/
./configure \
--prefix=/usr/local/apache \
--enable-rewrite=shared \
--enable-headers \
--enable-ssl \
--enable-proxy \
--enable-proxy-balancer \
--enable-so \
--enable-setenvif \
--enable-status
;
make
3] インストール
su -
make install
4] Apacheの起動
Apache 2.0まではSSLとして起動する場合は
下記のコマンドオプションでした。
/usr/local/apache/bin/apachectl startssl
Apache 2.2 からは、この「startssl」というオプションが廃止され、
SSLを起動する場合でも「start」オプションでよくなった。
5] 自動起動スクリプトの作成
サーバブート時に自動でApacheが起動するようにします
su -
vi /etc/rc.d/rc.local
APACHECTL=/usr/local/apache/bin/apachectl
if [ -x $APACHECTL ]; then
echo -n "Starting Apache web server"
$APACHECTL start
echo "."
fi
6] 自動起動の確認
サーバを再起動してみます
shutdown -r now
プロセスコマンドを発行し
下記のようにプロセスが立ち上がっている事を確認します
ps ax
2923 ? Ss 0:00 /usr/local/apache/bin/httpd -k start
2935 ? S 0:00 /usr/local/apache/bin/httpd -k start
2936 ? S 0:00 /usr/local/apache/bin/httpd -k start
2937 ? S 0:00 /usr/local/apache/bin/httpd -k start
2938 ? S 0:00 /usr/local/apache/bin/httpd -k start
2939 ? S 0:00 /usr/local/apache/bin/httpd -k start
あとは実際にブラウザにて確認します
http://{サーバー名orIPアドレス}/
https://{サーバー名orIPアドレス}/
うまくいっていればデフォルトでは
It works!
が表示されるはずです。
Tagged with: Apache
10月 15
分 時 日 月 曜日
43 23 * * * 23:43に実行
12 05 * * * 05:12に実行
0 17 * * * 17:00に実行
0 17 * * 1 毎週月曜の 17:00に実行
0,10 17 * * 0,2,3 毎週日,火,水曜の 17:00と 17:10に実行
0-10 17 1 * * 毎月 1日の 17:00から17:10まで 1分毎に実行
0 0 1,15 * 1 毎月 1日と 15日と 月曜日の 0:00に実行
42 4 1 * * 毎月 1日の 4:42分に実行
0 21 * * 1-6 月曜日から土曜まで 21:00に実行
0,10,20,30,40,50 * * * * 10分おきに実行
*/10 * * * * 10分おきに実行
* 1 * * * 1:00から 1:59まで 1分おきに実行
0 1 * * * 1:00に実行
0 */1 * * * 毎時 0分に 1時間おきに実行
0 * * * * 毎時 0分に 1時間おきに実行
2 8-20/3 * * * 8:02,11:02,14:02,17:02,20:02に実行
30 5 1,15 * * 1日と 15日の 5:30に実行
レポート出力の設定
MAILTO=”"
Tagged with: cron
10月 15
PHPをcron(コマンドライン)で実行
やり方は2パターンあります。
1]phpスクリプトの行頭にphpプログラムのファイルパスを記述する
#!/usr/bin/php -q
(-q :: Quiet-mode. Suppress HTTP Header output.)
2]phpプログラムにphpスクリプトを引数として渡して実行する
usr/bin/php test.php
PATHが通っていれば
php test.php
ここでは私がいつも行うやり方を備忘録として…
準備
/usr/local/bin/phpだとパスが長いのでちょっとでも短くしたいので
/usr/bin/phpにシンボリックリンクします
まずはリンク先にphpがあるかどうかの確認
</p>
<p style="padding-left: 30px;">su -
cd /usr/bin
find php
find: php: そのようなファイルやディレクトリはありません
<p style="padding-left: 30px;">
※もし既に/usr/bin/phpが存在する場合はrpmなどで
インストール済みの物なのでリネームor削除する
ソースコンパイルでインストールしたPHPで
シンボリックリンクを張る
su -
ln -s /usr/local/bin/php /usr/bin/php
テスト用のtest.phpを作成
#!/usr/bin/php -q
<?php
echo "Hello Test";
?>
実行権限を付与
chmod 700 test.php
#実行してみる
./test.php
→”Hello Test” と表示されればOK!
これをスケジューリングしたい場合には
Cronに登録
(例: 毎日8:00に起動)
crontab -e
00 08 * * * /home/sv01/bash/test.php
引数の受け渡し
PHPをコマンドラインで実行すると、コマンドラインで与えた引数の情報が
$argc、$argvという変数に格納されます。
$argc : 引数の数
$argv : 引数が格納された配列
普通、最低でも引数としてファイル名が指定されているので、
$argc : 1
$argv[0] : ファイル名(パス)
となるはずです。
例えば、
(test.php)
#!/usr/bin/php -q
<?php
for ($i = 0; $i < $argc; $i++) {
echo $i, " : ", $argv[$i], "\n";
}
?>
Tagged with: PHP