Tôi đang sử dụng Triển khai Web (từ VS2013) để xuất bản trang ASP.NET MVC lên IIS 7.5.Triển khai Web xóa cấu hình tùy chỉnh trang web IIS
Tôi đã thêm một số quy tắc viết lại URL và tiêu đề phản hồi HTTP tùy chỉnh thông qua trình quản lý IIS.
Vấn đề là mỗi khi tôi triển khai phiên bản mới của trang web, cấu hình bổ sung này sẽ bị xóa.
Đây có phải là hành vi mong đợi hoặc có vấn đề gì không? Làm cách nào để giữ các cài đặt tùy chỉnh này trên từng triển khai?
CẬP NHẬT
Vì vậy, tôi hiểu tôi cần phải đưa những thay đổi trong web.config
. Tôi đang cố gắng để đặt chúng trong Web.Release.config
nhưng nó không được thêm vào triển khai web.config
. Tôi đoán tôi thiếu một số quy tắc XDT:Transform
.
Đây là những gì tôi có trong số Web.Release.config
(có, hồ sơ xuất bản đang sử dụng Cấu hình phát hành này).
<configuration>
<!-- some other stuff -->
<system.webServer>
<rewrite>
<rules>
<rule name="Redirect to www" patternSyntax="Wildcard" stopProcessing="true">
<match url="*" />
<conditions>
<add input="{HTTP_HOST}" pattern="mydomain.com" />
</conditions>
<action type="Redirect" url="http://www.mydomain.com/{R:0}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
Những thay đổi này đưa vào web.config được triển khai? Nếu bạn kiểm tra sự khác biệt giữa web.config địa phương của bạn và triển khai (sau khi thay đổi đã được thực hiện), có cái gì đó khác nhau giữa các tập tin? – NoLifeKing
@NoLifeKing Không, như tôi đã nói, những thay đổi đã được thực hiện thông qua trình quản lý IIS, chứ không phải web.config. Tôi có cần phải thực hiện chúng thông qua web.config không? – emzero
Các thay đổi được thực hiện trong Trình quản lý IIS sẽ thay đổi web.config được triển khai bằng các giá trị mới. Tất nhiên, có những ngoại lệ đối với những gì được thay đổi, không phải mọi thứ được đưa vào web.config. – NoLifeKing