python - template - ¿Qué servidor web usar con Django?(actualizado para su uso en 2011)
ifequal django (1)
Estoy haciendo esta pregunta porque soy un principiante y he leído casi el 90% de los artículos que hablan sobre Django, pero el problema es: Django fue creado y tuvo problemas para implementarlo, es python, y python no es PHP Al leer los tutoriales de Django, un principiante tiene un gran problema, porque puede encontrar un tutorial "obsoleto", por ejemplo, si toma un tutorial realizado en 2008, verá que hablan de la siguiente manera:
para implementar django, use apache, y no olvide usar otro servidor para archivos estáticos, por ejemplo, nginx como proxy inverso!
Pero ahora, encontré algunos artículos que dicen que hacer un segundo servidor es inútil porque en el pasado, Django se servía usando mod_python, ¡que usa muchos recursos! Ésta es mi pregunta:
- ¡Cuál es el mejor para VPS, Apache o Nginx, usando la última versión, por supuesto! Por favor, no digas: usa lighty o cherokee ...
- Si, por ejemplo, la respuesta fue: usar Ngnix, entonces, ¿es mejor usar uno o dos servidores, como en el pasado era mejor hacer dos servidores web?
- Cuando he comprobado mi cerebro, he descubierto que solo hay un poco de espacio libre disponible, por lo que no quiero aprender otra cosa, entonces, ¿crees que una solución 100% pitónica estará bien? ¡CherryPy es una solución perfecta, es decir, CherryPy + Django y basta! no Apache, no Nginx, no hay más aprendizaje que el lenguaje python!
- Por lo que he leído, Django y los servidores asíncronos no son "buenos amigos", ¿así que realmente obtiene una buena opción para usar Nginx?
Actualizado: agregado (4) sobre Django y asíncrono.
1 - ¡cuál es el mejor para VPS, Apache o Nginx, usando la última versión, por supuesto! por favor no digas: usa lighty o cherokee ...
Cualquiera funcionará bien.
2: si, por ejemplo, la respuesta fue: usar ngnix, entonces, ¿es mejor usar uno o dos servidores, como en el pasado era mejor hacer dos servidores web?
El punto clave que se está haciendo es que Django / Python no debe servir sus recursos estáticos. "Dos servidores" podrían ser servidores físicos, instancias o servidores virtuales diferentes. Este es un ejemplo de la configuración de nginx para servir archivos estáticos directamente y luego pasar solicitudes dinámicas a Python:
Desde https://code.djangoproject.com/wiki/DjangoAndNginx :
server {
listen 80;
server_name localhost;
location /site_media {
root /media/; # Notice this is the /media folder that we create above
}
location ~* ^.+/.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js|mov) {
access_log off;
expires 30d;
}
location / {
# host and port to fastcgi server
fastcgi_pass 127.0.0.1:8080;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_pass_header Authorization;
fastcgi_intercept_errors off;
}
}
3 - cuando revisé mi cerebro, descubrí que solo hay pocos espacios disponibles disponibles, así que no quiero aprender otra cosa, ¿entonces crees que una solución 100% pitónica estará bien? ¡CherryPy es una solución perfecta, es decir, CherryPy + Django y basta! no Apache, no Nginx, no hay más aprendizaje que el lenguaje python!
OMI, configurar Apache o nginx es bastante simple y hay muchos recursos disponibles. No necesitas aprender mucho sobre ellos para configurar algo simple.