| | |
| | | |
| | | switch($data['new']['subdomain']) { |
| | | case 'www': |
| | | $rewrite_rules[] = array( 'rewrite_domain' => '^'.$data['new']['domain'], |
| | | $rewrite_rules[] = array( 'rewrite_domain' => '^'.$this->_rewrite_quote($data['new']['domain']), |
| | | 'rewrite_type' => ($data['new']['redirect_type'] == 'no')?'':'['.$data['new']['redirect_type'].']', |
| | | 'rewrite_target' => $rewrite_target, |
| | | 'rewrite_target_ssl' => $rewrite_target_ssl); |
| | | $rewrite_rules[] = array( 'rewrite_domain' => '^www.'.$data['new']['domain'], |
| | | $rewrite_rules[] = array( 'rewrite_domain' => '^' . $this->_rewrite_quote('www.'.$data['new']['domain']), |
| | | 'rewrite_type' => ($data['new']['redirect_type'] == 'no')?'':'['.$data['new']['redirect_type'].']', |
| | | 'rewrite_target' => $rewrite_target, |
| | | 'rewrite_target_ssl' => $rewrite_target_ssl); |
| | | break; |
| | | case '*': |
| | | $rewrite_rules[] = array( 'rewrite_domain' => '(^|\.)'.$data['new']['domain'], |
| | | $rewrite_rules[] = array( 'rewrite_domain' => '(^|\.)'.$this->_rewrite_quote($data['new']['domain']), |
| | | 'rewrite_type' => ($data['new']['redirect_type'] == 'no')?'':'['.$data['new']['redirect_type'].']', |
| | | 'rewrite_target' => $rewrite_target, |
| | | 'rewrite_target_ssl' => $rewrite_target_ssl); |
| | | break; |
| | | default: |
| | | $rewrite_rules[] = array( 'rewrite_domain' => '^'.$data['new']['domain'], |
| | | $rewrite_rules[] = array( 'rewrite_domain' => '^'.$this->_rewrite_quote($data['new']['domain']), |
| | | 'rewrite_type' => ($data['new']['redirect_type'] == 'no')?'':'['.$data['new']['redirect_type'].']', |
| | | 'rewrite_target' => $rewrite_target, |
| | | 'rewrite_target_ssl' => $rewrite_target_ssl); |
| | |
| | | unset($client); |
| | | unset($aa_search); |
| | | unset($aa_replace); |
| | | $server_alias[] .= $auto_alias; |
| | | $server_alias[] .= $auto_alias.' '; |
| | | } |
| | | |
| | | // get alias domains (co-domains and subdomains) |
| | |
| | | |
| | | switch($alias['subdomain']) { |
| | | case 'www': |
| | | $rewrite_rules[] = array( 'rewrite_domain' => '^'.$alias['domain'], |
| | | $rewrite_rules[] = array( 'rewrite_domain' => '^'.$this->_rewrite_quote($alias['domain']), |
| | | 'rewrite_type' => ($alias['redirect_type'] == 'no')?'':'['.$alias['redirect_type'].']', |
| | | 'rewrite_target' => $rewrite_target, |
| | | 'rewrite_target_ssl' => $rewrite_target_ssl); |
| | | $rewrite_rules[] = array( 'rewrite_domain' => '^www.'.$alias['domain'], |
| | | $rewrite_rules[] = array( 'rewrite_domain' => '^' . $this->_rewrite_quote('www.'.$alias['domain']), |
| | | 'rewrite_type' => ($alias['redirect_type'] == 'no')?'':'['.$alias['redirect_type'].']', |
| | | 'rewrite_target' => $rewrite_target, |
| | | 'rewrite_target_ssl' => $rewrite_target_ssl); |
| | | break; |
| | | case '*': |
| | | $rewrite_rules[] = array( 'rewrite_domain' => '(^|\.)'.$alias['domain'], |
| | | $rewrite_rules[] = array( 'rewrite_domain' => '(^|\.)'.$this->_rewrite_quote($alias['domain']), |
| | | 'rewrite_type' => ($alias['redirect_type'] == 'no')?'':'['.$alias['redirect_type'].']', |
| | | 'rewrite_target' => $rewrite_target, |
| | | 'rewrite_target_ssl' => $rewrite_target_ssl); |
| | | break; |
| | | default: |
| | | $rewrite_rules[] = array( 'rewrite_domain' => '^'.$alias['domain'], |
| | | if(substr($alias['domain'], 0, 2) === '*.') $domain_rule = '(^|\.)'.$this->_rewrite_quote($alias['domain']); |
| | | else $domain_rule = '^'.$this->_rewrite_quote($alias['domain']); |
| | | $rewrite_rules[] = array( 'rewrite_domain' => $domain_rule, |
| | | 'rewrite_type' => ($alias['redirect_type'] == 'no')?'':'['.$alias['redirect_type'].']', |
| | | 'rewrite_target' => $rewrite_target, |
| | | 'rewrite_target_ssl' => $rewrite_target_ssl); |
| | |
| | | |
| | | if(preg_match('/' . preg_quote($begin_marker, '/') . '(.*?)' . preg_quote($end_marker, '/') . '/s', $ht_file, $matches)) { |
| | | $ht_file = str_replace($matches[0], '', $ht_file); |
| | | } else { |
| | | $ht_file = str_replace("AuthType Basic\nAuthName \"Members Only\"\nAuthUserFile ".$folder_path.".htpasswd\nrequire valid-user", '', $ht_file); |
| | | } |
| | | |
| | | if(trim($ht_file) == '') { |
| | |
| | | |
| | | if(preg_match('/' . preg_quote($begin_marker, '/') . '(.*?)' . preg_quote($end_marker, '/') . '/s', $ht_file, $matches)) { |
| | | $ht_file = str_replace($matches[0], '', $ht_file); |
| | | } else { |
| | | $ht_file = str_replace("AuthType Basic\nAuthName \"Members Only\"\nAuthUserFile ".$old_folder_path.".htpasswd\nrequire valid-user", '', $ht_file); |
| | | } |
| | | |
| | | if(trim($ht_file) == '') { |
| | |
| | | |
| | | if(preg_match('/' . preg_quote($begin_marker, '/') . '(.*?)' . preg_quote($end_marker, '/') . '/s', $ht_file, $matches)) { |
| | | $ht_file = str_replace($matches[0], '', $ht_file); |
| | | } else { |
| | | $ht_file = str_replace("AuthType Basic\nAuthName \"Members Only\"\nAuthUserFile ".$new_folder_path.".htpasswd\nrequire valid-user", '', $ht_file); |
| | | } |
| | | |
| | | if(trim($ht_file) == '') { |
| | |
| | | return symlink($cfrom, $to); |
| | | } |
| | | |
| | | private function _rewrite_quote($string) { |
| | | return str_replace(array('.', '*', '?', '+'), array('\\.', '\\*', '\\?', '\\+'), $string); |
| | | } |
| | | |
| | | } // end class |
| | | |
| | | ?> |