【问题标题】:Getting an errno 2 when running a PHP script运行 PHP 脚本时出现 errno 2
【发布时间】:2010-09-26 00:50:51
【问题描述】:

希望你能帮助我...过去 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 脚本:

<?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,只是为了确保这不是权限问题

任何帮助将不胜感激!

谢谢

克里斯

【问题讨论】:

  • static.map 与 .php 文件的关系在哪里?

标签: php gis mapserver


【解决方案1】:

正如 meagar 所说,问题可能在于这一行:

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

无法找到“static.map”。 PHP 的当前工作目录通常不是您所期望的。尝试使路径相对于当前脚本。如果static.mapstatic.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 文件的目录名称。

【讨论】:

  • 感谢您的回复...我从头开始一切,我不再收到错误
猜你喜欢
  • 2021-06-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-05
  • 1970-01-01
  • 2016-12-04
  • 1970-01-01
相关资源
最近更新 更多