[Mapserver-users] PHP MapScript on Mac OS X?

Lorenzo Moretti lorenzo.moretti at bologna.enea.it
Fri Mar 19 05:32:11 EST 2004


--============_-1132430164==_ma============
Content-Type: text/plain; charset="us-ascii" ; format="flowed"

Gary

>- Where do you store the compiled php_mapscript.so?


Now I have
/usr/local/php			(normal php 4.3.3 for Apache)
/usr/local/php_cgi		(all php 4.3.3 as CGI)

/usr/local/php_cgi/lib/php/extensions/no-debug-non-zts-20020429/php_mapscript.so

/WebServer/CGI-PHPMapServer	(inside there is only a php link to 
/usr/local/php_cgi/bin/php)
/WebServer/CGI-Executables	(inside there is mapserv)
/sw				(all libraries for mapserver and php from FINK)


>- Do you use PHP's dl() command to load the extension?  If so, does 
>it return anything?  Also, does the extension_loaded() function 
>return true?

Yes. In namefile.phtml

/* -------------------------------------------------------------------- */
/*      Load required modules                                           */
/* -------------------------------------------------------------------- */
if (PHP_OS == "WINNT" || PHP_OS == "WIN32")
{
     $dlext = "dll";
}
else
{
     $dlext = "so";
}

if (!extension_loaded("MapScript"))
{
     dl("php_mapscript.$dlext");
}
if (!extension_loaded("dbase"))
{
     dl("php_dbase.$dlext");
}


>- Could you email a copy of your httpd.conf & php.ini files (and 
>your php configure string if you have it)?  I would be appreciative.
>

I have not create php.ini but it's possible.

My httpd.conf for 2 php (Apache DSO and cgi)

normal PHP for apache

...
LoadModule perl_module        libexec/httpd/libperl.so
LoadModule php4_module        /usr/local/php/libphp4.so
LoadModule dav_module         libexec/httpd/libdav.so
...

...
AddModule mod_php4.c
AddModule mod_dav.c
....

for index

#
# DirectoryIndex: Name of the file or files to use as a pre-written HTML
# directory index.  Separate multiple entries with spaces.
#
<IfModule mod_dir.c>
     DirectoryIndex index.html index.htm default.html default.htm 
index.php default.php index.phtml
</IfModule>


inside section <IfModule mod_alias.c>

# PHP Map Server ---

     ScriptAlias /cgi-map/ "/WebServer/CGI-PHPMapServer/"
<Directory "/WebServer/CGI-PHPMapServer">
	Options ExecCGI FollowSymLinks
</Directory>


after Action

#
# Action lets you define media types that will execute a script whenever
# a matching file is called. This eliminates the need for repeated URL
# pathnames for oft-used CGI file processors.
# Format: Action media/type /cgi-script/location
# Format: Action handler-name /cgi-script/location
#

Action phtml-script /cgi-map/php
AddHandler phtml-script .phtml



All .php files work with normal PHP and all .phtml files work with CGI PHP.

They work very very well with last MapServer 4.0.1 in an old G3 beige....

Bye

-- 
________________________________________________________________________
||       Lorenzo Moretti        e-mail: lorenzo.moretti at bologna.enea.it     
||/|/|   ENEA prot/idr          Web: http://wwwamb.bologna.enea.it/    
||   |   via Don Fiammelli, 2   FTP: ftp://ftpamb.bologna.enea.it/ (res.)
~~~~~~   40128 BOLOGNA - ITALY  Ph: +39-0516098086  Fax: +39-0516098131
			Download GRASS for MAC OS X:    
	           http://wwwamb.bologna.enea.it/forgrass/
________________________________________________________________________
--============_-1132430164==_ma============
Content-Type: text/html; charset="us-ascii"

<!doctype html public "-//W3C//DTD W3 HTML//EN">
<html><head><style type="text/css"><!--
blockquote, dl, ul, ol, li { padding-top: 0 ; padding-bottom: 0 }
 --></style><title>Re: [Mapserver-users] PHP MapScript on Mac OS
