我已经将Nginx设置为fastcgi_pass到Django并且不想从“/”服务Django。我想在URL前添加类似“/ django/sample /”的内容,但是在Nginx传递给Django之前,Nginx会移除该前缀 - 这样Django的内部就会像“/”一样提供服务。Nginx + FastCGI + Django在传递给Django之前删除URL前缀
我试着更新Django应用程序包含在URL中的前缀路由,这样的:
urlpatterns = patterns('',
'^', include(base_urlpatterns), # iff you wish to maintain the un-prefixed URL's too
'^your_prefix/', include(base_urlpatterns),
)
而且我现在做一个fastcgi_pass像这样:
#django sample
location /django/sample {
include fastcgi_params;
fastcgi_pass 127.0.0.1:8024;
}
但这ISN因为我的django应用程序中的任何URL都没有优雅的解决方案,所以必须确保包含像“/ django/sample”这样的前缀。这也意味着当我在服务器上本地运行VS时,URL可能需要不同。
我构建了一些django应用程序,它们将从一台服务器上运行,并且不希望总是使用URL来做这些事情,并且记得更新Django中的所有URL。
我一直在谷歌搜索一段时间,试图找出如何用nginx做到这一点,但没有看到任何东西。
所以,我希望使用Nginx的以前被传递给Django的在要求删除“/ Django的/样本”。任何人之前做过?