2010-09-26 49 views
1

希望你能幫助我......過去2天我一直在這裏,不得不承認我很難過。在運行PHP腳本時獲取errno 2

我使用的操作系統是Ubuntu 9.10 Karmic。

我成功安裝並測試了Mapserver。對於我的一流的項目,我有我使用創建圖層下面看到一個PHP腳本....

我得到運行一個命令行提示符腳本時的錯誤:

Warning: [MapServer Error]: msProcessProjection(): no system list, errno: 2 

in /var/www/mapserverdocs/ms4w/apps/world/mapscripts/staticwms.php on line 16 

Warning: Failed to open map file static.map in /var/www/mapserverdocs/ms4w/apps/world/mapscripts/staticwms.php on line 16 

Fatal error: Call to a member function owsdispatch() on a non-object in /var/www/mapserverdocs/ms4w/apps/world/mapscripts/staticwms.php on line 18 

PHP SCRIPT:

<?php 

if (!extension_loaded("MapScript")) dl("php_mapscript"); 

$request = ms_newowsrequestobj(); 

foreach ($_GET as $k=>$v) { 
    $request->setParameter($k, $v); 
} 

$request->setParameter("VeRsIoN","1.0.0"); 

ms_ioinstallstdouttobuffer(); 

$oMap = ms_newMapobj("static.map"); 
$oMap->owsdispatch($request); 

$contenttype = ms_iostripstdoutbuffercontenttype(); 

if ($contenttype == 'image/png') {  
    header('Content-type: image/png'); 
    ms_iogetStdoutBufferBytes(); 
} else { 
    $buffer = ms_iogetstdoutbufferstring(); 
    echo $buffer; 
} 

ms_ioresethandlers(); 

?> 

我所做的目錄和文件,世界各地的rwx只是爲了確保它不是一個權限問題

任何幫助將不勝感激!

感謝

克里斯

+1

static.map與.php文件的關係在哪裏? – meagar 2010-09-26 00:58:43

回答

0

正如meagar說,這個問題可能是這行:

$oMap = ms_newMapobj("static.map"); 

無法找到 「static.map」。 PHP的當前工作目錄通常不是你期望的。嘗試使路徑相對於當前腳本。如果static.map是在同一目錄static.map,試試這個代碼:

$mapPath = dirname(__FILE__).'/static.map'; 
$oMap = ms_newMapobj($mapPath); 
$oMap->owsdispatch($request); 

如果static.map是,比方說,/var/www/mapserverdocs/ms4w/apps/world/mapfiles/static.map,然後嘗試:

$mapPath = dirname(__FILE__).'/../static.map'; 
$oMap = ms_newMapobj($mapPath); 
$oMap->owsdispatch($request); 

通知的* /../ * static.map。 dirname(__FILE__)將返回您將該代碼放入的PHP文件的目錄名稱。

+0

感謝您的答覆...我開始了一切從頭開始,我不再得到錯誤 – ChrisJ 2010-09-29 12:10:08