vps折腾(二)

前些日子,折腾那个蛋疼的Host1Free vps 配置lnmp环境果断的掉线n次之后就不想折腾了,因为那个节点经常链接不上。看到免费资源部落介绍的 OVH vps ,于是继续出手折腾了下。免费vps 很火爆的说,据说服务商昨天都宕机了,也许是禁不起蜂拥而上的人的折腾把。

废话少说,还是接第一次的配置,不过强烈建议开始配置之前用screen命令创建会话,能够有效的解决网络突然断开,ssh断开后,只能重新运行的情况。 这个vps 还行,没掉线,终于成功搭建了web环境。 环境有了就要搭建博客了。

需要准备上传工具winscp。root登录进去,就可以看到vps 服务器上安装的文件。默认登录进root目录,可以看到刚才下载的lnmp环境包,回到上层目录,更多的文件夹展现出来。
默认网站文件夹 /home/wwwroot/ ,进入这个文件夹,里面就是你的网站所有文件了,里面包括安装lnmp时默认的 phpmyadmin 、ftp等。
默认MYSQL文件夹 /usr/local/mysql/var/ ,最好通过http://ip/phpmyadmin/进入面板管理。

1.登录phpmyadmin面板创建wordpress数据库,默认用户名root,密码是配置lnmp环境时候输的密码。

2.用ssh 登录主机 输入cd /home/wwwroot进入网站目录,然后使用以下命令下载wordpress,
wget http://cn.wordpress.org/wordpress-3.4.2-zh_CN.zip
解压用unzip wordpress-3.4.2-zh_CN.zip如果下载的是tar包,就用 tar -xzvf wordpress-3.4.2-zh_CN.tar.gz 解压缩,解压会得到一个wordpress文件夹。

3.改变文件所有者ssh执行chown -R www:www * 这个是将/home/wwwroot目录下的所有文件所有者、群组由root 改为www 。(注意前面已经进入这个目录了)这个一定要改,要不然安装时提示权限不足。

4.然后访问http://ip/wordpress/wp-admin/install.php 启动wordpress安装向导。当然下载wordpress解压等都可以先下载到本地然后传到vps上,改变属性,移动文件位置等 。

5.这样安装后的wordpress 是在wordpress目录 。访问地址http://ip/wordpress/                                    这个命令cp -a wordpress /home/wwwroot 复制移动到根目录。

6.绑定域名 直接在域名那儿做a 记录到vps ip 即可。
安装lnmp演示 http://198.27.118.48/
演示站点http://xilou.us.ms/wordpress/ (已失效)http://xilou.hk.ms/(vps不稳定)

最后感谢qi 介绍的vps 、军哥的lnmp包、味道的新手教程等等网络上一些对我有帮助的信息。

改变httpd 与nginx端口

这几天折腾openwebmail 遇到很多错误,一些错误相关东西在整理,以后整出来
原来nginx 和httpd共用80端口。改掉之后发现应该是iptables阻止了,修改规则之后发现还是不行,只能关闭防火墙相关配置如下;
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT
-A FORWARD -j REJECT --reject-with icmp-host-prohibited


保存之后/etc/init.d/iptables status查看
Table: filter
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
2 ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0
3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
4 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22
5 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
6 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:80
7 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:8080


这个/usr/local/nginx/conf/nginx.conf 配置文件 修改nginx 端口 listen 由默认的改为其他没被占用的端口
http://198.27.118.48:8080/           nginx 8080端口 wordpress页面打不开。或许要更改下默认目录,正在研究
http://198.27.118.48         httpd 80端口默认页面。下级openwebmail 页面http://198.27.118.48/webmail

debian搭建openwebmail邮箱

很就之前就在ovh 的免费vps上用 redhat系统 上弄过这openwebmail邮箱了,只是那个时候弄了出了大把问题。还没来得及解决,就已经到期了。这次就又试试了,依然是免费的vps只是这次时间更短。我偶尔在网上寻找免费vps只是没有好的,一个月的vps试用的都没,无奈的用了这个15天的。好处就是不要信用卡,只要一个邮箱。

