「ImageMagick」を「セーフモード」で動作させようとするも、うまくいかず

CORESERVERPHP

概要

 状態:挫折により終了  閲覧数:1,823  投稿日:2013-04-30  更新日:2013-04-30
前回の続き

下記を見て、「ImageMagick」「セーフモード」に挑戦しようと思った
セーフモードの対象からはずれる
PHPセーフモード(CGIにはしていない)

・実際に参考にしたのはこのサイト
ImageMagick: Advanced Unix Source Installation


結果
・「セーフモード」で動作させようとするも、うまくいかず

・CGIモードなら動作する
var_dump(class_exists('Imagick'));


・ImageMagickバージョンは、「6.2.9」のまま
identify -version
Version: ImageMagick 6.2.9 09/09/06 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2006 ImageMagick Studio LLC



どういう状態なのか不明
・CGIモードにした時だけ、Imagick経由で読み込んでいる?


ディレクトリ構成
・/virtual/★★/ImageMagick-6.8.5-3/
・/virtual/★★/ImageMagick/ … 何不明
・/virtual/★★/ImageMagick-6.8.5-3/imagick

手順

 閲覧数:388 投稿日:2013-04-30 更新日:2014-03-26
・ダウンロード
★★:~> ftp ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz
Connected to ftp.imagemagick.org.
220 (vsFTPd 2.0.5)
331 Please specify the password.
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
200 Switching to Binary mode.
250 Directory successfully changed.
250-For a list of alternative ImageMagick download sites, see
250-
250-  http://www.imagemagick.org/script/download.php
250-
250-The current stable release is version 6.8.5.  See http://www.imagemagick.org/
250-for more information about ImageMagick.
250-
250-Due to U.S. Exports Regulations, all cryptographic software on this site
250-is subject to the following legal notice:
250-
250-    This site includes publicly available encryption source code which,
250-    together with object code resulting from the compiling of publicly
250-    available source code, may be exported from the United States under
250-    License Exception "TSU" pursuant to 15 C.F.R. Section 740.13(e).
250-
250-This legal notice applies to cryptographic software only.  Please see
250-the Bureau of Export Administration (http://www.bxa.doc.gov/) for more
250-information about current U.S. regulations.
250 Directory successfully changed.
local: ImageMagick.tar.gz remote: ImageMagick.tar.gz
229 Entering Extended Passive Mode (|||45209|)
150 Opening BINARY mode data connection for ImageMagick.tar.gz (13665981 bytes).
100% |*******************************************| 13345 KB  333.22 KB/s    00:00 ETA
226 File send OK.
13665981 bytes received in 00:40 (332.19 KB/s)
221 Goodbye.


・解凍
★★:~>  tar xvfz ImageMagick.tar.gz
ImageMagick-6.8.5-3/
ImageMagick-6.8.5-3/utilities/
ImageMagick-6.8.5-3/utilities/convert.c

(中略)

ImageMagick-6.8.5-3/QuickStart.txt
ImageMagick-6.8.5-3/configure
ImageMagick-6.8.5-3/ChangeLog


・移動
★★:~> cd ImageMagick-6.8.5-3


・設定
★★:~/ImageMagick-6.8.5-3> ./configure --prefix=$HOME/ImageMagick --disable-assert --with-quantum-depth=8
configuring ImageMagick 6.8.5-3
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu

(中略)

 CXXFLAGS        = -g -O2 -pthread
 FEATURES        = DPC
 DELEGATES       = bzlib dps fontconfig freetype jng jpeg lcms png ps tiff x xml zlib


make
・5回エラー(6回目に成功)
※「make」エラーの状態で「make install」しても、絶対に成功しない
・失敗例
★★:~/ImageMagick-6.8.5-3> make
make  all-recursive
make[1]: Entering directory `/virtual/★★/ImageMagick-6.8.5-3'
Making all in .

(中略)

make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/virtual/★★/ImageMagick-6.8.5-3'
make: *** [all] Error 2


・成功例
★★:~/ImageMagick-6.8.5-3> make
make  all-recursive
make[1]: Entering directory `/virtual/★★/ImageMagick-6.8.5-3'
Making all in .

(中略)

cp -f Magick++/lib/ImageMagick++.pc Magick++/lib/ImageMagick++-6.Q8.pc
make[2]: Leaving directory `/virtual/★★/ImageMagick-6.8.5-3'
make[1]: Leaving directory `/virtual/★★/ImageMagick-6.8.5-3'


make install
★★:~/ImageMagick-6.8.5-3> make install
make  install-recursive
make[1]: Entering directory `/virtual/★★/ImageMagick-6.8.5-3'
Making install in .

(中略)

make[3]: Leaving directory `/virtual/★★/ImageMagick-6.8.5-3'
make[2]: Leaving directory `/virtual/★★/ImageMagick-6.8.5-3'
make[1]: Leaving directory `/virtual/★★/ImageMagick-6.8.5-3'


Imagickダウンロ-ド
★★:~/ImageMagick-6.8.5-3> pecl bundle Imagick-3.0.1
WARNING: channel "pecl.php.net" has updated its protocols, use "channel-update pecl.php.net" to update
downloading imagick-3.0.1.tgz ...
Starting to download imagick-3.0.1.tgz (93,920 bytes)
.....................done: 93,920 bytes
Package ready at '/virtual/★★/ImageMagick-6.8.5-3/imagick'


・移動
★★:~/ImageMagick-6.8.5-3> cd imagick


・phpize
★★:~/ImageMagick-6.8.5-3/imagick> phpize
Configuring for:
PHP Api Version:         20041225
Zend Module Api No:      20060613
Zend Extension Api No:   220060519


・設定
★★:~/ImageMagick-6.8.5-3/imagick> ./configure --with-imagick=$HOME/ImageMagick-6.8.5-3
checking for egrep... grep -E
checking for a sed that does not truncate output... /usr/bin/sed
checking for gcc... gcc

(設定)

configure: creating ./config.status
config.status: creating config.h
config.status: config.h is unchanged


・ make
★★:~/ImageMagick-6.8.5-3/imagick> make

Build complete.
Don't forget to run 'make test'.


・make test
★★:~/ImageMagick-6.8.5-3/imagick> make test
/bin/sh /virtual/★★/ImageMagick-6.8.5-3/imagick/libtool --mode=install cp ./imagick.la /virtual/★★/ImageMagick-6.8.5-3/imagick/modules
cp ./.libs/imagick.so /virtual/★★/ImageMagick-6.8.5-3/imagick/modules/imagick.so
cp ./.libs/imagick.lai /virtual/★★/ImageMagick-6.8.5-3/imagick/modules/imagick.la
PATH="$PATH:/sbin" ldconfig -n /virtual/★★/ImageMagick-6.8.5-3/imagick/modules
----------------------------------------------------------------------
Libraries have been installed in:
  /virtual/★★/ImageMagick-6.8.5-3/imagick/modules

If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
  - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
    during execution
  - add LIBDIR to the `LD_RUN_PATH' environment variable
    during linking
  - use the `-Wl,--rpath -Wl,LIBDIR' l


・ディレクトリ生成
mkdir $HOME/extension


・コピー
$ cp modules/imagick.so $HOME/extension/


・php.ini
extension_dir = "/virtual/★★/extension"
extension = imagick.so


Imagick


「ImageMagick」を「CGIモード」で動作させる際の注意事項

 閲覧数:576 投稿日:2013-05-01 更新日:2013-05-01

.htaccess


Fatal error: Class 'Imagick' not found
・「.php」をCGI版PHP5.4として動かそうとすると、エラー
・php.iniを設置していないためエラー
AddHandler application/x-httpd-php54cgi .php


・「.php」をCGI版PHP5として動かせばOK
AddHandler application/x-httpd-php5cgi .php


・なぜ? 書き方の問題?


上記とは別で、「.php」をCGI版PHP5.4として動かそうとすると、エラーになることがある
・その場合は「.php」をCGI版PHP5として動かせばOK
・原因は不明


CORESERVERで「Ideone API」



類似度ページランキング
順位 ページタイトル抜粋
1 「ImageMagick」を「セーフモード」で動作させようとするも、うまくいかず 85
2 PHPをCGIモードで動作させる 39
3 いつまで経っても「CGIモード」が理解できないので、気付いたことをメモしていくエントリー 33
4 FTPアップロード不可/残り容量があるのに、 Disk quota exceededとなるのは、なぜでしょうか 27
5 Services/Amazon.phpとCache.phpに関するメモ(未解決)→追記:動作的には解決しました 25
6 VALUE DOMAIN経由で、eNom からドメイン名を購入した場合は、access.enom.com で自分のアカウントへログインすることが出来る 24
7 ドメインを異なるユーザーへ移動させる 24
8 CORESERVERで動作させることが出来なかったスクリプト 23
9 覚えのないドメイン期限のお知らせを2つ受信。確認するも「管理者が一致しません」と表示される。他人のドメイン料金を私の口座から引き落としていませんか? 23
10 PHP、MySQL、CRONが使える無料レンタルサーバー「000.webhost.com」 21
11 MeCabを試す2 20
12 magic_quotes_gpcがON 20
13 CORE-B 購入にも関わらず3GBで Disk quota exceeded 20
14 SQLiteManager 19
15 急に、FTPでファイルがアップロードできなくなった。 18
16 ■「PHP」×「SQLite3」… データベース作成 18
17 rsyncエラーを解決できない 18
18 レンタルサーバー「VALUE SERVER」PHP5.4(セーフモードなし) 18
19 FC2は「.htaccess」利用可 17
20 chshでデフォルトのシェルをbashに変更 16
2024/4/20 14:02 更新