在我的Django项目中,我需要添加社交身份验证。我正在关注this教程。
其中一个步骤是Set up a test Url configuration on local machine。也就是说,假设我的测试url是: myname.example.com。然后,myname.example.com应该加载到http://127.0.0.1:8000/ (在Django Localhost Server上)
我在/etc/hosts中添加了127.0.0.1 myname.example.com,但这不起作用。
在Ubuntu 14中应该如何做到这一点?
发布于 2016-06-29 01:33:52
hosts文件只负责主机名解析。它不会对正在使用的端口执行任何操作。这样你的网站就可以在http://myname.example.com:8000上使用了
让您的站点在http://myname.example.com下运行的可能方法
运行服务器
为了使用“特权”端口,您的进程需要以root用户身份运行。使用virtualenv时,您还必须指定指向相应python二进制文件的路径:
sudo /your/virtualenv/bin/python manage.py runserver 0.0.0.0:80nginx
安装nginx (或apache)并设置最小反向代理:
# nginx config
server {
listen 80;
server_name myname.example.com;
location / {
proxy_pass http://127.0.0.1:8080;
}
}ssh
通过ssh在本地使用端口转发。同样,您需要root权限才能绑定1024以下的端口。以下命令将连接到127.0.0.1上的端口80转发到127.0.0.1上的端口8000
sudo ssh -L 80:127.0.0.1:8000 <your_user>@127.0.0.1发布于 2016-06-29 01:24:51
我不太了解Django项目,但是关于用你选择的域名建立一个到本地主机IP的测试URL连接,你可以通过使用BIND软件,配置你的区域和域名作为myname.example.com,或者如果你已经有一个,创建你的本地区域文件,包括你的本地Ip机器号,这样你就可以“nslookup127.0.0.1”和你的域名,如果你查找IP,应该解析为相同的名称,反之亦然(也就是nslookup myname.example.com应该解析为127.0.0.1)。更简单的方法是打开你的主机hile (etc/ host /在你的127IP地址旁边添加myname.example.com ),然后转到resolve.conf文件,也放入相同的参数。第二个阶段是使用apache作为您的web目录,并使用相同的信息配置您的站点。然后在您选择的端口8000上,将URL链接的信息放在您的Var/www目录中,并将其绑定到端口8000。这样,当您使用127IP或myname.example.com打开浏览器时,您应该会看到消息it works!让您知道您的域是可用的,一旦您将8000附加到URL链接,您应该会看到您复制的信息,并在指定的端口绑定到您的域。这是我想不到的,所以如果你选择遵循规范来满足你的系统发行版和配置,你将需要参考资料。但这几乎就是设置URL链接的基本思想。
https://stackoverflow.com/questions/38082318
复制相似问题