Imagick werkt niet ( not authorized )

Dylan

<script>
Hi,

Ik heb imagick aanstaan in DA:
6f7b417716ce4d0eb5789244ff85fe45.png


En dit is mijn script:

401c97d00a4b4fc2bf9b1a3c3014065d.png


En de error die ik krijg:

Codeblok:



1

Fatal error: Uncaught ImagickException: not authorized `/tmp/magick-2081946dErEzoVLyHP @ error/constitute.c/ReadImage/412 in /home/x/svg2png/generatePNGS.php:25






En na wat Google werk:
https://www.securityinet.com/php-imagickexception-error-in-cloudlinux-not-authorized/

Kan dit aangepast worden?
yummie.gif
 

Lennard

Active member
Welke regel geeft precies die melding?

Ik heb het op mijn eigen shared host geprobeerd met PHP 7 en dat werkt prima.


Codeblok:



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

[COLOR= #0000BB]<?php[/COLOR]
error_reporting[COLOR= #007700]([/COLOR]E_ALL[COLOR= #007700]);[/COLOR]
ini_set[COLOR= #007700]([/COLOR][COLOR= #DD0000]display_errors[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]1[/COLOR][COLOR= #007700]);[/COLOR]

[COLOR= #0000BB]$base64[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]"iVBORw0KGgoAAAANSUhEUgAAAM0AAAD
NCAMAAAAsYgRbAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5c
cllPAAAABJQTFRF3NSmzMewPxIG//ncJEJsldTou1jHgAAAARBJREFUeNrs2EEK
gCAQBVDLuv+V20dENbMY831wKz4Y/VHb/5RGQ0NDQ0NDQ0NDQ0NDQ0NDQ
0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0PzMWtyaGhoaGhoaGhoaGhoaGhoxtb0QGho
aGhoaGhoaGhoaGhoaMbRLEvv50VTQ9OTQ5OpyZ01GpM2g0bfmDQaL7S+ofFC6x
v3ZpxJiywakzbvd9r3RWPS9I2+MWk0+kbf0Hih9Y17U0nTHibrDDQ0NDQ0NDQ0
NDQ0NDQ0NTXbRSL/AK72o6GhoaGhoRlL8951vwsNDQ0NDQ1NDc0WyHtDTEhD
Q0NDQ0NTS5MdGhoaGhoaGhoaGhoaGhoaGhoaGhoaGposzSHAAErMwwQ2HwRQ
AAAAAElFTkSuQmCC"[/COLOR][COLOR= #007700];[/COLOR]

[COLOR= #0000BB]$imageBlob[/COLOR] [COLOR= #007700]=[/COLOR] base64_decode[COLOR= #007700]([/COLOR][COLOR= #0000BB]$base64[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$imagick[/COLOR] [COLOR= #007700]= new[/COLOR] Imagick[COLOR= #007700]();[/COLOR]
[COLOR= #0000BB]$imagick[/COLOR][COLOR= #007700]->[/COLOR]readImageBlob[COLOR= #007700]([/COLOR][COLOR= #0000BB]$imageBlob[/COLOR][COLOR= #007700]);[/COLOR]

[COLOR= #0000BB]$imagick[/COLOR][COLOR= #007700]->[/COLOR]setImageFormat[COLOR= #007700]([/COLOR][COLOR= #DD0000]png24[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$imagick[/COLOR][COLOR= #007700]->[/COLOR]writeImage[COLOR= #007700]([/COLOR][COLOR= #DD0000]./lalaal.png[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$imagick[/COLOR][COLOR= #007700]->[/COLOR]clear[COLOR= #007700]();[/COLOR]






Heb je een stukje code waarmee ik het kan reproduceren?
 

Dylan

<script>
Lennard (link):
Welke regel geeft precies die melding?

Ik heb het op mijn eigen shared host geprobeerd met PHP 7 en dat werkt prima.


Codeblok:



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22


[COLOR= #0000BB]<?php[/COLOR]
error_reporting[COLOR= #007700]([/COLOR]E_ALL[COLOR= #007700]);[/COLOR]
ini_set[COLOR= #007700]([/COLOR][COLOR= #DD0000]display_errors[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]1[/COLOR][COLOR= #007700]);[/COLOR]

[COLOR= #0000BB]$base64[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]"iVBORw0KGgoAAAANSUhEUgAAAM0AAAD
NCAMAAAAsYgRbAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5c
cllPAAAABJQTFRF3NSmzMewPxIG//ncJEJsldTou1jHgAAAARBJREFUeNrs2EEK
gCAQBVDLuv+V20dENbMY831wKz4Y/VHb/5RGQ0NDQ0NDQ0NDQ0NDQ0NDQ
0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0PzMWtyaGhoaGhoaGhoaGhoaGhoxtb0QGho
aGhoaGhoaGhoaGhoaMbRLEvv50VTQ9OTQ5OpyZ01GpM2g0bfmDQaL7S+ofFC6x
v3ZpxJiywakzbvd9r3RWPS9I2+MWk0+kbf0Hih9Y17U0nTHibrDDQ0NDQ0NDQ0
NDQ0NDQ0NTXbRSL/AK72o6GhoaGhoRlL8951vwsNDQ0NDQ1NDc0WyHtDTEhD
Q0NDQ0NTS5MdGhoaGhoaGhoaGhoaGhoaGhoaGhoaGposzSHAAErMwwQ2HwRQ
AAAAAElFTkSuQmCC"[/COLOR][COLOR= #007700];[/COLOR]

[COLOR= #0000BB]$imageBlob[/COLOR] [COLOR= #007700]=[/COLOR] base64_decode[COLOR= #007700]([/COLOR][COLOR= #0000BB]$base64[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$imagick[/COLOR] [COLOR= #007700]= new[/COLOR] Imagick[COLOR= #007700]();[/COLOR]
[COLOR= #0000BB]$imagick[/COLOR][COLOR= #007700]->[/COLOR]readImageBlob[COLOR= #007700]([/COLOR][COLOR= #0000BB]$imageBlob[/COLOR][COLOR= #007700]);[/COLOR]

[COLOR= #0000BB]$imagick[/COLOR][COLOR= #007700]->[/COLOR]setImageFormat[COLOR= #007700]([/COLOR][COLOR= #DD0000]png24[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$imagick[/COLOR][COLOR= #007700]->[/COLOR]writeImage[COLOR= #007700]([/COLOR][COLOR= #DD0000]./lalaal.png[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$imagick[/COLOR][COLOR= #007700]->[/COLOR]clear[COLOR= #007700]();[/COLOR]






Heb je een stukje code waarmee ik het kan reproduceren?




Codeblok:



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35

#!/usr/bin/env php
[COLOR= #0000BB]<?php[/COLOR]
[COLOR= #FF8000]// Path to SVGs[/COLOR]
[COLOR= #0000BB]$svgPath[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]./svg/[/COLOR][COLOR= #007700];[/COLOR]

[COLOR= #FF8000]// Path to PNGs[/COLOR]
[COLOR= #0000BB]$pngPath[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]./png/[/COLOR][COLOR= #007700];[/COLOR]

[COLOR= #FF8000]// Fill colors[/COLOR]
[COLOR= #0000BB]$fillColors[/COLOR] [COLOR= #007700]= [[/COLOR][COLOR= #DD0000]#FFFFFF[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]#363636[/COLOR][COLOR= #007700]];[/COLOR]

[COLOR= #FF8000]// ------------------------------------ //[/COLOR]
[COLOR= #0000BB]$im[/COLOR] [COLOR= #007700]= new[/COLOR] Imagick[COLOR= #007700]();[/COLOR]



foreach [COLOR= #007700]([/COLOR] glob[COLOR= #007700]([/COLOR][COLOR= #0000BB]$svgPath[/COLOR] [COLOR= #007700].[/COLOR] [COLOR= #DD0000]*.svg[/COLOR][COLOR= #007700]) as[/COLOR] [COLOR= #0000BB]$svg[/COLOR] [COLOR= #007700]) {[/COLOR]

[COLOR= #0000BB]$svgData[/COLOR] [COLOR= #007700]=[/COLOR] file_get_contents[COLOR= #007700]([/COLOR][COLOR= #0000BB]$svg[/COLOR][COLOR= #007700]);[/COLOR]

foreach[COLOR= #007700]([/COLOR][COLOR= #0000BB]$fillColors[/COLOR] [COLOR= #007700]as[/COLOR] [COLOR= #0000BB]$fill[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$svgData[/COLOR] [COLOR= #007700]=[/COLOR] preg_replace[COLOR= #007700]([/COLOR][COLOR= #DD0000]/fill="#[0-9a-fA-F]{6}"/[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]fill="[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$fill[/COLOR][COLOR= #007700].[/COLOR][COLOR= #DD0000]"[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$svgData[/COLOR][COLOR= #007700]);
}[/COLOR]

[COLOR= #0000BB]$im[/COLOR][COLOR= #007700]->[/COLOR]readImageBlob[COLOR= #007700]([/COLOR][COLOR= #0000BB]$svgData[/COLOR][COLOR= #007700]);[/COLOR]

[COLOR= #0000BB]$im[/COLOR][COLOR= #007700]->[/COLOR]setImageFormat[COLOR= #007700]([/COLOR][COLOR= #DD0000]png24[/COLOR][COLOR= #007700]);[/COLOR]

[COLOR= #0000BB]$im[/COLOR][COLOR= #007700]->[/COLOR]writeImage[COLOR= #007700]([/COLOR][COLOR= #0000BB]$pngPath[/COLOR] [COLOR= #007700].[/COLOR] basename[COLOR= #007700]([/COLOR][COLOR= #0000BB]$svg[/COLOR][COLOR= #007700]) .[/COLOR] [COLOR= #DD0000].png[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$im[/COLOR][COLOR= #007700]->[/COLOR]clear[COLOR= #007700]();
}[/COLOR]

[COLOR= #0000BB]$im[/COLOR][COLOR= #007700]->[/COLOR]destroy[COLOR= #007700]();[/COLOR]

echo [COLOR= #DD0000]"Done! nr"[/COLOR][COLOR= #007700];[/COLOR]




 
Bovenaan