Make WordPress Core


Ignore:
Timestamp:
12/14/2010 08:31:33 AM (15 years ago)
Author:
dd32
Message:

Fix fatal error on IIS after r16797. props peaceablewhale. Limit variable string searching when possible. See #10187

File:
1 edited

Legend:

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

    r16900 r16904  
    34233423
    34243424/**
     3425 * Check if IIS 7 supports pretty permalinks
     3426 *
     3427 * @since 2.8.0
     3428 *
     3429 * @return bool
     3430 */
     3431function iis7_supports_permalinks() {
     3432    global $is_iis7;
     3433
     3434    $supports_permalinks = false;
     3435    if ( $is_iis7 ) {
     3436        /* First we check if the DOMDocument class exists. If it does not exist,
     3437         * which is the case for PHP 4.X, then we cannot easily update the xml configuration file,
     3438         * hence we just bail out and tell user that pretty permalinks cannot be used.
     3439         * This is not a big issue because PHP 4.X is going to be depricated and for IIS it
     3440         * is recommended to use PHP 5.X NTS.
     3441         * Next we check if the URL Rewrite Module 1.1 is loaded and enabled for the web site. When
     3442         * URL Rewrite 1.1 is loaded it always sets a server variable called 'IIS_UrlRewriteModule'.
     3443         * Lastly we make sure that PHP is running via FastCGI. This is important because if it runs
     3444         * via ISAPI then pretty permalinks will not work.
     3445         */
     3446        $supports_permalinks = class_exists('DOMDocument') && isset($_SERVER['IIS_UrlRewriteModule']) && ( php_sapi_name() == 'cgi-fcgi' );
     3447    }
     3448
     3449    return apply_filters('iis7_supports_permalinks', $supports_permalinks);
     3450}
     3451
     3452/**
    34253453 * File validates against allowed set of defined rules.
    34263454 *
Note: See TracChangeset for help on using the changeset viewer.