我是django初学者。
我尝试使用apache2(2.4.7)从本地服务器部署我的django(1.10)站点 港口开通了。
管理页面正在正常打开,但所有其他视图都没有打开。
URLS.PY
from django.conf.urls import url,include
from django.contrib import admin
from django.views.generic import RedirectView
from django.conf import settings
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^treedump/',include('treedump.urls')),
url(r'^$', RedirectView.as_view(url='/treedump/', permanent=True)),
url(r'^accounts/', include('django.contrib.auth.urls')),
]
TREEDUMP.URLS
from django.conf.urls import url
from . import views
urlpatterns=[
url(r'^$',views.index,name='index'),
url(r'printx$',views.printx,name = 'printx'),
url(r'download$',views.download,name = 'download'),
]
。APCHE中的文件
<VirtualHost *:80>
ServerName *********
DocumentRoot /var/www/html/
Alias /static /data1/ekmmsc/webapp/ekmmsc/static
WSGIDaemonProcess ekmmsc python-path=/data1/ekmmsc/webapp/ekmmsc python- home=/data1/ekmmsc/webapp/ekmmsc/ekmmscenv
WSGIProcessGroup ekmmsc
WSGIScriptAlias /ekmmsc /data1/ekmmsc/webapp/ekmmsc/ekmmsc/wsgi.py
# Other directives here ...
<Directory "/var/www/html/">
allow from all
order allow,deny
AllowOverride All
AddType text/css .css
AddType text/javascript .js
</Directory>
<Directory "/data1/ekmmsc/webapp/ekmmsc/static">
Require all granted
</Directory>
<Directory "/data1/ekmmsc/webapp/ekmmsc/ekmmsc">
<Files wsgi.py>
Require all granted
</Files>
</Directory>
</VirtualHost>
输出
未找到
在此服务器上找不到请求的URL / treedump /。
任何帮助将不胜感激,我已经工作了近2天。 请帮忙。
答案 0 :(得分:0)
您应该在视图中使用pattern_name
而不是url
。这将使Django按名称查找URL,而不是使用硬编码值,因此它将考虑脚本前缀。
RedirectView.as_view(pattern_name='index', permanent=True)),