So I've even started WSGI as daemon process. I got over the "Service 
temporary unavailable" hurdle by going over the documentation. 

Finally I have the following in my httpd.conf

WSGISocketPrefix run/wsgi
WSGIDaemonProcess /processimages user=bhaarat group=bhaarat processes=20 
threads=30 display-name=%{GROUP}
WSGIProcessGroup /processimages
WSGIPythonHome /usr/local
WSGIPythonPath /usr/local/lib/python2.7/site-packages/
WSGIScriptAlias /processimages /var/www/webpy-app/service.py
#Alias /processimages/static /var/www/webpy-app/static

....
<Directory /var/www/webpy-app/>
    WSGIApplicationGroup %{GLOBAL}
    Order deny,allow
    Allow from all
</Directory>

Now, putting "import numpy" results in the following errors:

In error_log: 

[alert] (13)Permission denied: mod_wsgi (pid=8396): Unable to change 
working directory to '/home/bhaarat'.

In ssl_error_log:

[Sat Oct 12 13:44:49 2013] [error] [client 10.10.41.128] mod_wsgi 
(pid=8380): Target WSGI script '/var/www/webpy-app/service.py' cannot be 
loaded as Python module.
[Sat Oct 12 13:44:49 2013] [error] [client 10.10.41.128] mod_wsgi 
(pid=8380): Exception occurred processing WSGI script 
'/var/www/webpy-app/service.py'.
[Sat Oct 12 13:44:49 2013] [error] [client 10.10.41.128] Traceback (most 
recent call last):
[Sat Oct 12 13:44:49 2013] [error] [client 10.10.41.128]   File 
"/var/www/webpy-app/service.py", line 11, in <module>
[Sat Oct 12 13:44:49 2013] [error] [client 10.10.41.128]     import numpy
[Sat Oct 12 13:44:49 2013] [error] [client 10.10.41.128]   File 
"/usr/local/lib/python2.7/site-packages/numpy-1.7.1-py2.7-linux-x86_64.egg/numpy/__init__.py",
 
line 155, in <module>
[Sat Oct 12 13:44:49 2013] [error] [client 10.10.41.128]     import 
ctypeslib
[Sat Oct 12 13:44:49 2013] [error] [client 10.10.41.128]   File 
"/usr/local/lib/python2.7/site-packages/numpy-1.7.1-py2.7-linux-x86_64.egg/numpy/ctypeslib.py",
 
line 60, in <module>
[Sat Oct 12 13:44:49 2013] [error] [client 10.10.41.128]     import ctypes
[Sat Oct 12 13:44:49 2013] [error] [client 10.10.41.128]   File 
"/usr/local/lib/python2.7/ctypes/__init__.py", line 555, in <module>
[Sat Oct 12 13:44:49 2013] [error] [client 10.10.41.128]     _reset_cache()
[Sat Oct 12 13:44:49 2013] [error] [client 10.10.41.128]   File 
"/usr/local/lib/python2.7/ctypes/__init__.py", line 279, in _reset_cache
[Sat Oct 12 13:44:49 2013] [error] [client 10.10.41.128]     
CFUNCTYPE(c_int)(lambda: None)
[Sat Oct 12 13:44:49 2013] [error] [client 10.10.41.128] MemoryError


I'm starting httpd as "sudo service httpd start"




