2013-08-01 28 views
29

Tôi muốn hướng một số tên miền khác của mình đến tên miền chính được lưu trữ tại trang web Windows Azure.Trang web Azure 301 Chuyển hướng - Tôi nên đặt ở đâu?

(Vì lợi ích của những người tìm thấy làm việc với CNAME và DNS một chút "sương mù" (như tôi đã làm) tôi sẽ bố trí các chi tiết.)

Tôi có miền www.myDomain.com giải quyết một cách chính xác .

bây giờ tôi muốn chỉ www.myOtherDomain.com to www.myDomain.com

Tại công ty đăng ký của tôi, tôi đã tạo ra một CNAME để trỏ
www.myOtherDomain.com to myInternalAzureSite.azurewebsite.net
và sau đó cấu hình thành công nó trong trong Azure Trang web công cụ quản lý tên miền.

Bây giờ, khi tôi nhập www.myOtherDomain.com vào trình duyệt, tôi nhận được trang web thích hợp tại www.myDomain.com, tuy nhiên, địa chỉ trong trình duyệt vẫn là www.myOtherDomain.com không phải là www.myDomain.com như mong muốn.

Tôi hiểu hai cách hấp dẫn nhất để thực hiện điều này là một trong hai:

  1. Forward myOtherDomain.com (mà chi phí $ tại một số nhà đăng ký)
  2. Thực hiện 301 chuyển hướng vĩnh viễn

Nếu tôi có tất cả những gì chính xác, tôi đã tìm thấy nhiều đề xuất của CÁCH để thực hiện chuyển hướng 301, tuy nhiên, tôi dường như không thể tìm ra WHERE để actuall y đặt chuyển hướng?

Trả lời

51

Trang web Windows Azure chạy IIS. Bạn có thể sử dụng viết lại URL để tạo quy tắc viết lại URL này cho URL khác.

Hướng dẫn:

  1. Tạo một trang web trong Windows Azure.

  2. Trong phần Quy mô, hãy chọn chế độ Trang web được chia sẻ hoặc Chuẩn và lưu thay đổi.

  3. Trong phần Định cấu hình, trên nhóm tên miền, thêm tên miền cũ (hoặc tên) và tên miền mới và lưu thay đổi.

  4. Trong công ty đăng ký tên miền hoặc nhà cung cấp DNS cho tên miền cũ và tên miền mới, thay đổi bản ghi DNS để trỏ tới Trang web Windows Azure mới. Sử dụng bản ghi "CNAME (Bí danh)" và trỏ nó vào miền của trang web trên Windows Azure, như sau: "mywebsite.azurewebsites.net."

  5. Tải nội dung trang web mới của bạn lên Windows Azure.

  6. Trong thư mục gốc của trang web mới, tạo một file có tên Web.config với một nội dung như thế này:

    <?xml version="1.0" encoding="utf-8" ?> 
    <configuration> 
        <system.webServer> 
         <rewrite> 
          <rules> 
           <rule name="Redirect old-domain to new-domain" stopProcessing="true"> 
            <match url=".*" /> 
            <conditions> 
             <add input="{HTTP_HOST}" pattern="^www.old-domain.com$" /> 
            </conditions> 
            <action type="Redirect" url="http://www.new-domain.com/{R:0}" redirectType="Permanent" /> 
           </rule>    
          </rules> 
         </rewrite> 
        </system.webServer> 
    </configuration> 
    
  7. Xác minh rằng bất kỳ yêu cầu "http://www.old-domain.com/path?query" sẽ nhận được một "301 Moved Permanently" phản ứng với tiêu đề Vị trí cho "http://www.new-domain.com/path?query".

Để biết tài liệu tham khảo Using the URL Rewrite Module.

Ví dụ: tham khảo Redirect to new domain after rebranding with IIS Url Rewrite ModuleIIS URL Rewrite – Redirect multiple domain names to one.

+0

Cảm ơn @Fernando, trong trường hợp của tôi myOtherDomain.com chưa bao giờ có một trang web, nó chỉ là .net, .org, misspellings.com vv của trang web chính. – Richard

+0

Không sao, tôi đã điều chỉnh câu trả lời cho tình huống này. Trong trường hợp này, bạn tạo một trang web cho tên miền khác này và đặt các quy tắc chuyển hướng trong trang web này, chuyển hướng đến miền mục tiêu. –

+0

Fernando, xin lỗi vì sự thiếu hiểu biết của tôi, nhưng tôi chỉ ở đó thôi. Có thể (hoặc nên) trang web mà tên miền được chuyển hướng là trang web mục tiêu không? Ví dụ, myOldDomain.com trỏ đến newDomain.com và chuyển hướng perm có trong root.config gốc của newDomain.com? – Richard

4

Bạn cũng có thể làm chuyển hướng bằng cách đặt mã này trong tập tin web.config của bạn dưới configuration nút:

<configuration> 
    <location path="oldpage1.php"> 
    <system.webServer> 
     <httpRedirect enabled="true" destination="http://domain.com/newpage1" httpResponseStatus="Permanent" /> 
    </system.webServer> 
    </location> 
    <location path="oldpage2.php"> 
    <system.webServer> 
     <httpRedirect enabled="true" destination="http://domain.com/newpage2" httpResponseStatus="Permanent" /> 
    </system.webServer> 
    </location> 
</configuration> 
+0

Đã không hoạt động đối với tôi, nó hiển thị HTTP 404 cho trang cũ của tôi không còn tồn tại nữa. Bất kỳ ý tưởng về những gì có thể được? – rodrigorf

+1

Bạn có chắc chắn bạn đã đưa đúng vị trí vào thuộc tính 'đường dẫn' của thẻ vị trí không? – Celt

+0

tôi đã phạm sai lầm, tôi đã cố gắng sử dụng mã này để chuyển hướng tất cả yêu cầu của một thư mục cụ thể không phải là một tệp duy nhất. Tôi đã giải quyết được vấn đề của mình khi thay đổi web.config bằng thẻ httRedirect trong system.webserver. – rodrigorf

Các vấn đề liên quan