我正在运行一个在apache上运行wordpress灌注的DigitalOcean droplet。我正在尝试启动并运行NGINX和Django系统,但它不允许我使用端口80,因为它已经在使用中。
继承我运行Django的命令:
gunicorn --env DJANGO_SETTINGS_MODULE=projectName.settings --settings projectName.settings -b domainName.co.uk projectName.wsgi
下面是我的文件内容:/etc/nginx/sites-available/projectName
server {
server_name domainName.co.uk
access_log off;
location /static/ {
alias /opt/projectName/static/;
}
location / {
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"';
}
}
当我访问域名时,它只是向我显示默认Droplet的网站(WP滴注)。我猜测proxy_pass是数据应该去的地方,但事实并非如此。
请有人指出我正确的方向。三江源
修改的
我最终走了Apache路线,现在我已经在我的/etc/apache2/sites-enabled/000-default.conf
文件中找到了这个。 IP应该是127.0.0.1吗?
<VirtualHost *:*>
ProxyPreserveHost On
ProxyPass / http://127.0.0.1:8001/
ProxyPassReverse / http://127.0.0.1:8001/
ServerName domainName.co.uk
</VirtualHost>
答案 0 :(得分:1)
尝试同时运行nginx和Apache都没有意义。
在这种情况下,所有nginx都在充当gunicorn的反向代理。由于您已经为Wordpress站点运行Apache,因此您应该将其配置为处理Django站点;使用mod_proxy使其作为像nginx这样的反向代理工作,或者(可能最好)直接通过mod_wsgi处理Django网站。