473,503 Members | 2,049 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Configuring apache to execute python scripts using mod_python handler

I configured apache to execute python scripts using mod_python
handler. I followed below mentioned steps to configure apache.

1. In http.conf I added

<Directory "D:/softwares/Apache2.2/htdocs">
AddHandler mod_python .py
PythonHandler mptest
PythonDebug On
</Directory>

2. Then I added the line "LoadModule python_module modules/
mod_python.so" to http.conf.

Then I tried execute the python script mentioned below from browser.

from mod_python import apache
def handler(req):
req.content_type = 'text/plain'
req.write("Hello World!")
return apache.OK

Then I am getting the following error

Traceback (most recent call last):

File "D:\softwares\Python25\Lib\site-packages\mod_python
\importer.py", line 1537, in HandlerDispatch
default=default_handler, arg=req, silent=hlist.silent)

File "D:\softwares\Python25\Lib\site-packages\mod_python
\importer.py", line 1202, in _process_target
module = import_module(module_name, path=path)

File "D:\softwares\Python25\Lib\site-packages\mod_python
\importer.py", line 304, in import_module
return __import__(module_name, {}, {}, ['*'])

ImportError: No module named mptest

I am using Apache 2.2.4, python 2.5 and mod_python-3.3.1.win32-py2.5-
Apache2.2.

I am able to execute python scripts by configuring apache to execute
the cgi scripts. But I want to execute it using mod_python as it is
faster compared to cgi mode. Someone please help me on this issue.

Aug 13 '07 #1
3 4924
Hi Joe

You'd probably have better luck posting this to the mod python mailing
list. Did you name your python script mptest.py and did you remember
to restart Apache when you edited the httpd.conf file? If so then I
don't see any reason why it shouldn't work although I've never tried
mod_python under a Windows environment.

Regards

Jeffrey van Aswegen

joe jacob wrote:
I configured apache to execute python scripts using mod_python
handler. I followed below mentioned steps to configure apache.

1. In http.conf I added

<Directory "D:/softwares/Apache2.2/htdocs">
AddHandler mod_python .py
PythonHandler mptest
PythonDebug On
</Directory>

2. Then I added the line "LoadModule python_module modules/
mod_python.so" to http.conf.

Then I tried execute the python script mentioned below from browser.

from mod_python import apache
def handler(req):
req.content_type = 'text/plain'
req.write("Hello World!")
return apache.OK

Then I am getting the following error

Traceback (most recent call last):

File "D:\softwares\Python25\Lib\site-packages\mod_python
\importer.py", line 1537, in HandlerDispatch
default=default_handler, arg=req, silent=hlist.silent)

File "D:\softwares\Python25\Lib\site-packages\mod_python
\importer.py", line 1202, in _process_target
module = import_module(module_name, path=path)

File "D:\softwares\Python25\Lib\site-packages\mod_python
\importer.py", line 304, in import_module
return __import__(module_name, {}, {}, ['*'])

ImportError: No module named mptest

I am using Apache 2.2.4, python 2.5 and mod_python-3.3.1.win32-py2.5-
Apache2.2.

I am able to execute python scripts by configuring apache to execute
the cgi scripts. But I want to execute it using mod_python as it is
faster compared to cgi mode. Someone please help me on this issue.
Aug 13 '07 #2
On Aug 13, 5:16 am, joe jacob <joejaco...@gmail.comwrote:
I configured apache to execute python scripts using mod_python
handler. I followed below mentioned steps to configure apache.

1. In http.conf I added

<Directory "D:/softwares/Apache2.2/htdocs">
AddHandler mod_python .py
PythonHandler mptest
PythonDebug On
</Directory>

2. Then I added the line "LoadModule python_module modules/
mod_python.so" to http.conf.

Then I tried execute the python script mentioned below from browser.

from mod_python import apache
def handler(req):
req.content_type = 'text/plain'
req.write("Hello World!")
return apache.OK

Then I am getting the following error

Traceback (most recent call last):

