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

Single page applications Nginx Django Python and port forwarding

我想 运行 我的单页应用程序投入生产。 由于出于 SEO 原因,我正在使用 rest API 和 ajax 调用将内容从后端传送到前端,因此我需要没有 javascript 版本的内容可用于爬虫机器人。 我有一个 url 没有 javascript 版本的内容,但是因为网络服务器在端口 8000 上 运行ning 访问没有 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 端口。 如何导航到 mydomain.com/nojs 并在不使用 8000 端口的情况下获取问候消息?

要访问 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;

}