转载的,主要是以前看到过,但是一直没实行,今天按照文中做了一遍,第一次失败,又改了下参数,启动成功
原文地址:http://www.68idc.cn/help/opersys/ubuntu/20141111128088.html
‘’‘
1,如果装了sendmail的话,先卸载了。
yum remove sendmail
2,安装 Postfix
yum install postfix
3,更改默认MTA为Postfix:
/usr/sbin/alternatives --set mta /usr/sbin/sendmail.postfix
4,完事儿,再次检查下是否将MTA改为Postfix了:
alternatives --display mta
5,配置Postfix,vi编辑main.cf
vi /etc/postfix/main.cf
打开后分别找到以下几项,,将其前面的#去掉,并做配置:
myhostname = mail.imcn.me
mydomain = imcn.me
myorigin = $mydomain
inet_interfaces = all mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mynetworks = 168.100.189.0/28, 127.0.0.0/8
relay_domains = (这里我留空启动不了,所以就使用了默认的 relay_domains = $mydestination)
home_mailbox = Maildir/
以上几个设置项不在同一个位置,需要分别寻找,并进行更改,其中相应的域名请改为自己的地址,mynetworks我是没有做改变,自动就有的。
配置文件解释:
mydomain:
mydomain参数是指email服务器的域名,请确保为正式域名(如centos.bz)
myhostname:
myhostname参数是指系统的主机名称(如我的服务器主机名称是mail.centos.bz)
myorigin:
myorigin参数指定本地发送邮件中来源和传递显示的域名。在我们的例子中,mydomain是centos.bz,也是我的域名。
对于下面的一行,我们的邮件地址是user@centos.bz而不是user@mail.centos.bz。
myorigin = $mydomain
mynetworks:
mynetworks参数指定受信任SMTP的列表,具体的说,受信任的SMTP客户端允许通过Postfix传递邮件。
mydestination:
mydestination参数指定哪些邮件地址允许在本地发送邮件。这是一组被信任的允许通过服务器发送或传递邮件的IP地址。用户试图通过发送从此处未列出的IP地址的原始服务器的邮件将被拒绝。
inet_interfaces:
inet_interfaces参数设置网络接口以便Postfix能接收到邮件。
relay_domains:
该参数是系统传递邮件的目的域名列表。如果留空,我们保证了我们的邮件服务器不对不信任的网络开放。
home_mailbox:
该参数设置邮箱路径与用户目录有关,也可以指定要使用的邮箱风格。
6,检测并启动Postfix
service postfix status //检测,若已启动会列出其PID,如下: master (pid 25579) is running... //若未启动,执行以下命令: service postfix start
7,设置开机启动
chkconfig postfix on
我自己的安装到此为止就结束了,因为我只需要的是mail功能,并非搭建邮件服务器。此时测试邮件发送,OK。
参考资料:
补充:如果你之前没有配置过 sendmail 组件,那你很可能没有修改 php.ini 的邮件发送路径,那样可能无法发送邮件。
所以你需要配置php.ini,填写sendmail的绝对路径:
使用命令打开编辑php.ini
vi /usr/local/php/etc/php.ini
输入?sendmail_path 查找定位(或者手动跳转找到sendmail_path),你会发现默认是下面的代码
;sendmail_path =
按 i 进入编辑,将这行修改为
sendmail_path = /usr/sbin/sendmail -t -i
按 Esc 键退出编辑,输入 :wq 保存退出
5.重启php-fpm进程
/etc/init.d/php-fpm restart
’‘’
刚购买了个VPS,看到用处确实强大,经过一番摸索,装上了LNMP环境,然后建了虚拟主机把自己的网站迁移过来了,先解决了几个小问题后,基本算是正常使用了,后来又发现伪静态(PS:其实我也不知道是啥,反正就是原来的链接都无法访问了)不生效,内页出现404错误页面,搜索了一下,看到了老左的文章,了解到我原来用的是现成的虚拟主机,都是人家设置好的,但是现在换了自己配的lnmp,采用的是nginx,而不是apache,也不是原来的那种貌似是IIS的配置,所以就要自己动手了,首先,默认安装的lnmp环境中已经有伪静态文件wordpress.conf文件在"/usr/local/nginx/conf/wordpress.conf"中,我们可以核对一下里面的编译代码是不是为:
if (-f $request_filename/index.html){
rewrite (.*) $1/index.html break;
}
if (-f $request_filename/index.php){
rewrite (.*) $1/index.php;
}
if (!-f $request_filename){
rewrite (.*) /index.php;
}
我的果然不是,我们需要修改成上面的代码文件用来rewrite跳转伪静态。
其次,我们需要在属于我们网站的配置文件:
/usr/local/nginx/conf/vhost/www.laozuo.org.conf(自己添加域名自动命名)
我们会看到类似下面的代码,看到绿色部分是我添加进去的,你就添加进去就可以:
server {
listen 80;
server_name www.laozuo.org;
index index.html index.php;
include wordpress.conf;#这句需要添加
最后,我们用ssh登录VPS,然后用下面的命令重启lnmp(PS:当然也可以重启整个VPS)
/root/lnmp restart
执行上面三步骤之后,我的问题就解决了
在此记录一下,备用
参考地址: http://www.laozuo.org/490.html