2012-12-03 68 views
2

我有一個正常運行的生產OrchardCMS站點。OrchardCMS在遠程訪問時阻止匿名用戶

今天,我將所有文件從該站點複製到本地服務器,以便在部署之前將它用於分段和測試更改。我做的另一個小改動是將Orchard實例更改爲使用本地完整SQL實例而不是Sql CE。 (這也是我在未來幾天的生產中也會做的。)

遷移工作正常。我可以在端口2764(我分配的)上使用localhost加載Orchard實例,並且它完美地工作......完全和生產一樣。

我在我的路由器上設置端口轉發,以便在端口2764上連接時連接到此分段/測試服務器。(並且還在本地服務器上創建了入站規則)。

當我從遠程計算機訪問該端口上的站點時,它會加載內容但不會獲取任何文件(CSS,JS等)。所以我看到內容,但它是原始的未格式化的html。

我裝在小提琴手的頁面,它顯示了這樣的會話頭...

HTTP/1.1 302 Found 
Location: /Users/Account/AccessDenied?ReturnUrl=%2fThemes%2fBootstrap%2fStyles%2fbootstrap.min.css 
Server: Microsoft-IIS/7.5 
X-Powered-By: ASP.NET 
Date: Mon, 03 Dec 2012 04:38:01 GMT 
Content-Length: 205 

然後......

GET /Users/Account/AccessDenied?ReturnUrl=%2fThemes%2fBootstrap%2fStyles%2fbootstrap.min.css HTTP/1.1 
HTTP/1.1 200 OK 
Cache-Control: no-cache, no-store, must-revalidate 
Pragma: no-cache 
Content-Type: text/html; charset=utf-8 
Content-Encoding: gzip 
Expires: -1 
Vary: Accept-Encoding 
Server: Microsoft-IIS/7.5 
X-AspNetMvc-Version: 3.0 
X-AspNet-Version: 4.0.30319 
X-Powered-By: ASP.NET 
Date: Mon, 03 Dec 2012 04:38:01 GMT 
Content-Length: 2179 

如果我登錄網站(我仍然可以看到登錄按鈕和後續登錄頁面)我已成功登錄,然後網站正常執行完美...直到我再次登出。

因此,底線......匿名用戶可以看到內容,但OrchardCMS(或IIS ......或兩者?)不會獲取它看起來的任何文件。

關於此事的任何想法?謝謝你的幫助。

Seth

+0

我首先看的是web.config。 Orchard.Web中的一個和非加載文件所在目錄中的一個。 –

+0

它看起來像腳本,樣式和/或其他正在加載的靜態文件的文件夾中的web.config文件缺失或無效。 –

+0

你能告訴我他們應該以何種方式失效?哪些條目將允許這些項目加載。 –

回答

1

事實證明,這是一個直接的NTFS權限的東西。匿名用戶正在使用我沒有給予任何權限的IUSR身份。我改變了使用APP POOL身份,一切都很好。我想我也可以給予IUSR的讀取權限。