Je veux installer deux projets Django différents dans mon VPS - il y a deux instances différentes de Gunicorn (deux virutalenvs différents). Le premier projet fonctionne parfaitement:Nginx et deux projets Django
Nginx pour le premier projet:
server {
server_name 95.85.34.87;
access_log off;
sendfile off;
location /static/ {
root Lynx/lynx/lynx_static_files/;
}
location/{
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods "GET,POST,OPTIONS";
add_header Access-Control-Allow-Headers Content-Type;
add_header Access-Control-Max-Age 86400;
proxy_pass http://127.0.0.1:8001;
proxy_set_header X-Forwarded-Host $server_name;
proxy_set_header X-Real-IP $remote_addr;
add_header P3P 'CP="ALL DSP COR PSAa PSDa OUR NOR ONL UNI COM NAV"';
}
}
gunicorn pour le premier projet:
gunicorn_django --bind localhost:8001
Nginx deuxième projet:
server {
server_name 95.85.34.87:8002;
access_log off;
sendfile off;
location /static/ {
root Komodo/komodo/komodo_static_files/;
}
location/{
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods "GET,POST,OPTIONS";
add_header Access-Control-Allow-Headers Content-Type;
add_header Access-Control-Max-Age 86400;
proxy_pass http://127.0.0.1:8002;
proxy_set_header X-Forwarded-Host $server_name;
proxy_set_header X-Real-IP $remote_addr;
add_header P3P 'CP="ALL DSP COR PSAa PSDa OUR NOR ONL UNI COM NAV"';
}
}
gunicorn pour la deuxième projet :
gunicorn_django --bind 95.85.34.87:8002
Problème: 95.85.34.87
montre mon premier projet avec des fichiers statiques (tout fonctionne bien), 95.85.34.87:8002
fonctionne également (gunicorn travaille), mais malheureusement Nginx ne sert pas les fichiers statiques pour ce deuxième projet pour une raison quelconque. Je pense que la raison derrière le problème est server_name
réglage, mais je ne suis pas sûr de savoir comment le configurer pour montrer ma statique pour le second projet.
Y a-t-il des erreurs? Est-ce que nginx a des permissions pour les fichiers statiques du 2ème projet? – elssar
Salut. Non, le fichier var/log/nginx/error.log ne montre aucune erreur. Les fichiers statiques ne s'affichent tout simplement pas, j'obtiens juste une erreur 404 en essayant d'accéder directement à un fichier .js. Et comment devrais-je vérifier si nginx a des permissions? – Eimantas
404 s'affichent dans 'access.log', tout comme les 403, ce que vous obtiendriez si nginx n'avait pas d'autorisations pour ces fichiers. Pourquoi ne voyez-vous pas les erreurs que votre inspecteur de navigateur donne à ces fichiers lorsque vous naviguez sur votre site? – elssar