そんな時は php.ini の「extension_dir」を見てみよう。
記述された内容と、実際に「*.so」が置かれている場所が
違ってるかもしれないから。
あと、自分が見ている php.ini が
本当に読み込まれているかも確認した方がいい。
cli/ と間違うことは少ないだろうが、
apache2/ と cgi/ を間違えたことならある。
2008年7月17日木曜日
2008年7月16日水曜日
ExecCGI
ExecCGI と書かれてなきゃCGIは動かない。
それは憶えてた。
けど、どこに書くのか。
「/usr/lib/cgi-bin」は sites-available/default にあったけど…
と思って「public_html」で /etc/apache2/* あたりを grep すると
あるサーバでは apache2.conf
別のサーバでは userdir.conf に
<Directory /home/*/public_html>
〜
</Directory>
が記述されていた。ちなみに
前者は Apache/2.0.54
後者は Apache/2.2.3
である。
それは憶えてた。
けど、どこに書くのか。
「/usr/lib/cgi-bin」は sites-available/default にあったけど…
と思って「public_html」で /etc/apache2/* あたりを grep すると
あるサーバでは apache2.conf
別のサーバでは userdir.conf に
<
〜
が記述されていた。ちなみに
前者は Apache/2.0.54
後者は Apache/2.2.3
である。
2008年7月14日月曜日
こんなことまで忘れてしまうのかと
そう思うとちょっと憂鬱だが。
・事の起こり
php ファイルを作成し、ブラウザにURL打ち込んだらファイルがDLされた。
・確認1
php5.conf、php5.load: enmodされてないどころかavailableに存在してない。
・実行
apt-get install libapache2-mod-php5
・確認2
php5.conf、php5.load: 共にenmodにavailableへのリンクあり。けどやっぱりダウンロードされる。
・実行
apache2 restart
・確認3
これでブラウザからもPHPの実行が確認された。
今回の備忘ポイントは追加するモジュールの名前「libapache2-mod-php5」だな。
2011/07/25 追記
「ドキュメントルート配下ではPHPが動作するが、UserDirでは動作しない」という現象が確認された。
調べてみると mods-enabled/php5.conf の設定に原因があるらしい
結果、動作は変わらず。PHPファイルがダウンロードされる。
よく見るとその直前に
apacheを再起動すると、期待通りPHPが実行されるようになった。
コメント行の記述にあるようにIfModule全体をコメントしたほうが処理は軽くなるはずなので、
運用は全体をコメントアウトしよう。
apache2でphpを動かしたい
・事の起こり
php ファイルを作成し、ブラウザにURL打ち込んだらファイルがDLされた。
・確認1
php5.conf、php5.load: enmodされてないどころかavailableに存在してない。
・実行
apt-get install libapache2-mod-php5
・確認2
php5.conf、php5.load: 共にenmodにavailableへのリンクあり。けどやっぱりダウンロードされる。
・実行
apache2 restart
・確認3
これでブラウザからもPHPの実行が確認された。
今回の備忘ポイントは追加するモジュールの名前「libapache2-mod-php5」だな。
2011/07/25 追記
「ドキュメントルート配下ではPHPが動作するが、UserDirでは動作しない」という現象が確認された。
調べてみると mods-enabled/php5.conf の設定に原因があるらしい
12 <Directory /home/*/public_html> 13 php_admin_value engine Off 14 </Directory>このへんが見るからに怪しいので「php_admin_value engine On」と修正してapacheを再起動する。
結果、動作は変わらず。PHPファイルがダウンロードされる。
よく見るとその直前に
8 # To re-enable php in user directories comment the following lines 9 # (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it 10 # prevents .htaccess files from disabling it. 11 <IfModule mod_userdir.c> 12 <Directory /home/*/public_html>と書いてあるではないか。なので、とりあえず「php_admin_value engine Off」をコメントする。
apacheを再起動すると、期待通りPHPが実行されるようになった。
コメント行の記述にあるようにIfModule全体をコメントしたほうが処理は軽くなるはずなので、
運用は全体をコメントアウトしよう。
2008年7月11日金曜日
psql 8.1.2
ALTAR TABLE で SET DEFALT CURRENT_TIMESTAMP と指定した。
確認のため \d したところ
「default now()」
と表示された。
なんかちょっとショックだった。
確認のため \d したところ
「default now()」
と表示された。
なんかちょっとショックだった。
2008年7月10日木曜日
オブジェクトか?
bool is_object($foo)
$foo がオブジェクトであれば真。
bool is_a($foo ,'bar')
$foo がクラス「bar」のオブジェクトであるか、「bar」を継承したクラスのオブジェクトであれば真。
ただしこの関数はPHP5では非推奨であり、演算子「instanceof」を用いて
($foo instanceof bar)
と記述するのが推奨だとか。この「bar」は文字列ではないことに注意。
string get_class($foo)
オブジェクト$fooのクラス名を返す。
bool class_exists ('bar')
クラス「bar」が定義されていれば真。
$foo がオブジェクトであれば真。
bool is_a($foo ,'bar')
$foo がクラス「bar」のオブジェクトであるか、「bar」を継承したクラスのオブジェクトであれば真。
ただしこの関数はPHP5では非推奨であり、演算子「instanceof」を用いて
($foo instanceof bar)
と記述するのが推奨だとか。この「bar」は文字列ではないことに注意。
string get_class($foo)
オブジェクト$fooのクラス名を返す。
bool class_exists ('bar')
クラス「bar」が定義されていれば真。
2008年7月9日水曜日
vsftpd の設定
/etc/vsftpd.conf で設定。
anonymous_enable はNO(アノニマスでの使用はしない)
local_enable はYES(アカウントのあるユーザーでログイン)
write_enable はYES(書き込み権アリ)
local_umask は022(できるファイルのパーミッションは755)
listen はデフォルトでNO。YESにしても動くらしいがよくわからない。
NOにすると自分ではポートをlistenせず、誰かが呼んでくれないかと
ひたすら待つことになるから、vsftpd を呼ぶ人を用意せねばならない。
呼ぶ人は inetd である。inetd じゃなくてもいいのかもしれないが、
他に同じようなことをしてくれる人を知らないので inetd で行く。
inetd は/etc/inetd.conf で設定する。
ここに「/usr/sbin/vsftpd」を含む行を追加すればおk。
(今回、具体的な追加内容は省略)
あと、hosts.deny をちゃんと設定していると新しいサービスは蹴られるので
hosts.allow にサービスを追加しておくように。
anonymous_enable はNO(アノニマスでの使用はしない)
local_enable はYES(アカウントのあるユーザーでログイン)
write_enable はYES(書き込み権アリ)
local_umask は022(できるファイルのパーミッションは755)
listen はデフォルトでNO。YESにしても動くらしいがよくわからない。
NOにすると自分ではポートをlistenせず、誰かが呼んでくれないかと
ひたすら待つことになるから、vsftpd を呼ぶ人を用意せねばならない。
呼ぶ人は inetd である。inetd じゃなくてもいいのかもしれないが、
他に同じようなことをしてくれる人を知らないので inetd で行く。
inetd は/etc/inetd.conf で設定する。
ここに「/usr/sbin/vsftpd」を含む行を追加すればおk。
(今回、具体的な追加内容は省略)
あと、hosts.deny をちゃんと設定していると新しいサービスは蹴られるので
hosts.allow にサービスを追加しておくように。
2008年7月8日火曜日
登録:
投稿 (Atom)