问题
I'm serving a Django app behind IIS6 web server.
The test server runs perfectly, but when running behind the web server a module failes to import I get this error:
Error loading pyodbc module: DLL load failed: The specified module could not be found
Just for the record the module is pyodbc
The site is served though isapi by using isapi-wsgi
Any ideas? It would really make my day! :)
回答1:
This error is a PITA: it is often caused by missing symbols in dll (because a dependent dll was not found, etc...). You should check the .pyd with dependency walker, or look into the windows log which may log such errors depending on your configuration.
回答2:
I have recently been battling with setting up Django/Python on IIS 7 on Windows 2008 with MS SQL 2008. I bumped into the same problem as you did. I was using PyODBC-2.1.8. I compiled the modules from source. I used the mingw
compiler to compile them from source. Nothing worked.
I then downgraded to PyODBC-2.1.7. And it worked! I used the binary available from the site for the Python 2.6 distribution (that is the version of Python I am using).
I hope this may help.
回答3:
In my case I had installed pyodbc for 64-bits on a 32-bit OS. Both versions are available here.
I'm hoping I'm not the only one stupid enough to do this and this might help someone.
来源:https://stackoverflow.com/questions/4068861/python-import-error-dll-load-failed-python