On Saturday, October 12, 2013 8:20:24 AM UTC-4, Bhaarat Sharma wrote:
>
> I found that WSGIApplicationGroup should be under the <Directory tag. So 
> now I have this in my httpd.conf
>
> WSGIPythonHome /usr/local
> WSGIPythonPath /usr/local/lib/python2.7/site-packages/
> #WSGIDaemonProcess /processimages user=bhaarat group=bhaarat processes=2 
> threads=3 display-name=%{GROUP}
> #WSGIProcessGroup /processimages
> WSGIScriptAlias /processimages /var/www/webpy-app/service.py
> Alias /processimages/static /var/www/webpy-app/static
>
> <Directory /var/www/webpy-app/>
>     WSGIApplicationGroup %{GLOBAL}
>     Order deny,allow
>     Allow from all
> </Directory>
>
> But this change did not help either ;(
>
>
>
> On Saturday, October 12, 2013 8:07:42 AM UTC-4, Bhaarat Sharma wrote:
>>
>> Thanks for the reply. However, that did not work. I added the 
>> WSGIAplicationGroup to my httpd.conf like this:
>>
>> WSGIPythonHome /usr/local
>> WSGIPythonPath /usr/local/lib/python2.7/site-packages/
>> WSGIApplicationGroup %{GLOBAL}
>> WSGIScriptAlias /processimages /var/www/webpy-app/service.py
>>
>> However, the Internal server error is still there when I add "import 
>> numpy". Additionally, when I comment out "import numpy" and instead add 
>> "import cv2" I see an error in error_log that says "[error] ImportError: 
>> numpy.core.multiarray failed to import"
>>
>> As a daemon service. I tried adding the following to my httpd.conf
>>
>> WSGIPythonHome /usr/local
>> WSGIPythonPath /usr/local/lib/python2.7/site-packages/
>> WSGIApplicationGroup %{GLOBAL}
>> WSGIDaemonProcess /processimages user=bhaarat group=bhaarat processes=2 
>> threads=25
>> WSGIProcessGroup /processimages
>> WSGIScriptAlias /processimages /var/www/webpy-app/service.py
>>
>> However, after restarting the httpd service and trying to visit that page 
>> I got this error: "Service Temporarily Unavailable"
>>
>> Thanks for help again
>>
>>
>>
>> On Friday, October 11, 2013 10:31:00 PM UTC-4, Graham Dumpleton wrote:
>>>
>>> Try adding to the Apache configuration:
>>>
>>> WSGIApplicationGroup %{GLOBAL}
>>>
>>> The bumpy module is from memory one which will not work in sub 
>>> interpreters, so you need to force it to run in the main global 
>>> interpreter, which is what the directive does.
>>>
>>> I would also suggest you look into using daemon mode of mod_wsgi if you 
>>> aren't already.
>>>
>>> Graham
>>>
>>> On 12/10/2013, at 4:34 AM, Bhaarat Sharma <bhaa...@gmail.com> wrote:
>>>
>>> Additionally, Initially i did not install python with --enable-shared 
>>> but later I did the following:
>>>
>>> sudo make distclean
>>> ./configure --prefix=/usr/local --enable-shared
>>> make && make altinstall
>>>
>>> However still no good. 
>>>
>>> Some more information:
>>>
>>> >>> numpy.version.version
>>> '1.7.1'
>>> >>> import cv2
>>> >>> cv2.__version__
>>> '2.4.4'
>>>
>>>
>>> On Friday, October 11, 2013 11:47:39 AM UTC-4, Bhaarat Sharma wrote:
>>>>
>>>> I am trying to use numpy in a web.py script being used in mod_wsgi. 
>>>> However, if I try to "import numpy" I get an "Internal Server Error" with 
>>>> nothing in the error_log. I'm out of ideas of how to resolve this problem. 
>>>> I've following the installations instructions and ensured everything. 
>>>>
>>>> I've verified that a simple web.py script without the 'import numpy' 
>>>> works perfectly fine. 
>>>>
>>>> Here are the details of my setup:
>>>>
>>>> *Everything works fine from interpreter:*
>>>>
>>>> $ python
>>>> Python 2.7.3 (default, Oct  8 2013, 15:53:09) 
>>>> [GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
>>>> Type "help", "copyright", "credits" or "license" for more information.
>>>> >>> import cv2
>>>> >>> import numpy
>>>> >>> import sys
>>>> >>> sys.prefix
>>>>  '/usr/local'
>>>>
>>>> *I configured mod_wsgi like this:*
>>>>
>>>> ./configure --with-python=/usr/local/bin/python2.7 --with
>>>> -apxs=/usr/sbin/apxs
>>>> LD_RUN_PATH=/usr/local/lib/ make 
>>>> sudo make install
>>>>
>>>> *Ensuring that mod_wsgi is configured properly:*
>>>>
>>>> $ ldd /usr/lib64/httpd/modules/mod_wsgi.so 
>>>>     linux-vdso.so.1 =>  (0x00007fff36dff000)
>>>>     libpython2.7.so.1.0 => /usr/local/lib/libpython2.7.so.1.0 (
>>>> 0x00007f9462710000)
>>>>     libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f94624e8000)
>>>>     libdl.so.2 => /lib64/libdl.so.2 (0x00007f94622e4000)
>>>>     libutil.so.1 => /lib64/libutil.so.1 (0x00007f94620e1000)
>>>>     libm.so.6 => /lib64/libm.so.6 (0x00007f9461e5c000)
>>>>     libc.so.6 => /lib64/libc.so.6 (0x00007f9461ac9000)
>>>>     /lib64/ld-linux-x86-64.so.2 (0x00007f9462d15000)
>>>>
>>>> *Added the following to httpd.conf*
>>>>
>>>> WSGIPythonHome /usr/local
>>>> WSGIPythonPath /usr/local/lib/python2.7/site-packages/
>>>>
>>>> *Site-packages directory contains the following:*
>>>>
>>>> cv2.so
>>>> cv.py
>>>> distribute-0.6.35-py2.7.egg
>>>> easy-install.pth
>>>> numpy-1.7.1-py2.7-linux-x86_64.egg
>>>> README
>>>> setuptools-0.6c11-py2.7.egg-info
>>>> setuptools.pth
>>>> web.py-0.37-py2.7.egg
>>>>
>>>> *Here is my script:*
>>>>
>>>> import web
>>>> import json
>>>> import numpy as np
>>>>
>>>> urls = (
>>>>    '.*', 'Sample'
>>>> )
>>>>
>>>> class Sample:
>>>>      def GET(self):
>>>>        user_data = web.input()
>>>>        return json.dumps(self.perform(user_data.color, 
>>>> user_data.shade))
>>>>
>>>>     def perform (self,color, shade):
>>>>         return {'color': color, 'shade': shade}
>>>>
>>>> application = web.application(urls, globals()).wsgifunc()
>>>>
>>>> *I have the following files:*
>>>>
>>>> $ sudo find / -name libpython2.7.a
>>>> /usr/local/lib/python2.7/config/libpython2.7.a
>>>> /usr/local/lib/libpython2.7.a
>>>>
>>>> $ sudo find / -name libpython2.7.so*
>>>> /usr/local/lib/libpython2.7.so
>>>> /usr/local/lib/libpython2.7.so.1.0
>>>> /usr/lib/libpython2.7.so
>>>> /usr/lib/libpython2.7.so.1.0
>>>>
>>>> *and my Python2.7 config directory has these files:*
>>>>
>>>> config.c
>>>> config.c.in
>>>> install-sh
>>>> libpython2.7.a
>>>> libpython2.7.so -> ../../libpython2.7.so
>>>> libpython2.7.so.1.0 -> ../../libpython2.7.so.1.0
>>>> Makefile
>>>> makesetup
>>>> python.o
>>>> Setup
>>>> Setup.config
>>>> Setup.local
>>>>
>>>> I'll appreciate any help
>>>>
>>>
>>> -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "modwsgi" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to modwsgi+u...@googlegroups.com.
>>> To post to this group, send email to mod...@googlegroups.com.
>>> Visit this group at http://groups.google.com/group/modwsgi.
>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>
>>>
>>>

-- 
You received this message because you are subscribed to the Google Groups 
"modwsgi" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to modwsgi+unsubscr...@googlegroups.com.
To post to this group, send email to modwsgi@googlegroups.com.
Visit this group at http://groups.google.com/group/modwsgi.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to