Apache Windows httpd.exe: mod_wsgi.pyd into server: The specified module could not be found. .

2,081 views
Skip to first unread message

Ian Shiland

unread,
Jul 21, 2017, 6:20:21 PM7/21/17
to modwsgi

Apache 2.4.23-win32
Windows Server 2012r2
python 2.7.9 32bit
mod_wsgi-4.5.15

Command to get mod_wsgi path:
C:\>mod_wsgi-express module-config
LoadModule wsgi_module "C:/Python27/lib/site-packages/mod_wsgi-4.5.15-py2.7-win32.egg/mod_wsgi/server/mod_wsgiNone"
WSGIPythonHome "C:/Python27"


In my http.conf file:
LoadModule wsgi_module "C:/Python27/lib/site-packages/mod_wsgi-4.5.15-py2.7-win32.egg/mod_wsgi/server/mod_wsgi.pyd"
WSGIPythonHome "C:/Python27"


Windows Error when I start the Apache service:

The Apache service named  reported the following error:
>>> httpd.exe: Syntax error on line 179 of C:/Apache24/conf/httpd.conf: Cannot load C:/Python27/lib/site-packages/mod_wsgi-4.5.15-py2.7-win32.egg/mod_wsgi/server/mod_wsgi.pyd into server: The specified module could not be found.     .
mod_wsgi.pyd does exist in that directory though...


Any help is much appreciated. 

Graham Dumpleton

unread,
Jul 21, 2017, 6:23:02 PM7/21/17
to mod...@googlegroups.com
There is a known issue when using Python 2.7 on Windows that 'module-config' generates the wrong extension for the file. Unfortunately each time it has come up, those affected by the issue haven't help with working out the code change to fix the issue in the mod_wsgi-express.

Can you start out by telling what files are in the directory:

    C:/Python27/lib/site-packages/mod_wsgi-4.5.15-py2.7-win32.egg/mod_wsgi/server

and it the directory even exists with that exact path?

Thanks.

Graham

--
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 https://groups.google.com/group/modwsgi.
For more options, visit https://groups.google.com/d/optout.

Sheng

unread,
Aug 28, 2017, 8:22:44 PM8/28/17
to modwsgi
Hi Graham,
Has this problem been solved? I have the same problem, 
Apache2.4.16 Windows 7 (and Windows Server 2010).
Python 2.7.11
mod_wsgi 4.5.17 ap24vc9-cp27-win-amd64. (VC9 redistribution is there).

Tried LoadModule from <python_root>/Lib/site-packages/mod_wsgi/server/mod_wsgi.pyd, didn't work. Then copied the mod_wsgi.pyd file to apache modules directory, didn't work either. Error message: The specified module could not be found. But the file is there for sure.

Please help. Thanks a lot!

Graham Dumpleton

unread,
Aug 28, 2017, 8:25:19 PM8/28/17
to mod...@googlegroups.com
On 29 Aug 2017, at 10:20 am, Sheng <sheng....@gmail.com> wrote:

Hi Graham,
Has this problem been solved? I have the same problem, 
Apache2.4.16 Windows 7 (and Windows Server 2010).
Python 2.7.11
mod_wsgi 4.5.17 ap24vc9-cp27-win-amd64. (VC9 redistribution is there).

Tried LoadModule from <python_root>/Lib/site-packages/mod_wsgi/server/mod_wsgi.pyd, didn't work. Then copied the mod_wsgi.pyd file to apache modules directory, didn't work either. Error message: The specified module could not be found. But the file is there for sure.

I still have not been able to get anyone to help me fix the script.

If the pyd file still fails, there can be a couple of other reasons.

The first is that Apache is run as a service, as a different user, and the Python installation was not installed for all users and only yourself.

Have also heard that can be caused by missing runtime libraries for your compiler. My memory on that one is a big foggy so don't remember the details.

Graham

Please help. Thanks a lot!


On Friday, July 21, 2017 at 5:23:02 PM UTC-5, Graham Dumpleton wrote:
There is a known issue when using Python 2.7 on Windows that 'module-config' generates the wrong extension for the file. Unfortunately each time it has come up, those affected by the issue haven't help with working out the code change to fix the issue in the mod_wsgi-express.

Can you start out by telling what files are in the directory:

    C:/Python27/lib/site-packages/mod_wsgi-4.5.15-py2.7-win32.egg/mod_wsgi/server

and it the directory even exists with that exact path?

Thanks.

Graham

On 22 Jul 2017, at 5:38 AM, Ian Shiland <ishi...@gmail.com> wrote:


Apache 2.4.23-win32
Windows Server 2012r2
python 2.7.9 32bit
mod_wsgi-4.5.15

