it-swarm.it

Come installare ImageMagick da utilizzare con PHP su Windows 7 (3)

Ci sono altre discussioni su come installare Imagick su Windows 7 ma nessun aiuto per me finora. :(

(Forse i problemi hanno prodotto versioni più recenti)

Ho seguito questi passaggi per installare:

  1. Scarica e installa ImageMagick 

    http://www.imagemagick.org/download/binaries/ImageMagick-6.8.8-1-Q16-x86-dll.exe

  2. Scarica php_imagick.dll e copia nell'estensione dir (c:\xampp\php\ext)

    http://www.peewit.fr/imagick/php55/vc11/x86/ts/php_imagick.dll

  3. Modifica il file php.ini e aggiungi una nuova estensione (c:\xampp\php\php.ini)

    extension = php_imagick.dll

  4. Salva il file ini e riavvia Apache (se necessario, riavvia Windows)

  5. Avvia Apache ed esegui il test

Quando avvii Apache ottengo una finestra pop-up che mostra:

Il programma non può essere avviato perché nel tuo computer manca php5.dll. Prova a reinstallare il programma per risolvere questo problema.

Quindi, subito dopo, ne arriva un altro:

Avvio di PHP: impossibile caricare la libreria dinamica "C:\xampp\php\ext\php_imagick.dll" - Impossibile trovare il modulo specificato.

Secondo il funtioneer sospetto una sorta di errore di compilazione.

Ora ho PHP Versione 5.5.6 (xampp 1.8.3) con il compilatore MSVC11 che è lo stesso del file php_imagick.dll.

È possibile scaricare ImageMagick dal sorgente e compilarlo da solo nel modo giusto per andare? (non ho mai compilato in Windows prima)

17
embe

Invece di usare l'ultima versione ho provato a scaricare ImageMagick-6.7.7-5-Q16-windows-dll da here . Quello in realtà ha funzionato con php_imagick.dll (Imagick per PHP 5.5.x) da http://www.peewit.fr/imagick/ .

Questa non è l'ultima versione, ma ha funzionato. (anche senza riavviare il computer)

23
embe

Ecco cosa ha funzionato per me dopo aver provato quasi tutte le possibili soluzioni pubblicate su internet:

Ambiente:

OS: Windows Server 2008 R2 (64bit)

IIS: 7.5

PHP: 5.5.11 (x86)

PHP.ini: VC11, x86

Scarica e installa ImageMagick

ImageMagick-6.8.9-1-Q16-x86-dll.exe

Scarica corrispondente. Zip dalle fonti suggerite da Anatol (complimenti ad Anatol!)

ImageMagick-6.8.9-1-vc11-x86:

Estrai in una cartella temporanea e copia il contenuto della cartella "bin" all'interno dell'installazione di Imagemagick (c:\imagemagick) nel mio caso sovrascrivi i file.

Scarica .dll e mettilo nella cartella delle estensioni php (Ho usato questo)

Imagick per PHP 5.5.x Non thread sicuro da: http://www.peewit.fr/imagick/

Aggiungi l'estensione a php.ini con:

extension=php_imagick.dll

Salva php.ini e riavvia IIS

Finalmente le informazioni di Image Magick sono state visualizzate in un phpinfo (); chiamata.

È incredibile pensare di risolvere questo problema necessario per scaricare file da 3 diverse posizioni.

Spero che sia d'aiuto.

10
lithiumlab

Ecco cosa ho fatto per farlo funzionare Nota: il passaggio che mi ha veramente incastrato e che non ha veramente spiegato è che la versione php_imagick.dll dovrebbe corrispondere all'installazione di imagick

Ok, così ho preso i passaggi wasdownload php imagick dll da http://windows.php.net/downloads/pecl/releases/imagick/3.1.2/ (Ho usato php_imagick-3.1. 2-5.5-ts-vc11-x86.Zip)

Il file Zip conterrà molte DLL a tal proposito, potremmo averne bisogno in futuro . Estrai php_imagick.dll nella tua cartella di estensione

Metti quello nella cartella di estensione

IN php.ini aggiungi Extension = php_imagick.dll

Ora il problema è che dobbiamo scoprire quale versione di imagick è stata compilata per il comando php_imagick.dll forOpen Prompt e digitare php -e -v Il modo in cui l'ho fatto è stato con lo Zip che hai scaricato in precedenza, estrai le altre DLL nella tua cartella php probabilmente un messaggio di errore mostrerà qualcosa riguardo le dll mancanti. Quindi estrai le DLL dalla cartella Zip di prima nella tua cartella PHP . Prova a eseguire di nuovo php -e -v e dovrebbe funzionare senza alcun messaggio di errore . Se questo è il caso, allora Riavvia Apache. Ora guarda phpinfo () e vai alla sezione imagick. Dirà la versione di ImageMagick: Il mio ha detto ImageMagick 6.8.6-8 che è una versione precedente di quella che hanno sul loro sito. Il problema è che il numero ImageMagick di formati supportati: probabilmente dirà zero.

Vai qui e scarica la versione corrispondente e installa (quando installi assicurati che la casella di controllo dell'aggiunta alla variabile percorso sia spuntata)

Una volta terminata l'installazione di Stop Apache. Elimina la DLL dalla cartella php che hai inserito in precedenza e avvia nuovamente Apache. Controlla Riavvia Apache e tutto dovrebbe funzionare.

7
Kris

Vedere installation-imagick-php-7 per installare l'estensione imagick php su Windows usando php 7.0 +. È solo la vera soluzione che ho trovato finora. Va in grande dettaglio.

3
mdo123

La distribuzione ImageMagic che dovrebbe essere utilizzata è da qui http://windows.php.net/downloads/pecl/deps/ . I binari ImageMagic devono essere creati con lo stesso CRT dell'estensione PHP.

3
Anatol Belski

AGGIORNAMENTO: 21.08.2017

Ho lavorato a ImageMagick con php 7 e IIS (Apache molto simile): Imagick Version. 3.4.3

PHP 7 nts x86, Windows Server 2012 x64, IIS 8.5

1) Installa VC++ 2015 https://www.Microsoft.com/en-US/download/details.aspx?id=48145

2) Ottieni SOLOphp_imagick.dll da https://pecl.php.net/package/imagick

