FastCGI/Oracle Solved

Stephen Woodbridge woodbri at SWOODBRIDGE.COM
Wed Jan 24 09:39:48 EST 2007


Hi Fernando,

Thank you for your post. It lead me to the fix. I added the environment 
variables here and I am able to make connections now.

     <Location ~ \.fcgi>
         Options ExecCGI
         SetHandler fastcgi-script
         SetEnv PROJ_LIB /usr/share/proj
         SetEnv LD_LIBRARY_PATH /home2/oracle/cl10/lib
         SetEnv TNS_ADMIN /home/swoodbridge/.oracle/
         SetEnv ORACLE_HOME /home2/oracle/cl10/
     </Location>

Defining them here does NOT work:

FastCgiConfig -initial-env PROJ_LIB=/usr/share/proj -initial-env 
LD_LIBRARY_PATH=/home2/oracle/cl10/lib -initial-env 
TNS_ADMIN=/home/swoodbridge/.oracle/ -initial-env 
ORACLE_HOME=/home2/oracle/cl10/  -appConnTimeout 60 -idle-timeout 60 
-init-start-delay 1 -minProcesses 2 -maxClassProcesses 20 -startDelay 5

I tried to add a comment to the Documentation Page for FastCGI but the 
disk is full :( and this needs to be documented!

-Steve

Fernando Simon wrote:
> Hi Stephen,
>     This error (without error code, just point) that the Mapserver
> reported occurs when the Oracle Spatial driver can't connect with
> Oracle, when the Oracle variables are not present in the system
> (ORACLE_HOME and/or ORACLE_BASE). Did you define it inside the
> httpd.conf?
>     Or, how you reported, the Mapserver can access the Oracle libs,
> inside the path the ORACLE_HOME refer. How you report you can change
> the permissions to the Ooracle director. The folders, just the
> folders, need the execution permissions (+x). I don believe that the
> Mapserver as FastCGI needs special access, here I use the PHP as
> FastCGI and I didn't change any special about the Oracle.
>     Another thing that I saw for FastCGI is the Oracle variables in
> the Apache. When you define the Oracle Libs inside the httpd.conf the
> FastCGI can't read correctly, you need to define the variables inside
> the FastCGI module (the <IfModule fcgid_module>). Unfortunately I am
> not in the Lab today (just tomorrow) to have access to my httpd.conf.
>  I will send to you the configure that I use here tomorrow.
>     Best regards.
> 
> ---------------------------------------------
> Fernando Simon 
> UMN Mapserver and Oracle Spatial developer
> ---------------------------------------------
> 
> 
> Citando Stephen Woodbridge <woodbri at SWOODBRIDGE.COM>:
> 
>> Frank Warmerdam wrote:
>>> Stephen Woodbridge wrote:
>>>> Hi,
>>>>
>>>> This is my first attempt to get FastCGI running with Mapserver
>> to do 
>>>> Oracle connection pooling, and it is not working. Any help would
>> be 
>>>> appreciated.
>>>>
>>>> I have the mapfile working for CGI so I know I have the system
>> and 
>>>> environment set up correctly, but in fcgi mode I get:
>>>>
>>>> This is the error message:
>>>>
>>>> msDrawMap(): Image handling error. Failed to draw layer named 
>>>> 'Mexican_States'.
>>>> msOracleSpatialLayerOpen(): OracleSpatial error. Cannot create
>> OCI 
>>>> Handlers. Connection failure. Check the connection string.
>> Error: .
>>> Steve,
>>>
>>> It seems like you have done everything right.  Does the fastcgi
>>> mapserver work for other stuff (like shapefiles) if there is no
>>> oracle in the mix?
>>>
>>> It looks like some sort of subtle environment type issue, but
>> your
>>> efforts seem pretty comprehensive.
>>>
>>> Best regards,
>>>
>> Hi Frank,
>>
>> Good call, I should have thought of that! Yes, if I change the
>> mapfile 
>> to a shapefile only mapfile it runs just fine in fastcgi.
>>
>> Yesterday, when I was setting up the Oracle connection I got the
>> same 
>> error message and resolved it by fixing the file permission on the
>>
>> /home2/oracle directory tree. So I guess there are still some
>> issues 
>> there. I'll go back over that again maybe I missed something.
>>
>> Does the fastcgi version need access to different oracle client
>> files 
>> that the CGI does not need?
>>
>> Thanks for the quick response,
>>    -Steve W
>>
> 
> 
> 
> 
> -------------------------------------------------
>   Univali - Webmail - http://webmail.univali.br



More information about the mapserver-users mailing list