apache 中 ServerAlias多个域名绑定同一网站

ServerAlias:服务器别名,在Apache中可以用于设置虚拟主机接收到个域名,也可以用于接收泛解析的域名。具体的设置方法如下:

第一步:

修改apache配置文件httpd.conf

LoadModule vhost_alias_module modules/mod_vhost_alias.so //打开这个配置

第二步:

(1)用于设置虚拟主机接收多个域名

一个虚拟主机常常会接收多个域名解析,比如:一个虚拟主机要同时介绍doctor-c.net, doctor-c.com两个域名,或者是两个二级域名,如:www.doctor-c.net、 www1.doctor-c.net,对于这种情况,可以在用ServerAlias轻松做到,而且此方法实现的跳转是301永久重定向,打开apache的设置文件:httpd-vhosts.conf,在该主机的设置代码中:

<VirtualHost *:80>
 ServerAdmin 156332586@qq.com
 DocumentRoot "D:\wwwroot\doctor-c.net"
 ServerName doctor-c.net
 ServerAlias doctor-c.com  www1.doctor-c.net //多个域名以空格隔开
 ErrorLog "logs/dummy-host2.example.com-error.log"
 CustomLog "logs/dummy-host2.example.com-access.log" common
</VirtualHost>

保存后,重启服务生效!

(2)用于接收泛域名解析

ServerAlias *.doctor-c.net #用*表示泛域名,如果要接收三级泛域名解析,可以写成这样:*.my.doctor-c.net ;

邮件发送

1.邮件配置:

return array (
 //以下email设置,暂时不知道在何处使用
 'email' => 'true',
 'email_server' => 'smtp.qq.com',
 'email_port' => '25',
 'email_user' => '156332456@qq.com',
 'email_pwd' => '123456'
);

2.邮件发送方法:

/************************
 *邮件发送
 *by zrp
 *时间:2015年3月31日17:31:04
 */
 public function send_email($email='',$content=''){
 $emailsmtpserver=C('email_server');
 $emailport=C('email_port');
 $emailsend=C('email_user');
 $emailuser=C('email_user');
 $emailpassword=C('email_pwd');
 date_default_timezone_set('PRC');
 Vendor('phpmailer');//thinkphp导入phpmailer类
 $mail = new PHPMailer();
 $mail->IsSMTP(); // 使用SMTP方式发送
 $mail->CharSet='UTF-8';// 设置邮件的字符编码
 $mail->Host = "$emailsmtpserver"; // 企业邮局域名
 $mail->SMTPAuth = true; // 启用SMTP验证功能
 $mail->Username = "$emailuser"; //邮件发送者email地址
 $mail->Password = "$emailpassword"; //发送方邮箱密码
 $mail->From = $emailsend;//邮件发送者email地址
 $mail->FromName = C('site_name');//您的名称
 $mail->AddAddress($email);//收件人地址,可以替换成任何想要接收邮件的email信箱,格式是AddAddress("收件人email","收件人姓名")
 //$mail->AddAddress("ellen@example.com"); // name is optional
 $mail->AddReplyTo($emailsend, "Information");

 $mail->WordWrap = 50; // set word wrap to 50 characters
 //$mail->AddAttachment("/var/tmp/file.tar.gz"); // 添加压缩包附件
 //$mail->AddAttachment("/tmp/image.jpg", "new.jpg"); // 添加图片附件
 $mail->IsHTML(true); //是否使用HTML格式

 $mail->Subject = '密码重置';//邮件标题
 $mail->Body = $content;//邮件内容
 $mail->AltBody = ""; //附加信息,可以省略

 if(!$mail->Send())
 {
 return $mail->ErrorInfo;
 }else{
 return true;
 }
 }

3.下载类文件:

phpmailer.php下载地址:http://pan.baidu.com/s/1qW0rOC0

smtp.php下载地址:http://pan.baidu.com/s/1c0CR5Mo

注:这两个类放在同一目录下。

参考:http://baike.baidu.com/view/2341560.htm