Leave htaccess alone if permalinks are not turned on. Bug 597.

git-svn-id: http://svn.automattic.com/wordpress/trunk@2006 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
rboren 2004-12-27 22:30:52 +00:00
parent 210016e4d4
commit 888021c22a
2 changed files with 27 additions and 12 deletions

View File

@ -497,20 +497,17 @@ function save_mod_rewrite_rules() {
global $is_apache, $wp_rewrite; global $is_apache, $wp_rewrite;
$home_path = get_home_path(); $home_path = get_home_path();
if ( (!file_exists($home_path.'.htaccess') && is_writable($home_path)) || is_writable($home_path.'.htaccess') ) if (! $wp_rewrite->using_mod_rewrite_permalinks())
$writable = true; return;
else
$writable = false;
if ($wp_rewrite->using_index_permalinks()) if ( ! ((!file_exists($home_path.'.htaccess') && is_writable($home_path)) || is_writable($home_path.'.htaccess')) )
$usingpi = true; return;
else
$usingpi = false;
if ( $writable && !$usingpi && $is_apache ) { if (! $is_apache)
$rules = explode("\n", $wp_rewrite->mod_rewrite_rules()); return;
insert_with_markers($home_path.'.htaccess', 'WordPress', $rules);
} $rules = explode("\n", $wp_rewrite->mod_rewrite_rules());
insert_with_markers($home_path.'.htaccess', 'WordPress', $rules);
} }
function generate_page_rewrite_rules() { function generate_page_rewrite_rules() {

View File

@ -764,6 +764,13 @@ class WP_Rewrite {
's=' 's='
); );
function using_permalinks() {
if (empty($this->permalink_structure))
return false;
else
return true;
}
function using_index_permalinks() { function using_index_permalinks() {
if (empty($this->permalink_structure)) { if (empty($this->permalink_structure)) {
return false; return false;
@ -777,6 +784,13 @@ class WP_Rewrite {
return false; return false;
} }
function using_mod_rewrite_permalinks() {
if ( $this->using_permalinks() && ! $this->using_index_permalinks())
return true;
else
return false;
}
function preg_index($number) { function preg_index($number) {
$match_prefix = '$'; $match_prefix = '$';
$match_suffix = ''; $match_suffix = '';
@ -1058,6 +1072,10 @@ class WP_Rewrite {
} }
function mod_rewrite_rules () { function mod_rewrite_rules () {
if ( ! $this->using_permalinks()) {
return '';
}
$site_root = str_replace('http://', '', trim(get_settings('siteurl'))); $site_root = str_replace('http://', '', trim(get_settings('siteurl')));
$site_root = preg_replace('|([^/]*)(.*)|i', '$2', $site_root); $site_root = preg_replace('|([^/]*)(.*)|i', '$2', $site_root);
if ('/' != substr($site_root, -1)) $site_root = $site_root . '/'; if ('/' != substr($site_root, -1)) $site_root = $site_root . '/';