File "D:\softwares\Python25\Lib\site-packages\mod_python
\importer.py", line 1537, in HandlerDispatch
default=default_handler, arg=req, silent=hlist.silent)

File "D:\softwares\Python25\Lib\site-packages\mod_python
\importer.py", line 1202, in _process_target
module = import_module(module_name, path=path)

File "D:\softwares\Python25\Lib\site-packages\mod_python
\importer.py", line 304, in import_module
return __import__(module_name, {}, {}, ['*'])

ImportError: No module named mptest

I am using Apache 2.2.4, python 2.5 and mod_python-3.3.1.win32-py2.5-
Apache2.2.

I am able to execute python scripts by configuring apache to execute
the cgi scripts. But I want to execute it using mod_python as it is
faster compared to cgi mode. Someone please help me on this issue.
1) In the mod_python tutorial it says:

-------
2.4 Testing

....
....

2. Add the following Apache directives, which can appear in either the
main server configuration file, or .htaccess. If you are going to be
using the .htaccess file, you will not need the <Directorytag below
(the directory then becomes the one in which the .htaccess file is
located), ***and you will need to make sure the AllowOverride
directive applicable to this directory has at least FileInfo
specified. (The default is None, which will not work.)****

<Directory /some/directory/htdocs/test>
AddHandler mod_python .py
PythonHandler mptest
PythonDebug On
</Directory>
--------

Note the last sentence in the directions above. I explain what is
needed for that part at the link in (2) below. Also note the
directory listed in the opening <Directorytag:

/some/directory/htdocs/test

That specifies a sub directory of htdocs. That's because the htdocs
directory has its own <Directorytag in httpd.conf, which specifies
the things you can to with it. If you look around in httpd.conf, you
will see the <Directorytag that applies to htdocs. Mine looks like
this:

<Directory "/Library/Apache2/htdocs">
....
....
<Directory>

The mod_python Testing tutorial wants you to create your own sub
directory in htdocs, so that you can specify your own rules for that
directory. You're probably getting errors because you have two
<Directorytags in your httpd.conf file for the htdocs directory, and
the second tag is overwriting the first one.
2) You can see the latter part of this thread for what I did to get
mptest.py to work:

http://groups.google.com/group/comp....2645ec03370fb2
3) I put any <Directorytags I added to httpd.conf below the first
<Directorytag in http.conf, which is this one:

<Directory "/Library/Apache2/htdocs">

so that the ones lower down in the file will override the previous
tags if there is a conflict.

Aug 13 '07 #3
On Aug 13, 9:44 pm, 7stud <bbxx789_0...@yahoo.comwrote:
On Aug 13, 5:16 am, joe jacob <joejaco...@gmail.comwrote:
I configured apache to execute python scripts using mod_python
handler. I followed below mentioned steps to configure apache.
1. In http.conf I added
<Directory "D:/softwares/Apache2.2/htdocs">
AddHandler mod_python .py
PythonHandler mptest
PythonDebug On
</Directory>
2. Then I added the line "LoadModule python_module modules/
mod_python.so" to http.conf.
Then I tried execute the python script mentioned below from browser.
from mod_python import apache
def handler(req):
req.content_type = 'text/plain'
req.write("Hello World!")
return apache.OK
Then I am getting the following error
Traceback (most recent call last):
File "D:\softwares\Python25\Lib\site-packages\mod_python
\importer.py", line 1537, in HandlerDispatch
default=default_handler, arg=req, silent=hlist.silent)
File "D:\softwares\Python25\Lib\site-packages\mod_python
\importer.py", line 1202, in _process_target
module = import_module(module_name, path=path)
File "D:\softwares\Python25\Lib\site-packages\mod_python
\importer.py", line 304, in import_module
return __import__(module_name, {}, {}, ['*'])
ImportError: No module named mptest
I am using Apache 2.2.4, python 2.5 and mod_python-3.3.1.win32-py2.5-
Apache2.2.
I am able to execute python scripts by configuring apache to execute
the cgi scripts. But I want to execute it using mod_python as it is
faster compared to cgi mode. Someone please help me on this issue.