3) Inseriscilo in php/ext/folder e aggiungi extension=php_imagick.dll a php.ini 

Attenzione! Versioni minime supportate PHP> = 5.4.0 e ImageMagick> = 6.5.3-10.

ImageMagick 7 non sono supportati in questo momento.

Guarda phpinfo:

 enter image description here

È necessario installare ImageMagick 6.9.3-7 Q16 x86 4) installare ImageMagick 6.9.3-7 Q16 x86 dll Da http://ftp.icm.edu.pl/packages/ImageMagick/binaries/ Non deselezionare "aggiungi variabile al percorso".

5) riavviare il server

È tutto

2
Alexufo

Funziona seguendo i passaggi.

php 5.5 32bit ts + Apache 2.4 + windows 10 64bit + Imagick 6.9.3-5 + php_imagick.dll ts

Controlla qual è il bit del tuo sistema.

Scegli una versione php_imagick.dll da http://windows.php.net/downloads/pecl/releases/imagick/

Trova php_imagick.dll dal file .Zip

Se non sai come scegliere.

Digitare php -v ottenere la versione php nella finestra della riga di comando

Esegui codice seguente mostra quale tipo di php hai installato, thread safe o non thread safe. E fai clic su qui ti aiuterà.

Su Windows: php -i|find "Thread"

Su Linux: php -i|grep Thread

oppure puoi eseguire function phpinfo() e cercare "Thread" nella pagina web.

Vedrai Thread Safety enabled o Thread Safety disabled

Altri passaggi sono già stati scritti da @embe.

0
FavorMylikes

Ora per qualcosa che la documentazione non menziona: imposta il valore di MAGICK_HOME nel tuo ambiente. ImageMagick richiede questa variabile in modo che sappia dove trovare tutti i codificatori pertinenti.

Aprire il pannello di controllo e cercare "PERCORSO". Nei risultati, selezionare "Modifica le variabili di ambiente di sistema". Seleziona l'opzione 'Variabili d'ambiente ...' e aggiungi una nuova 'Variabile di sistema' (la lista inferiore). Se hai scelto un percorso di installazione diverso, assicurati di sostituire C:\img con il tuo percorso.

Variabile: MAGICK_HOME

Valore: C:\img\modules\coders

Vedi altro

0
ashkufaraz