« トラックバックを受け取るPHPスクリプト | メイン | TB pingを受信したらDBに格納する Step1 »

2005年09月21日

Fedora4にしたら、PHPが起動しない?

PHPが起動しないでphp cannot restore segment prot after relocというエラーが・・・理由は

SElinuxがONになっていて、セキュリティ権限に引っかかったからですねぇ・・・

Fedora Core3 SELinuxメモ
ここら辺を参考に・・・SELinuxの設定。
Disableにするという手もあるが・・・美しくないので・・・

やったこと

yumでひな形ダウンロード

yum install selinux-policy-targeted-sources

簡単

apache関連の修正

/etc/selinux/targeted/src/policy/file_contexts/programs/apache.fc
を修正

追加する内容
phpを実行するディレクトリにphp_tでの実行権を付ける
例:
/var/myhtdocs(/.*)? system_u:object_r:httpd_php_exec_t

新しい設定ファイルでは、/etc/selinux/targeted/src/policy/file_contexts/programs/apache.fc httpd_php_exec_tを始めいくつかの実行権が追加されていたのでそのまま流用


手動インストールしたapacheのバイナリへのパス追加

例: /etc/httpd などの行をコピペして
/usr/local/apache/bin/httpdなどに修正

効果

基本的にこれの設定で、phpを実行可能。ネットワークからのfile_get_contentsと、ディスクへのfile_put_contentsが実行可能になっていたのでよしとする。

/var/myhtdocsの指定を増やせば、phpを実行可能(書き込み可能)な場所が増えるが ルートなどを指定してしまうとセキュリティ上ヤバくなるので注意。最小限に設定するのがベター


カテゴリ:[Fedora core][PHP]

投稿者 kokorohamoe : 2005年09月21日 11:54

トラックバック

このエントリーのトラックバックURL:
http://revilog.com/tb_ping.php/6293


スパム防止のため、当サイトへのリンクの無い記事からのトラックバックを禁止する設定にしてあります。
トラックバックされる場合は、リンクを作成してから、トラックバックを打ってください。

コメント

コメントしてください




保存しますか?