mapscript map loading error
Manfred Meier
m.meier at SPIEKERMANN.DE
Tue Jul 25 03:38:13 PDT 2006
.....
> I still don't know why
> both mapserv and mapscript is ok with me using
> /usr/local/apache2/htdocs/tmp, but not on the others.
Hello,
perhaps there is a simple solution. If I understand right the mapserver
doku, then IMAGEURL is relative to the apache document root. So "/tmp/"
is by the apache interpreted as the absolute path
"/usr/local/apache2/htdocs/tmp/" (I assume that
/usr/local/apache2/htdocs is the documentroot in your httpd.conf).
So this combination of IMAGEURL and IMAGEPATH works perfectly because
that is a directory tree owned by the user, the apache is running on.
Manfred
cris ricana schrieb:
> Hi Manfred!
>
> Sorry, I haven't replied sooner. I have been away from the office for
> a few days and had just got back to fix this problem.
>
> I did what your new suggestions, with no success. But I returned to
> the tmp folder and your suggestion if it is indeed readable and
> writeable by apache and mapserver. I experimented on three locations
> for my tmp-folder: in /var/www/tmp; in /usr/local/tmp; and
> /usr/local/apache2/htdocs/tmp, making all three locations readable and
> writeable. Then I used these three locations successively in the
> IMAGEPATH line of the map file. I also made two versions of a html
> file, one has CGI forms using mapserv and the other one has PHP
> mapscripts extensions and tags.
>
> Using the CGI html file, mapserv had successfully written images to
> all three locations, but could only read/show the images from the
> /usr/local/apache2/htdocs/tmp folder. Mapscript can read/write on
> /usr/local/apache2/htdocs/tmp, but not on the other two.
>
> Therefore, it seems that the matter is all about permissions of the
> tmp-dir and the created images as well. To make these folders
> readable/writable, I used "chmod 777", a command I'm not comfortable
> using. Could there be safer way of doing these? I still don't know why
> both mapserv and mapscript is ok with me using
> /usr/local/apache2/htdocs/tmp, but not on the others. I had to admit
> I'm not really a linx expert, so I probably am embarrassing myself
> with these questions, so well... <smiles sheepishly>
>
> Maricris
>
>
>
> On 7/20/06, Manfred Meier <m.meier at spiekermann.de> wrote:
>
>> Hello,
>>
>> some additional "ideas": (You know, I'm not a php man)
>>
>> - is in your php.ini display_errors set to "on", so that erors are
>> shown? And are the errors and warnings activated?
>>
>> - you have this echo's in yout script as debug output. Can you insert an
>> echo after each of these 3 lines too,
>> > $map = ms_newMapObj($map_path);
>> > $image=$map->draw();
>> > $image_url=$image->saveWebImage();
>> so that you ca see what the last executed statement is?
>>
>> Manfred
>>
>>
>> cris ricana schrieb:
>>
>> > Hi!
>> >
>> > Here's the answer to your questions:
>> >
>> >> - is your tmp-dir writeable for the webserver?
>> >
>> >
>> > Yes it is. I've tested my mapserver installation successfully using
>> > CGI forms (the itasca samples, in particular) instead of PHP
>> > /mapscript. These CGI webpages performs well and writes their images
>> > in a temp folder I made (/usr/local/apache2/htdocs/tmp/).
>> >
>> >
>> >> - if you look at the source-code for the html-page in your browser,
>> does
>> >> it show the correct url in the image tag?
>> >
>> >
>> > The output in the browser (as well as the source code) is simply these
>> > text:
>> >
>> > "php_mapscript.so loaded. /usr/local/apache2/htdocs/recipe1/hello.map"
>> >
>> > Which are text echoed from the php code (see my php code below) from
>> > line 3 and 5. There are no lines for the image at all. Actually, I
>> > added these text to locate where the problem is in my php code.
>> > Otherwise, the output in the browser would be a blank page.
>> >
>> >
>> > Regards,
>> > Maricris
>> >
>> >
>> >
>> >
>> >
>> >
>> > On 7/20/06, Manfred Meier <m.meier at spiekermann.de> wrote:
>> >
>> >> Hello,
>> >>
>> >> - is your tmp-dir writeable for the webserver?
>> >> - if you look at the source-code for the html-page in your browser,
>> does
>> >> it show the correct url in the image tag?
>> >>
>> >> Manfred
>> >>
>> >>
>> >> cris ricana schrieb:
>> >>
>> >> > Hello!
>> >> >
>> >> > I'd like some help in using PHP/Mapscript. I have a freshly
>> installed
>> >> > Mapserver machine and is testing some simple php webpages to see if
>> >> > everything is working, especially PHP/Mapscript:
>> >> >
>> >> > <?php
>> >> > dl ("php_mapscript.so");
>> >> > echo("php_mapscript.so loaded.\n"); //to see if the
>> >> library will
>> >> > sucessfully load.
>> >> > $map_path="/usr/local/apache2/htdocs/recipe1/hello.map";
>> >> > echo($map_path); // absolute
>> path
>> >> > to the map file
>> >> > $map = ms_newMapObj($map_path);
>> >> > $image=$map->draw();
>> >> > $image_url=$image->saveWebImage();
>> >> > ?>
>> >> > <HTML>
>> >> > <HEAD>
>> >> > <TITLE>Mapserver "hello world"</TITLE>
>> >> > </HEAD>
>> >> > <BODY>
>> >> > <img SRC="<?php echo $image_url; ?>">
>> >> > <p>This is the simplest example I could come up with.</p>
>> >> > ...
>> >> > </BODY>
>> >> > </html>
>> >> >
>> >> > I'm using the following map file. It should produce an image with
>> just
>> >> > a line of text in it:
>> >> >
>> >> > MAP
>> >> > NAME HELLO
>> >> > STATUS ON
>> >> > EXTENT 0 0 4000 3000
>> >> > SIZE 400 300
>> >> > IMAGECOLOR 200 255 255
>> >> > WEB
>> >> > IMAGEPATH "/usr/local/apache2/htdocs/tmp/"
>> >> > IMAGEURL "/tmp/"
>> >> > END
>> >> >
>> >> > LAYER
>> >> > NAME "credits"
>> >> > STATUS DEFAULT
>> >> > TRANSFORM FALSE
>> >> > TYPE ANNOTATION
>> >> > FEATURE
>> >> > POINTS
>> >> > 200 150
>> >> > END
>> >> > TEXT 'Hello world. Mapserver rocks.'
>> >> > END
>> >> > CLASS
>> >> > LABEL
>> >> > TYPE BITMAP
>> >> > COLOR 0 0 0
>> >> > END
>> >> > END
>> >> > END
>> >> >
>> >> > END
>> >> >
>> >> > The output I'm getting from the browsers is just the following:
>> >> >
>> >> > php_mapscript.so loaded.
>> >> > /usr/local/apache2/htdocs/recipe1/hello.map
>> >> >
>> >> > So it seems that everything is working, but only until it encounters
>> >> > the "$map = ms_newMapObj($map_path);" line. I've checked the tmp
>> >> > folder I've made to store the images and no images are made (no
>> >> > surprise there). Would somebody know what the problem might be and
>> >> > what could be the solution for this? I really, really need to know.
>> >> >
>> >> > Thanks,
>> >> > Maricris
>> >> >
>> >>
>> >>
>> >
>>
>>
>
More information about the MapServer-users
mailing list