Hoi,
Dit is een grensgeval tussen programmeren en de server rubriek, maar goed:
Ik probeer een web-applicatie te maken die indien mogelijk gebruik maakt van mod_wsgi. Hij moet dus detecteren of mod_wsgi beschikbaar is, zo niet dan moet het script uitgevoerd worden als een gewone cgi script.
Ik heb mod_wsgi als volgt geinstalleerd (volgens
http://ubuntuforums.org/showthread.php?t=833766):
sudo apt-get install libapache2-mod-wsgi
sudo a2enmod mod-wsgi #geeft een foutmelding: ERROR: Module mod-wsgi does not exist!
sudo /etc/init.d/apache2 restart
Vervolgens in de sites-available/default:
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews ExecCGI
AddHandler cgi-script .cgi
AddHandler wsgi-script .wsgi
AllowOverride None
Order allow,deny
allow from all
</Directory>
dus alle .wsgi bestanden worden herkend als wsgi. Tijdens de installatie krijg ik wel een foutmelding bij het a2enmod commando. Als ik nu een simpel wsgi-script schrijf, dan wordt dit keurig uitgevoerd, dus blijkbaar werkt het geheel goed ondanks de melding.
Het commando apache2ctl -t -D DUMP_MODULES geeft ook keurig 'wsgi_module (shared)' weer, dus dat zit ook goed.
Nu in python wil ik testen op de aanwezigheid van mod_wsgi:
try:
from mod_wsgi import version
ex='.wsgi'
except:
ex='.py'
Dit geeft helaas altijd een foutmelding, waardoor mijn wsgi-scripts nooit worden gebruikt. Import mod_wsgi geeft ook steeds een foutmelding. Toch is dit volgens de mod_wsgi website een goede methode voor de test.
Weet iemand waarom dit niet werkt en hoe kan ik toch on-the-fly testen of mod_wsgi bestaat?