我一直在MAMP上使用localhost(PHP版本5.4.10)。我将EXACT相同的文件上传到我购买的运行LAMP的服务器上(PHP版本5.4.15-1~lucid + 1)。我打开文件localhost并加载了正确的图像。我将确切的文件上传到服务器上,然后我得到了破碎的图像。我的代码:
<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
require_once('query.class.php');
$Server = new MinecraftServerStatus($IP = '69.65.42.155', $Port = 30465, $Timeout = 1);
header('content-type: image/png');
$image = imagecreatefrompng('http://192.34.58.24/cfgd/images/o_image1.png');
$dark_grey = imagecolorallocate($image, 102, 102, 102);
$white = imagecolorallocate($image, 255, 255, 255);
$red = imagecolorallocate($image, 255, 0, 0);
$green = imagecolorallocate($image, 0, 255, 0);
$font_path = 'Brixton';
$title = 'Knightsrp';
if($Port != 25565){
$dip = $IP.':'.$Port;
}
else{
$dip = $IP;
}
if($Server->Get('online')){
$status = 'Online';
$players = $Server->Get('numplayers').' / '.$Server->Get('maxplayers');
}
else{
$status = 'Offline';
}
imagettftext($image, 30, 0, 10, 35, $white, $font_path, $title);
if($status == 'Online'){imagettftext($image, 20, 0, 5, 87, $green, $font_path, $status);}else{imagettftext($image, 20, 0, 5, 87, $red, $font_path, $status);}
if($status == 'Online'){imagettftext($image, 20, 0, 550, 87, $white, $font_path, $players);}
imagettftext($image, 20, 0, 350, 20, $white, $font_path, $dip);
imagepng($image);
imagedestroy($image);
?>
你可以在这里找到我使用的php类:https://github.com/NoxNebula/Minecraft-Server-Status
答案 0 :(得分:0)
我添加了
putenv('GDFONTPATH=' . realpath('.'));
在
imagettftext($image, 30, 0, 10, 35, $white, $font_path, $title);