Tôi có cài đặt VPS mới từ nhà cung cấp của mình (Windows 2008 R2, IIS 7.5).
Trang web mặc định hoạt động tốt: http://5.9.251.167/
Tôi đã tạo một trang web mới và ràng buộc cho http://new.ianquigley.com
Trên máy chủ đó và mọi nơi khác mà Miền ánh xạ tới địa chỉ IP. (ping new.ianquigley.com chẳng hạn).
Tôi đã tạo thư mục con c:\inetpub\wwwroot\com.ianquigley
và tạo một tệp HTML index.html
có nội dung " <html>cake</html>
"
Tài liệu mặc định cho trang web là index.html
Trên máy chủ, trong Chrome tôi duyệt đến http://new.ianquigley.com/index.html và gặp Lỗi 404.
Trang nói;
HTTP Error 404.0 - Not Found
The resource you are looking for has been removed, had it's name changed,
or is temporarily unavailable.
Detail:
Module: IIS Web Core
Notification: HttpRequestHandler
Handler: StaticFile
Error Code: 0x80007002
Request URL: http://new.ianquigley.com/index.html
Physical path: c:\inetpub\wwwroot\com.ianquigley\index.html
Logon Method: Anonymous
Logon User: Anonymous
Failed Request Log: c:\inetpub\logs\FailedRequestLog
Con đường vật lý không tồn tại. Thư mục wwwroot
và com.ianquigley
cả hai đều có quyền "Mọi người" và "Đọc".
Các c:\inetpub\wwwroot\logfiles\w3svc2\u_ex130201
tập tin có chứa các yêu cầu index.html với mã lỗi 404.
cập nhật (từ bình luận bên dưới)
Tôi đã tạo c:\cake
với quyền "Mọi người" "Kiểm soát hoàn toàn". Đã di chuyển tệp index.html của tôi trong đó và thay đổi ánh xạ trong IIS. Kiểm tra lại trang trong trình duyệt trên máy chủ một lần nữa cho tôi giống như trên trừ Đường dẫn vật lý làc:\cake\index.html
update 2 Trang web mặc định (hoạt động tốt / có thể đọc từ đĩa) chạy trong "DefaultAppPool", ban đầu sử dụng tài khoản "ApplicationPoolIdentity". Trang web mới cũng sử dụng nhóm ứng dụng này. Tôi đã thử thay đổi tài khoản thành; NetworkService, LocalService và LocalSytem (làm mới nhóm ứng dụng mỗi lần) .. vẫn không có niềm vui!
Nhật ký W3SVC2
#Software: Microsoft Internet Information Services 7.5
#Version: 1.0
#Date: 2013-02-02 20:00:02
#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status time-taken
2013-02-02 20:00:02 5.9.251.167 GET /index.html - 80 - 5.9.251.167 Mozilla/5.0+(Windows+NT+6.1;+WOW64)+AppleWebKit/537.17+(KHTML,+like+Gecko)+Chrome/24.0.1312.57+Safari/537.17 404 0 2 1151
Có sc-win32-status: 2
nghĩa là "không tìm thấy tập tin". Vì vậy, đây có lẽ chỉ đơn giản là một loại quyền truy cập tập tin của vấn đề. Nếu có, tại sao trang web mặc định có thể đọc từ c:\inetpub\wwwroot
thư mục một cách thành công nhưng không phải là thư mục con có quyền.
Ngay bây giờ tôi hoàn toàn bối rối.
AppPoolIdentity
, hãy thử đổi nó thànhNetworkService
c:\inetpub\wwwroot\com.ianquigley
? Bạn đã thử chuyển trang web sang một thư mục vật lý bên ngoài inetpub và ánh xạ trang web IIS vào thư mục đó chưa?