Django tabanlı uygulamalarla çalışmaktan ve bir django projesini, django dokümanlar üzerinde verilen varsayılana neredeyse benzer olan aşağıdaki yapılandırmaları kullanarak dağıtmaya çalışmak için yeni biriyim.Django dağıtımı: apache/mod_wsgi tarafından kullanılacak doğru python yapılandırılması
apache2.conf
# WSGI Configuration
WSGIDaemonProcess demo python-path=/home/inian/Documents/demo
WSGIProcessGroup demo
WSGIScriptAlias//home/inian/Documents/demo/demo/wsgi.py process-group=demo
<Directory /home/inian/Documents/demo/demo>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
# Serving static files
Alias /static/ /home/inian/Documents/demo/static/
<Directory /home/inian/Documents/demo/static>
Require all granted
</Directory>
ben apache sunucusunu başlattığınızda, normalde başlar fakat feryat olarak gösterilen piton sürümü uyuşmazlığı projemi yüklenmesi için çalışma zamanı hatası veriyor.
/var/log/apache2/error.log
[Sun Apr 10 20:38:16.165536 2016] [wsgi:warn] [pid 22959] mod_wsgi: Compiled for Python/2.7.11.
[Sun Apr 10 20:38:16.165551 2016] [wsgi:warn] [pid 22959] mod_wsgi: Runtime using Python/2.7.10.
[Sun Apr 10 20:38:16.166787 2016] [mpm_prefork:notice] [pid 22959] AH00163: Apache/2.4.7 (Ubuntu) OpenSSL/1.0.1f mod_wsgi/4.5.1 Python/2.7.10 configured -- resuming normal operations
benim uygulama sürümü 2.7.11
olduğu konumda /usr/local
yüklü python kullanmak istiyorum ve bu derlemek ve yüklemek için kullanılan biridir mod_wsgi
, ancak sadece güvende olmak için 'u da kontrol ettim, bu da çıktıyı Python 2.7.6
olarak veriyor. Bu iki konuya kullanımını getiriyor:
nasıl (sunucuda her şey için varsayılan olarak kullanıyoruz) yükleme konumuna
/usr/local/bin/python
gelen Python 2.7.11 kullanmak için apache işaret edebilir.Hiç yükleme veya 2.7.10 ile herhangi bir şey yapmak hatırlamıyorum, bu yüzden nasıl ve nereden apache tarafından yüklenip kullanıldığını bilmiyorum. Birisi bana bu konuda rehberlik edebilirse, o zaman da harika olacak.
Bunlar sadece uyarılar, ve iki sürüm çok yakın olarak, onları göz ardı edebilirler. – Zorgmorduk
Uh hayır bunlar sadece uyarı değil, bunlar daha sonraki çalışma zamanı hatalarının sebebidir. 2.7.10 sürümünün nereden geldiğini bilmediğim için, bu sürüm 2.7.11 yüklememde dikkat ettiğim 'pyUnicodeUCS4_AsEncodedString' düzgün bir şekilde derlenmedi. Yani evet, '/ usr/local' konumunda – bawejakunal
konumuna kurduğum doğru python sürümünü kullanmam gerekiyor: [wsgi: warn]. Yani gerçekten onunla yaşayabilirsin. Tabii ki, bu iki sürümde farklı olan bir şey kullanırsanız, bir sorun yaşayabileceğiniz konusunda uyarıda bulunmanız gerekir. Şans düşük. – Zorgmorduk