Make WordPress Core


Ignore:
Timestamp:
11/23/2009 06:17:46 PM (15 years ago)
Author:
ryan
Message:

Improve IIS rewrite support. Props ruslany, peaceablewhale. fixes #10386

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-includes/rewrite.php

    r12230 r12264  
    17181718     * @return string
    17191719     */
    1720     function iis7_url_rewrite_rules(){
     1720    function iis7_url_rewrite_rules($add_parent_tags = false, $indent = "  ", $end_of_line = "\n") {
    17211721
    17221722        if ( ! $this->using_permalinks()) {
    17231723            return '';
    17241724        }
    1725         $rules  = "<rule name=\"wordpress\" patternSyntax=\"Wildcard\">\n";
    1726         $rules .= " <match url=\"*\" />\n";
    1727         $rules .= " <conditions>\n";
    1728         $rules .= "     <add input=\"{REQUEST_FILENAME}\" matchType=\"IsFile\" negate=\"true\" />\n";
    1729         $rules .= "     <add input=\"{REQUEST_FILENAME}\" matchType=\"IsDirectory\" negate=\"true\" />\n";
    1730         $rules .= " </conditions>\n";
    1731         $rules .= " <action type=\"Rewrite\" url=\"index.php\" />\n";
    1732         $rules .= "</rule>";
     1725       
     1726        $rules = '';
     1727        $extra_indent = '';
     1728        if ( $add_parent_tags ) {
     1729            $rules .= "<configuration>".$end_of_line;
     1730            $rules .= $indent."<system.webServer>".$end_of_line;
     1731            $rules .= $indent.$indent."<rewrite>".$end_of_line;
     1732            $rules .= $indent.$indent.$indent."<rules>".$end_of_line;
     1733            $extra_indent = $indent.$indent.$indent.$indent;
     1734        }
     1735       
     1736        $rules .= $extra_indent."<rule name=\"wordpress\" patternSyntax=\"Wildcard\">".$end_of_line;
     1737        $rules .= $extra_indent.$indent."<match url=\"*\" />".$end_of_line;
     1738        $rules .= $extra_indent.$indent.$indent."<conditions>".$end_of_line;
     1739        $rules .= $extra_indent.$indent.$indent.$indent."<add input=\"{REQUEST_FILENAME}\" matchType=\"IsFile\" negate=\"true\" />".$end_of_line;
     1740        $rules .= $extra_indent.$indent.$indent.$indent."<add input=\"{REQUEST_FILENAME}\" matchType=\"IsDirectory\" negate=\"true\" />".$end_of_line;
     1741        $rules .= $extra_indent.$indent.$indent."</conditions>".$end_of_line;
     1742        $rules .= $extra_indent.$indent."<action type=\"Rewrite\" url=\"index.php\" />".$end_of_line;
     1743        $rules .= $extra_indent."</rule>";
     1744       
     1745        if ( $add_parent_tags ) {
     1746            $rules .= $end_of_line.$indent.$indent.$indent."</rules>".$end_of_line;
     1747            $rules .= $indent.$indent."</rewrite>".$end_of_line;
     1748            $rules .= $indent."</system.webServer>".$end_of_line;
     1749            $rules .= "</configuration>";
     1750        }
    17331751
    17341752        $rules = apply_filters('iis7_url_rewrite_rules', $rules);
Note: See TracChangeset for help on using the changeset viewer.