Command to get mod_wsgi path:
C:\>mod_wsgi-express module-config
LoadModule wsgi_module "C:/Python27/lib/site-packages/mod_wsgi-4.5.15-py2.7-win32.egg/mod_wsgi/server/mod_wsgiNone"
WSGIPythonHome "C:/Python27"


In my http.conf file:
LoadModule wsgi_module "C:/Python27/lib/site-packages/mod_wsgi-4.5.15-py2.7-win32.egg/mod_wsgi/server/mod_wsgi.pyd"
WSGIPythonHome "C:/Python27"


Windows Error when I start the Apache service:

The Apache service named  reported the following error:
>>> httpd.exe: Syntax error on line 179 of C:/Apache24/conf/httpd.conf: Cannot load C:/Python27/lib/site-packages/mod_wsgi-4.5.15-py2.7-win32.egg/mod_wsgi/server/mod_wsgi.pyd into server: The specified modulecould not be found.     .
mod_wsgi.pyd does exist in that directory though...


Any help is much appreciated. 

-- 
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 https://groups.google.com/group/modwsgi.
For more options, visit https://groups.google.com/d/optout.

Sheng

unread,
Aug 28, 2017, 8:40:35 PM8/28/17
to modwsgi
Thanks Graham for the quick reply.
Yes, Apache is run as service and Python is installed for all users. All of them are of x64 bit, i forgot to mention in the first message. Here is more precise in package details:
Apache 2.4.16-vc11 on Windows 7 ( and Windows Server 2010 ).
Python 2.7.10 64bit.
mod_wsgi 4.5.17+ap24vc9-cp27-cp27m-win_amd64.whl (pip installed).

The only difference is that Apache is of vc11 while mod_wsgi is vc9, but both redistribution packages are installed on the machine.
If you got chance to take a look and fix the problem I'd appreciate it. It becomes a show stopper for me at the moment.
Thanks

Sheng

Graham Dumpleton

unread,
Aug 28, 2017, 8:45:08 PM8/28/17
to mod...@googlegroups.com
On 29 Aug 2017, at 10:40 am, Sheng <sheng....@gmail.com> wrote:

Thanks Graham for the quick reply.
Yes, Apache is run as service and Python is installed for all users. All of them are of x64 bit, i forgot to mention in the first message. Here is more precise in package details:
Apache 2.4.16-vc11 on Windows 7 ( and Windows Server 2010 ).
Python 2.7.10 64bit.
mod_wsgi 4.5.17+ap24vc9-cp27-cp27m-win_amd64.whl (pip installed).

The only difference is that Apache is of vc11 while mod_wsgi is vc9, but both redistribution packages are installed on the machine.

This is an immediate problem. There is no guarantee that mixing VC9 and VC11 binaries will work. This in itself could be the source of the problem. Unfortunately it is really hard to find an Apache 2.4 distribution that has been compiled for VC9.

Is there a specific reason you are stuck with Python 2.7?

I don't know Windows, but if you know of a tool which you can run on the mod_wsgi.pyd file to work out what dependencies it has on DLLs and see whether they all exist.

The problem is that error message is misleading as from experience it can mean a DLL is not being found when the mod_wsgi shared object is being loaded, and not that mod_wsgi file is missing or not being seen.

Graham

Sheng

unread,
Aug 28, 2017, 9:12:05 PM8/28/17
to modwsgi
Python 2.7 is what other packages require. What would you suggest, Python 3.x?
Definitely not the problem of file missing or typo in file path, yea, the error message is misleading. It must be something within the .pyd file to prevent it from being loaded. You can't have mod-wsgi compiled under vc11 can you?

Graham Dumpleton

unread,
Aug 28, 2017, 9:18:04 PM8/28/17
to mod...@googlegroups.com
The problem is that it is Python that requires VC9 and due to the heavy use of Python C API in mod_wsgi, it also has to be VC9.

The API between mod_wsgi and Apache is quite narrow and as far as data types passed across the API boundary it is possible that no system C library data types are passed which are different between VC9 and VC11. So some people have been able to mix VC versions and claim they don't have issues, but then others can't even get it to start up.

So I don't have a good answer.

My only thought was to try a DLL walker on module to see if there is a DLL missing that it wants.

Graham

Sheng

unread,
Aug 28, 2017, 9:33:16 PM8/28/17
to modwsgi
Ok, I'll give a try, Thank you, Graham.

Rakibul Hasan

unread,
Jul 17, 2018, 6:30:24 PM7/17/18
to modwsgi
Do you find any solution ?

Graham Dumpleton

unread,
Jul 17, 2018, 6:31:53 PM7/17/18
to mod...@googlegroups.com
Solution to what in particular?

You are better off restating your specific issue as a new discussion.

There are so many things that can go wrong when using Windows, there is no guarantee that your problem might be the same.

Graham
Reply all
Reply to author
Forward
0 new messages