2013-02-13 24 views
5

Tôi có một số tệp cần phải ở trong http. Tôi đã thử mã sau nhưng không hoạt động. Làm thế nào tôi có thể thiết lập lực lượng HTTP cho page1 trang, page2 trong web.configTôi làm cách nào để buộc http cho một số tệp trong tệp web.config

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <system.webServer> 
    <rewrite> 
     <rules> 
      <rule name="Force HTTP" stopProcessing="true"> 
       <match url="(.*)/page1.php" ignoreCase="false"/> 
           <match url="(.*)/page2.php" ignoreCase="false"/> 
       <conditions> 
        <add input="{HTTPS}" pattern="ON" ignoreCase="true"/> 
       </conditions> 
       <action type="Redirect" url="http://{HTTP_HOST}{REQUEST_URI}" redirectType="Permanent" /> 
      </rule> 
     </rules> 
    </rewrite> 
    </system.webServer> 
</configuration> 

Iam làm việc trong máy chủ IIS 7 web cho ứng dụng PHP trong cửa sổ

Trả lời

3

Bạn cần thay đổi quy tắc của bạn để:

<rule name="Force HTTP" stopProcessing="true"> 
    <match url="^page[12].php(.*)" /> 
    <conditions> 
    <add input="{HTTPS}" pattern="^ON$" /> 
    </conditions> 
    <action type="Redirect" url="http://{HTTP_HOST}/{R:0}" redirectType="Permanent" /> 
</rule> 

url="^page[12].php(.*)" sẽ khớp với bất kỳ url nào bắt đầu bằng page1.php hoặc page2.php.
Hành động chuyển hướng yêu cầu đến https://{HTTP_HOST}/{R:0} trong đó {R:0} chứa đường dẫn được yêu cầu.

+0

Cảm ơn ... :). Tôi có nghĩa là cho các trang khác nhau như (onpage, trang anoher). Tôi đã thay đổi thẻ đối sánh thành . Ngoài ra, chuyển hướng là http thay vì https. Nó hoạt động tốt ngay bây giờ. Một lần nữa, cảm ơn bạn rất nhiều. – suneesh

+0

@suneesh Phải, chuyển hướng đến 'HTTPS' là lỗi đánh máy !! Lấy làm tiếc :) – cheesemacfly

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