单页应用程序Nginx Django Python和端口转发



我想在生产环境中运行我的单页应用程序。 由于出于 SEO 原因,我使用 rest API 和 ajax 调用将内容从后端传递到前端,因此我需要为爬虫机器人提供我的内容的无 JavaScript 版本。 我有一个没有 javascript 版本的内容的 url,但由于网络服务器在端口 8000 上运行以访问没有 javascript 文件,我需要导航到 mydomain.com:8000/nojs。

我的应用 url 类似于以下代码:

urlpatterns = [
url(r'^nojs/$', views.nojs),
url(r'^blog/all/$', views.allTitles),
url(r'^post/(?P<id>[d+]+)/(?P<title>[w+]+)/$', views.viewArticle)
]

而我的nojs方法只是一个你好消息:

def nojs(request):
return HttpResponse("Hello")

我猜我需要在我的 Nginx 配置中创建一些更改才能访问 nojs 方法,而无需在我的域名后使用 8000 端口。 如何在不使用 8000 端口的情况下导航到 mydomain.com/nojs 并获取 hello 消息?

要访问nojs文件夹中的文件,我需要将以下内容添加到域的Nginx配置文件中,这将流量从端口8000转发到端口80。

location /nojs {
proxy_pass http://127.0.0.1:8000/nojs/; #or whatever port you are using
proxy_set_header Host $host;

}

最新更新