2010-03-01 28 views
7

Tôi đang cố đặt giá trị loginPage trên trang Sitecore trong web.config. Tệp được tham chiếu trong loginPage là một mục Sitecore, vì vậy nó không phải là một trang psycical trên máy chủ. Không có vấn đề làm thế nào tôi tham chiếu đến nó, nó doesnot làm việc. Tôi nhận được một trong 2 lỗi (tùy thuộc vào cách tôi refrecen vào tập tin);Sitecore: loginPage?

Không thể tìm thấy tài nguyên. Lỗi khi thực hiện yêu cầu con cho/sitecore/đăng nhập. (Con đường nuôi ong cái tôi tham chiếu trong web.config)

Bất kỳ ý tưởng nào?

+1

Bạn có thể yêu cầu mặt hàng trực tiếp trong trình duyệt của bạn không đăng nhập? Đường dẫn mục của thuộc tính loginPage phải tương ứng với startPath của trang web của bạn. Tôi giả sử/sitecore/đăng nhập không liên quan đến gốc trang web của bạn? –

+0

Tôi vừa viết một bài đăng trên blog về điều này sẽ được xuất bản vào ngày mai vì vậy tôi sẽ đăng một liên kết Bạn có đang trong một giải pháp trang web duy nhất không? Cấu hình Node trang web của bạn là đường dẫn gốc là gì? Nếu Đường dẫn gốc =/Trang chủ Sau đó, đường dẫn Đăng nhập =/Đăng nhập sẽ là/Nội dung/Trang chủ/Đăng nhập trên cây. Bạn có thể xem trang trong trình chỉnh sửa không? Hoặc biên tập viên kinh nghiệm (Sitecore 8) Nếu bạn đã xuất bản Trang và mẫu? Bạn đã thử hiển thị một liên kết trỏ đến trang đăng nhập chưa? Điều đó có hiệu quả không? Hy vọng rằng sẽ giúp :) Charlie –

Trả lời

18

Nhận xét giải thích trong web.config cho biết thuộc tính 'loginPage' phải là The path to the login page to use. Must point to a physical file or a page in a site that does NOT require login. 'Yêu cầu đăng nhập' có nghĩa là bị từ chối Quyền đọc cho người dùng Ẩn danh. Người dùng ẩn danh này là người dùng trong miền được chỉ định cho trang web này.

Ví dụ, nếu bạn muốn có trang đăng nhập bộ cho 'website' trang web, bạn nên chắc chắn rằng extranet \ Anonymous đã đọc phép mục bạn chỉ định.

Hy vọng điều này sẽ hữu ích.

5

Thuộc tính loginPage thực sự là URL chứ không phải là đường dẫn mục. Bao gồm đường dẫn đầy đủ với tiện ích mở rộng - ví dụ: /MyAccount/Login.aspx

+0

Cố gắng mà quá - mà không có may mắn mặc dù :-( – kastru

+0

Lỗi bạn nhận được bằng cách sử dụng đó là gì? Tôi giả sử bạn có thể truy cập trang trực tiếp bằng cách sử dụng URL đó? – techphoria414

1

Thử nhấn url trong trình duyệt vào trang đăng nhập của bạn. Nếu bạn không thể đến được trang đó hoặc nếu nó ném một lỗi trong trình duyệt thì việc truy cập nó trong web.config sẽ không hoạt động.

Khi bạn có trang đăng nhập xuất hiện trong url trong trình duyệt bằng cách sử dụng đường dẫn yoursite/login hoặc bất kỳ đường dẫn cây sitecore nào bạn đã thiết lập. Sau đó thêm nó vào web.config.

Ngoài ra, trong cây nội dung, bạn có thể nhấp vào bảo mật và truy cập trình xem cho mục đăng nhập. Sau đó chọn vai trò ẩn danh. Nếu đó là vấn đề bảo mật thì bạn sẽ thấy vai trò nào ảnh hưởng đến cài đặt bảo mật cho ẩn danh.

0

Nhập điều này vào trình duyệt "Url của trang web ur/Sitecore/showconfig.aspx" .. Tại đây bạn sẽ nhận được kết hợp tất cả các tệp .config đang được sử dụng. Ngoài ra, bạn chỉ có thể kiểm tra trong fiddler (một phần mềm) để xem những gì khác bạn nhận được trong phản ứng ngoài tài nguyên không thể được tìm thấy.

0

Sẽ rất tuyệt nếu bạn cũng có thể dán các cài đặt bạn đã áp dụng trong web.config, nhưng đây là cách tôi hiểu câu hỏi.

Bạn muốn tạo trang đăng nhập của người dùng ứng dụng khách, không ghi đè trang đăng nhập Sitecore.

Nếu vậy, bạn phải đảm bảo rằng nó nằm trong mục nhà (sitecore> nội dung> nhà> YOUR_LOGIN_PAGE).

Nếu bên ngoài mục nhà, ví dụ: sitecore> nội dung> YOUR_WEBSITE> YOUR_LOGIN_PAGE thì bạn phải định cấu hình trong sitedefinition.config vì điều này được coi là một trang web mới và không phải là một phần của Sitecore mới được cài đặt.

Để xác thực rằng bạn đã áp dụng chính xác, hãy thử truy cập trang showconfig trên trình duyệt của bạn (ví dụ:http://YOUR_WEBSITE/sitecore/admin/showconfig.aspx)

chất liệu bổ sung bạn có thể muốn kiểm tra lại:

  • Hãy chắc chắn rằng bạn đã có thể xuất bản nó trên cơ sở dữ liệu web, nếu không cố gắng truy cập trong chế độ xem trước

  • Make đảm bảo rằng mục đó có định nghĩa bố cục và hiển thị. Nếu không, nó sẽ không hoạt động.

  • Đảm bảo bạn có quyền phù hợp để bạn có thể truy cập trang. Tôi sẽ giả định bạn đang ở trong vai trò quản trị

0

Vấn đề này có thể được gây ra bởi thiết lập chỉnh sửa:

<setting name="RequestErrors.UseServerSideRedirect" value="false" />"

đó là sai theo mặc định.

Theo ghi chú trong tệp cấu hình Nếu đúng, Sitecore sẽ sử dụng Server.Transfer thay vì Response.Redirect. Nhưng Server.Transfer không phải là lựa chọn tốt cho chuyển hướng trang đăng nhập thông thường vì:

ASP.NET không xác minh rằng người dùng hiện tại được phép xem tài nguyên được phân phối theo phương thức Chuyển.

0

Bạn có thể thay đổi nó trong Sitecore.config nộp

<site name="shell" ... loginPage="yoururl" ... /> 
<site name="login" ... virtualFolder="/yoururl" ... /> 
<site name="admin" ... virtualFolder="/yoururl" ... loginPage="/yoururl/login.aspx" /> 
Các vấn đề liên quan