Make WordPress Core


Ignore:
Timestamp:
09/16/2013 08:06:27 PM (13 years ago)
Author:
nacin
Message:

Add nginx detection to the Permalink Settings screen.

Introduces got_url_rewrite() and a corresponding filter, which should now be used in lieu of the got_rewrite filter in got_mod_rewrite().

This does not write or even suggest nginx configuration; rather, it prevents nginx from being considered as either Apache or as an unrecognized server.

props johnbillion.
fixes #25098.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-admin/options-permalink.php

    r25206 r25456  
    7676
    7777$prefix = $blog_prefix = '';
    78 if ( ! got_mod_rewrite() && ! $iis7_permalinks )
     78if ( ! got_url_rewrite() )
    7979        $prefix = '/index.php';
    8080if ( is_multisite() && !is_subdomain_install() && is_main_site() )
    … …  
    127127        else
    128128                $writable = false;
     129} elseif ( $is_nginx ) {
     130        $writable = false;
    129131} else {
    130132        if ( ( ! file_exists($home_path . '.htaccess') && is_writable($home_path) ) || is_writable($home_path . '.htaccess') )
    … …  
    153155                else
    154156                        _e('Permalink structure updated.');
     157        } elseif ( $is_nginx ) {
     158                _e('Permalink structure updated.');
    155159        } else {
    156160                if ( $permalink_structure && ! $usingpi && ! $writable )
    … …  
    227231<h3 class="title"><?php _e('Optional'); ?></h3>
    228232<?php
    229 $suffix = '';
    230 if ( ! $is_apache && ! $iis7_permalinks )
    231         $suffix = $wp_rewrite->index . '/';
     233$suffix = $prefix;
     234if ( $suffix )
     235        $suffix = ltrim( $suffix, '/' ) . '/';
    232236?>
    233237<p><?php
    … …  
    270274                <?php endif; ?>
    271275        <?php endif; ?>
    272 <?php else :
     276<?php elseif ( ! $is_nginx ) :
    273277        if ( $permalink_structure && ! $usingpi && ! $writable ) : ?>
    274278<p><?php _e('If your <code>.htaccess</code> file were <a href="http://codex.wordpress.org/Changing_File_Permissions">writable</a>, we could do this automatically, but it isn&#8217;t so these are the mod_rewrite rules you should have in your <code>.htaccess</code> file. Click in the field and press <kbd>CTRL + a</kbd> to select all.') ?></p>
Note: See TracChangeset for help on using the changeset viewer.