2016-03-01 60 views
1

我已經使用generator-angular-fullstack創建了一個angularjs應用程序。除了一個以外,事情都很好。我試圖添加sitemap.xml到這個應用程序,以便它可以被搜索引擎抓取工具編入索引。使用here提到的方法,我在我的客戶端/目錄中創建了一個sitemap.xml。當我使用grunt serve開始我的應用程序時,它正在開發環境中正常工作,但在Production上,當我使用grunt serve:dist啓動應用程序時,它不工作。這是我的robots.txt https://crowdvirality.com/robots.txt每當我嘗試訪問https://www.crowdvirality.com/sitemap-secure.xmlhttps://www.crowdvirality.com/sitemap.xml時,它會將我重定向到https://www.crowdvirality.com/error頁面。如何在angularjs應用程序中添加sitemap.xml

我app.js包含以下規則:在本地開發環境

.config(function ($stateProvider, $urlRouterProvider, $locationProvider, $httpProvider, cfpLoadingBarProvider) { 
    $urlRouterProvider 
     .otherwise('/error'); 
    }) 

這一套了同樣的工作,但失敗的刺。任何人都可以給我一些指針,我做錯了嗎?

謝謝

回答

0

確定它的一個共同問題,我認爲。

你基本上是試圖服務一個文件,而不是一個路線。

我這樣做有一天用PDF

你必須建立在你的路線提供文件擴展名的路徑。

例如...

.state('sitemap.xml', {url: '/sitemap.xml'}) 

的。在該州的名字是非常重要的,這讓角知道你是服務於文件,而不是一個路線

ATM,因爲你沒有這個狀態,你在你的聲明,否則回落

+0

一個快速疑問,如果是這樣的情況下,它是如何正確地提供robots.txt?添加這個狀態與sitemap.xml的實際位置無關,對吧? –

+0

我相信指向文檔位置的網址,狀態名稱就像往常一樣在瀏覽器網址中顯示。不知道爲什麼robots.txt工作正常。 – danday74

+0

我嘗試了你的方法,但仍然沒有工作:( –

相關問題