2017-09-04 1 views
1

私はサイトマップを生成するためにDjangoの設定を取得することに問題があります。Djangoのサイトマップ1.10.7

私は私が次いる

'django.contrib.sites', 
'django.contrib.sitemaps', 

を提出し、私のurls.pyファイルをイム私の設定を次のように追加しました:

from django.conf.urls import include, url 
from django.contrib import admin 
from cms.sitemaps import CMSSitemap 
from django.contrib.sitemaps.views import sitemap 
from ames import views 

admin.autodiscover() 

urlpatterns = [ 
    url(r'^admin/', include(admin.site.urls)), 
    url(r'^contact/', include('contact.urls')), 
    url(r'^news/', include('news.urls')), 
    url(r'^sitemap.xml$', sitemap, {'sitemaps': {'cmspages': CMSSitemap}}), 
    url(r'^$', views.home), 
    url(r'^', include('cms.urls')), 
] 

これらのファイルを展開した後、私が見ることができるはず/sitemap.xmlの.xmlファイルですが、404エラーが表示されます。

Page not found (404) 
    Request Method: GET 
     Request URL: http://xxxxxxxxxxxxxx.co.uk/sitemap.xml/ 
      Raised by: cms.views.details 
Using the URLconf defined in ames.urls, Django tried these URL patterns, in this order: 
    ^admin/ 
    ^contact/ 
    ^news/ 
    ^sitemap.xml$ 
    ^$ 
    ^^cms_wizard/ 
    ^^(?P<slug>[0-9A-Za-z-_.//]+)/$ [name='pages-details-by-slug'] 
    ^^$ [name='pages-root'] 
The current URL, /sitemap.xml/, didn't match any of these. 
You're seeing this error because you have DEBUG = True in your Django settings file. Change that to False, and Django will display a standard 404 page. 

ed。

答えて

1

は交換してみてください。

url(r'^sitemap.xml/', sitemap, {'sitemaps': {'cmspages': CMSSitemap}}), 
#    ^^^ 
+0

これは、この上のご支援のおかげであまり問題を解決しました。 –

+0

お手伝いをしてうれしいですが、回答を受け入れるのを忘れないでください –

0

url(r'^sitemap.xml$', sitemap, {'sitemaps': {'cmspages': CMSSitemap}}), 
#    ^^^ 

私はそれがキャッシュの問題だと思いました。お使いのブラウザで

  • オープン新しいシークレットウィンドウその後、shalsh (/)なしhttp://xxxxxxxxxxxxxx.co.uk/sitemap.xmlを開きます。

OR:

  • キャッシュをクリアしてからshalsh (/)せずにもう一度http://xxxxxxxxxxxxxx.co.uk/sitemap.xmlを再開。

Don't miss to change: sitemap.xml to sitemap\.xml like this source .

+0

この回答をお寄せいただきありがとうございます。終了スラッシュがなくても実際に.xmlファイルがレンダリングされます –

関連する問題