X?</title></head><body>
<div>Gary</div>
<div><br></div>
<blockquote type="cite" cite>- Where do you store the compiled
php_mapscript.so?</blockquote>
<div><br></div>
<div><br></div>
<div>Now I have</div>
<blockquote><font face="Courier">/usr/local/php<x-tab>&nbsp;
</x-tab><x-tab>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</x-tab><x-tab>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</x-tab>(normal php 4.3.3 for Apache)</font></blockquote>
<blockquote><font
face="Courier">/usr/local/php_cgi<x-tab>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</x-tab><x-tab>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </x-tab>(all
php 4.3.3 as CGI)</font></blockquote>
<blockquote><font face="Courier"><br></font></blockquote>
<blockquote><font
face="Courier"
>/usr/local/php_cgi/lib/php/extensions/no-debug-non-zts-20020429/php_<span
></span>mapscript.so</font></blockquote>
<blockquote><font face="Courier"><br></font></blockquote>
<blockquote><font
face="Courier">/WebServer/CGI-PHPMapServer<x-tab>&nbsp;&nbsp;&nbsp;&nbsp;
</x-tab>(inside there is only a php link to
/usr/local/php_cgi/bin/php)</font></blockquote>
<blockquote><font
face="Courier">/WebServer/CGI-Executables<x-tab
>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </x-tab>(inside there is
mapserv)</font></blockquote>
<blockquote><font face="Courier">/sw<x-tab>&nbsp;&nbsp;&nbsp;&nbsp;
</x-tab><x-tab>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</x-tab><x-tab>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</x-tab><x-tab>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </x-tab>(all
libraries for mapserver and php from FINK)</font></blockquote>
<blockquote><br></blockquote>
<div><br></div>
<blockquote type="cite" cite>- Do you use PHP's dl() command to load
the extension?&nbsp; If so, does it return anything?&nbsp; Also, does
the extension_loaded() function return true?</blockquote>
<div><br></div>
<div>Yes. In namefile.phtml</div>
<div><br></div>
<blockquote><font face="Courier New">/*
--------------------------------------------------------------------
*/</font></blockquote>
<blockquote><font face="Courier New">/*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Load required
modules&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span
></span
>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span
></span
>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span
></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
*/</font></blockquote>
<blockquote><font face="Courier New">/*
--------------------------------------------------------------------
*/</font></blockquote>
<blockquote><font face="Courier New">if (PHP_OS == &quot;WINNT&quot;
|| PHP_OS == &quot;WIN32&quot;)</font></blockquote>
<blockquote><font face="Courier New">{</font></blockquote>
<blockquote><font face="Courier New">&nbsp;&nbsp;&nbsp; $dlext =
&quot;dll&quot;;</font></blockquote>
<blockquote><font face="Courier New">}</font></blockquote>
<blockquote><font face="Courier New">else</font></blockquote>
<blockquote><font face="Courier New">{</font></blockquote>
<blockquote><font face="Courier New">&nbsp;&nbsp;&nbsp; $dlext =
&quot;so&quot;;</font></blockquote>
<blockquote><font face="Courier New">}</font></blockquote>
<blockquote><font face="Courier New"><br></font></blockquote>
<blockquote><font face="Courier New">if
(!extension_loaded(&quot;MapScript&quot;))</font></blockquote>
<blockquote><font face="Courier New">{</font></blockquote>
<blockquote><font face="Courier New">&nbsp;&nbsp;&nbsp;
dl(&quot;php_mapscript.$dlext&quot;);</font></blockquote>
<blockquote><font face="Courier New">}</font></blockquote>
<blockquote><font face="Courier New">if
(!extension_loaded(&quot;dbase&quot;))</font></blockquote>
<blockquote><font face="Courier New">{</font></blockquote>
<blockquote><font face="Courier New">&nbsp;&nbsp;&nbsp;
dl(&quot;php_dbase.$dlext&quot;);</font></blockquote>
<blockquote><font face="Courier New">}</font></blockquote>
<div><br></div>
<div><br></div>
<blockquote type="cite" cite>- Could you email a copy of your
httpd.conf &amp; php.ini files (and your php configure string if you
have it)?&nbsp; I would be appreciative.<br>
</blockquote>
<div><br></div>
<div>I have not create php.ini but it's possible.</div>
<div><br></div>
<div>My httpd.conf for 2 php (Apache DSO and cgi)</div>
<div><br></div>
<blockquote>normal PHP for apache</blockquote>
<div><br></div>
<blockquote>
<blockquote><font face="Courier New">...</font></blockquote>
<blockquote><font face="Courier New">LoadModule
perl_module&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
libexec/httpd/libperl.so</font></blockquote>
<blockquote><font face="Courier New">LoadModule
php4_module&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/usr/local/php/libphp4.so</font></blockquote>
<blockquote><font face="Courier New">LoadModule
dav_module&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
libexec/httpd/libdav.so</font></blockquote>
<blockquote><font face="Courier New">...</font></blockquote>
<blockquote><font face="Courier New"><br></font></blockquote>
<blockquote><font face="Courier New">...</font></blockquote>
<blockquote><font face="Courier New">AddModule
mod_php4.c</font></blockquote>
<blockquote><font face="Courier New">AddModule
mod_dav.c</font></blockquote>
<blockquote><font face="Courier New">....</font></blockquote>
<blockquote><font face="Courier New"><br></font></blockquote>
</blockquote>
<blockquote>for index
<blockquote><font face="Courier New"><br></font></blockquote>
<blockquote><font face="Courier New">#<br>
# DirectoryIndex: Name of the file or files to use as a pre-written
HTML<br>
# directory index.&nbsp; Separate multiple entries with spaces.<br>
#<br>
&lt;IfModule mod_dir.c&gt;<br>
&nbsp;&nbsp;&nbsp; DirectoryIndex index.html index.htm default.html
default.htm index.php default.php index.phtml</font></blockquote>
<blockquote><font
face="Courier New">&lt;/IfModule&gt;</font></blockquote>
<blockquote><font face="Courier New"><br></font></blockquote>
<blockquote><font face="Courier New"><br></font></blockquote>
</blockquote>
<blockquote>inside section &lt;IfModule mod_alias.c&gt;
<blockquote><font face="Courier New"><br></font></blockquote>
<blockquote><font face="Courier New"># PHP Map Server
---</font></blockquote>
<blockquote><font face="Courier New"><br></font></blockquote>
</blockquote>
<blockquote><font face="Courier New">&nbsp;&nbsp;&nbsp; ScriptAlias
/cgi-map/ &quot;/WebServer/CGI-PHPMapServer/&quot;</font>
<blockquote><font face="Courier New">&lt;Directory
&quot;/WebServer/CGI-PHPMapServer&quot;&gt;</font></blockquote>
</blockquote>
<blockquote><font
face="Courier New"><x-tab>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</x-tab>Options ExecCGI FollowSymLinks</font>
<blockquote><font
face="Courier New">&lt;/Directory&gt;</font></blockquote>
<blockquote><font face="Courier New"><br></font></blockquote>
</blockquote>
<blockquote><font face="Courier New"><br></font></blockquote>
<blockquote>after Action
<blockquote><font face="Courier New"><br></font></blockquote>
<blockquote><font face="Courier New">#<br>
# Action lets you define media types that will execute a script
whenever<br>
# a matching file is called. This eliminates the need for repeated
URL<br>
# pathnames for oft-used CGI file processors.<br>
# Format: Action media/type /cgi-script/location</font></blockquote>
<blockquote><font face="Courier New"># Format: Action handler-name
/cgi-script/location<br>
#<br>
<br>
Action phtml-script /cgi-map/php</font></blockquote>
<blockquote><font face="Courier New">AddHandler phtml-script
.phtml</font></blockquote>
<blockquote><font face="Courier New"><br></font></blockquote>
<blockquote><font face="Courier New"><br></font></blockquote>
</blockquote>
<blockquote><br></blockquote>
<div>All .php files work with normal PHP and all .phtml files work
with CGI PHP.</div>
<div><br></div>
<div>They work very very well with last MapServer 4.0.1 in an old G3
beige....</div>
<div><br></div>
<div>Bye</div>
<div><br></div>
<x-sigsep><pre>-- 
</pre></x-sigsep>
<div><font face="Courier New"
color="#000000"
>____________________________________________________________________<span
></span>____</font></div>
<div><font face="Courier New"
color="#000000">||&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Lorenzo
Moretti&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; e-mail:
lorenzo.moretti at bologna.enea.it&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font></div
>
<div><font face="Courier New" color="#000000">||/|/|&nbsp;&nbsp; ENEA
prot/idr&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Web:
http://wwwamb.bologna.enea.it/&nbsp;&nbsp;&nbsp;&nbsp;</font></div>
<div><font face="Courier New" color="#000000">||&nbsp;&nbsp; |&nbsp;&nbsp;
via Don Fiammelli, 2&nbsp;&nbsp; FTP:
ftp://ftpamb.bologna.enea.it/&nbsp;(res.)</font></div>
<div><font face="Courier New" color="#000000">~~~~~~&nbsp;&nbsp; 40128
BOLOGNA - ITALY&nbsp; Ph: +39-0516098086&nbsp; Fax:
+39-0516098131</font></div>
<div><font face="Courier New"
color="#000000"><x-tab>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</x-tab><x-tab>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</x-tab><x-tab>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</x-tab>Download GRASS for MAC OS
X:&nbsp;&nbsp;&nbsp;&nbsp;</font></div>
<div><font face="Courier New"
color="#000000"><x-tab>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</x-tab>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
http://wwwamb.bologna.enea.it/forgrass/</font></div>
<div><font face="Courier New"
color="#000000"
>____________________________________________________________________<span
></span>____</font></div>
</body>
</html>
--============_-1132430164==_ma============--



More information about the mapserver-users mailing list