電子書籍の厳選無料作品が豊富!

PHP で GD の利用に関してアドバイスをください。

OpenPNE を設定し、プロフィールの画像(jpg)等をアップロードすると、ブラウザの画面が真っ白になり、画像(jpg)をアップロードすることが出来ません。他に日記でも画像(jpg)をアップロードしようとすると同じ現象で出来ません。少し調べた所、PHP から GD が認識されていない可能性があると思ってきました。

phpinfo を見てみても、gd の項目がありません。

サーバはさくらインターネットの FreeBSD を借りています。
サーバ内を確認した所

gd-2.0.33_4,1
jpeg-6b_4
png-1.2.8_3
php5-zlib-5.1.6_1

は入っています。
思うに、php,ini の設定かと思います。もしかしたら他に何かモジュールが必要なんでしょうか、何処を確認したら良いか、アドバイスを頂ければと思います。

PHP のバージョンは 5.16 です。

ちなみに、以下のページで同じ現象が発生しています。
http://docs.openpne.jp/?cmd=read&page=TROUBLE%2F …

A 回答 (2件)

がるです。



> GD を認識させる為に、PHP の再コンパイルが必要になると言う事でしょうか、
再コンパイル(リコンパイル)で認識出来るのは、元々何度もやっているので確実に「Yes」といえるのですが。
もしかすると、php.iniの変更だけで認識が可能…かもしれませんが、ちとそのあたりは試したことないです。
ただ。php.iniを変更すると、どのみち、Apacheプロセスを一度再起動する必要があるので、いずれにしても若干面倒かもしれません。

> そこで質問なんですが、今の環境で再コンパイルは可能なんでしょうか。インストールされている物の、再度のコンパイル・インストールは慎重になっています。アドバイスを頂ければ幸いです。
ライブラリ的には必要なものは概ねそろっているかと思われます。
あとはリコンパイル次第になるのですが…このあたりは環境次第になってしまうのでなんとも。
そのあたりは、さくらインターネットさんに確認できるようであれば、してしまったりサポート依頼してしまったりするほうが確実かもしれません。

あんまりお力になれず申し訳ないです。

この回答への補足

再度のアドバイスをありがとうございます。

php.ini を編集し、Apple の再起動は問題無く出来ています。
この辺の作業は大丈夫だと思います。

>あとはリコンパイル次第になるのですが…このあたりは環境次第になってしまうのでなんとも。

やっぱりレンタルサーバの場合は怖いと思います。今さくらインターネットサポートに問い合わせのメールをお送りしました。

実は、教えて goo 内で検索して

http://oshiete1.goo.ne.jp/qa1114630.html

の質問を見つけ、
/usr/ports/lang/php5-extensions
がインストールされている事を確認しました。
php5-extensions があるディレクトリで、make を実行すると、必要なモジュールを選択出来るとのことです。

まずは、サポートの回答を待ちたいと思います。

補足日時:2006/11/20 13:44
    • good
    • 0
この回答へのお礼

回答が遅くなり申し訳ありませんでした。

サポートからの回答は、利用者が自由に出来る契約とのことで、自由にしてくださいとの事でした。

早速、
#cd /usr/ports/lang/php5-extensions
#make

としましたが、何も実行されません。

この件に関しては、ルールに従い新規に質問させて頂きます。
取りあえず、この質問は終了します。

アドバイスをありがとうございました。

お礼日時:2006/11/25 15:58

がると申します。


とりあえず…このPageあたり参考になりますでしょうか?

http://www.php.net/manual/ja/ref.image.php

インストール手順

PHPでGDサポートを有効にするには、configure に--with-gd[=DIR]を指定します。ただし、DIRは GDのベースインストールディレクトリです。 PHPにバンドルされている推奨のGDライブラリを使用するには --with-gdを指定します。 GD ライブラリをコンパイルするには、libpng と libjpeg が必要です。

Windowsの場合、GD2 DLL php_gd2.dllをphp.iniに エクステンションとして指定してください。 GD1 DLL php_gd.dllはPHP4.3.2で削除されました。 imagecreatetruecolor()のようにTrueカラーが優先される関数 についてはGD2が必須です。

この回答への補足

コメントありがとうございます。

上記ページはじっくり読んでみたいと思います。

GD を認識させる為に、PHP の再コンパイルが必要になると言う事でしょうか、
借りているのがレンタルサーバ(FreeBSD)ですので、基本的に再インストールすることが出来る環境ではありません。

そこで質問なんですが、今の環境で再コンパイルは可能なんでしょうか。インストールされている物の、再度のコンパイル・インストールは慎重になっています。アドバイスを頂ければ幸いです。

ちなみに、サーバ内を検索した所 libpng と libjpeg に関しては、下記の物がありました。ライブラリは大丈夫でしようか。

/usr/local/lib/libpng.a
/usr/local/lib/libpng.so
/usr/local/lib/libpng.so.5

/usr/local/lib/libjpeg.a
/usr/local/lib/libjpeg.la
/usr/local/lib/libjpeg.so
/usr/local/lib/libjpeg.so.9

補足日時:2006/11/19 14:14
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!