不罗嗦废话了,进入正文。openwebmail在debian上搭建其实蛮简单的,看官网的说明文档就知道了,http://openwebmail.org/openwebmail/download/debian/readme.txt
1. wget http://openwebmail.org/openwebmail/download/debian/owm2.53-2.deb下载软件包
2. dpkg -i owm2.53-2.deb 安装
3. 出错(无例外的话都会出错,错误信息如下类似,摘取部分)
dpkg: dependency problems prevent configuration of openwebmail:
openwebmail depends on libnet-ldap-perl; however:
Package libnet-ldap-perl is not installed.
openwebmail depends on libpgperl | libpg-perl; however:
Package libpgperl is not installed.
Package libpg-perl is not installed.
openwebmail depends on libmd5-perl; however:
Package libmd5-perl is not installed.
dpkg: error processing openwebmail (--install):
dependency problems - leaving unconfigured
Errors were encountered while processing:
上面这些错误大体描述的就是缺少运行组件,比如什么httd 、libmd5-perl、sql等等。缺少啥,咱就照着提示安装啥,
aptitude install perl-suid 安装perl-suid
aptitude install apache2 安装apache2
aptitude install libdbd-mysql-perl
aptitude install wwwconfig-common
aptitude install libnet-ldap-perl
aptitude install libmd5-perl
aptitude install libdigest-md5-file-perl
aptitude install libpgperl
wget http://openwebmail.luxmi.net/download/debian/libmd5-perl/libmd5-perl_0fake-1_amd64.deb
dpkg -i libmd5-perl_0fake-1_amd64.deb
大体是这些了,应该还有些遗漏的。等到这些依赖包全部安装好了之后再执行dpkg -i owm2.53-2.deb ,如果没有报错一直到done,成功。访问http://178.239.176.240/cgi-bin/openwebmail/openwebmail.pl (其中的ip改为你自己的),能够出现登录框,如图:
openwebmail
默认情况下root用户不能登录的。新建账户用useradd 命令,这样帐号能够登录主机,并不是我们需要的,所以要把他加入nologin里面去,执行下面命令
usermod -s /sbin/nologin 已经存在的用户
useradd -s /sbin/nologin 对新用户
我新建了个test帐号密码test 有效期只有几天而已。简陋的环境搭建成功了,还要设置mx 记录,剩下的主要就是管理并处理问题了。比如无法收发邮件等等。我的test帐号没配置mx记录,所以无法发邮件了。

nohup让node.js以系统守护进程运行

Unix/Linux下一般比如想让某个程序在后台运行,很多都是使用 & 在程序结尾来让程序自动运行。但是某些程序仅仅这样是不行的,因为只有系统进程(服务)才能常驻。一般普通的程序在终端执行后,终端关闭了,就不能执行了。比如说执行node.js 或者wget下载大量文件时候,nohup 就派上用场了。

nohup是什么?
nohup是由两个字组成的命令:no-hup,hup指的是SIGHUP(hangup)这个信号,nohup就是忽略SIGHUP这个信号的意思。当我们从一个连线登出的时候,每个process都会收到一个SIGHUP信号,透过nohup所下达的命令就可以不受影响,继续执行。

nohup 用法
该命令的一般形式为:nohup command & 默认会将命令执行的结果输出到nohup.out 文件中,当然也可以不输出,或者输出重定向到其他的文件。
nohup your_command > myout.txt & 输出到myout.txt
nohup your_command > /dev/null 2>&1 & 输出到/dev/null ,但引文/dev/null的特殊存在,所以不会记录。

实例: nohup node server.js > /dev/null 2>&1 & 执行server.js,关闭putty后,访问上一篇文章vps中搭建的nodejs 环境地址依然能够打开。
http://10-20-0-118.my.micloud.tw:3000/