1) In the mod_python tutorial it says:

-------
2.4 Testing

...
...

2. Add the following Apache directives, which can appear in either the
main server configuration file, or .htaccess. If you are going to be
using the .htaccess file, you will not need the <Directorytag below
(the directory then becomes the one in which the .htaccess file is
located), ***and you will need to make sure the AllowOverride
directive applicable to this directory has at least FileInfo
specified. (The default is None, which will not work.)****

<Directory /some/directory/htdocs/test>
AddHandler mod_python .py
PythonHandler mptest
PythonDebug On
</Directory>
--------

Note the last sentence in the directions above. I explain what is
needed for that part at the link in (2) below. Also note the
directory listed in the opening <Directorytag:

/some/directory/htdocs/test

That specifies a sub directory of htdocs. That's because the htdocs
directory has its own <Directorytag in httpd.conf, which specifies
the things you can to with it. If you look around in httpd.conf, you
will see the <Directorytag that applies to htdocs. Mine looks like
this:

<Directory "/Library/Apache2/htdocs">
...
...
<Directory>

The mod_python Testing tutorial wants you to create your own sub
directory in htdocs, so that you can specify your own rules for that
directory. You're probably getting errors because you have two
<Directorytags in your httpd.conf file for the htdocs directory, and
the second tag is overwriting the first one.

2) You can see the latter part of this thread for what I did to get
mptest.py to work:

http://groups.google.com/group/comp....thread/thread/...

3) I put any <Directorytags I added to httpd.conf below the first
<Directorytag in http.conf, which is this one:

<Directory "/Library/Apache2/htdocs">

so that the ones lower down in the file will override the previous
tags if there is a conflict.
Thank you very much I got it working.

Aug 14 '07 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
1996
by: Rolfe | last post by:
Has anyone had success getting mod_python to run on Apache on Win2K? I'm writing up instructions on how to do this and need your help. When completed, the instructions at the mod_python website and...
1
2853
by: Rolfe | last post by:
Hi, I struggled, and got mod_python running on Apache/Win2k. Follow these instructions verbatim and you shouldn't have any trouble. These instructions are based on...
6
3243
by: Piet | last post by:
Hi there, I cannot install mod_python v3.1.3 on either Win2k/ActivePython 2.3.2 or WinMe/Python 2.3.4. When I run the Windows installer, I get the following error message: Traceback (most recent...
2
1329
by: Ian Pellew | last post by:
Hi all; Am I correct in thinking that Mod_Python simply executes Python scripts from the server side using an internal Apache python engine? Can a web page have Python script embedded in it...
2
2903
by: digidalmation | last post by:
Hello all. I've been trying to get my linux server to run mod_python. It's a Mandrake 10 linux box, and apache/mod_python are installed from rpms. apache2-mod_python-2.0.48_3.1.3-1mdk...
1
2753
by: neha | last post by:
hi, i m trying to integrate python with apache on linux.For this i m using mod_python. I dont see any problem with the versions of python,apache and mod_python i m using. the versions i m using...
5
5505
by: msuemnig | last post by:
I've create an Ubuntu Linux box, which comes pre-installed with Python (I've added the libapache2-mod-python throught the app manager). I've created .cgi and .py simple programs in the www root...
5
3089
by: m.banaouas | last post by:
Hi, bonjour, witch versions are suitable to use for apache & mod_python ? Can i install and use "Apache 2.2.3" & "mod_python 3.2.10" (most recent versions) without facing any known major...
2
3196
by: m.banaouas | last post by:
I installed Apache 2.2.3 and mod_python 3.2.10 on WinXP plateform I configured mod_python via httpd.conf: LoadModule python_module modules/mod_python.so but my script folder configuration...
0
7091
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
7342
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
1
6998
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
7464
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
1
5018
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...
0
3171
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The...
0
3162
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
741
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
0
391
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.