CentOS 5 VPS的nginx+php+mysql解决方案之一

Posted by zuzhihui in vps技术 on 2009/09/05 with 3 Comments

在CentOS5 VPS下的nginx php mysql的解决方案有多个,本文介绍其中的解决方案之一。

本文基于64位的CentOS 5 VPS,如果是32位的VPS,请在相应部分做修改。

本解决方案使用瑞豪开源自己编译的最新稳定版本的Nginxfastcgi进程管理使用spawn-fcgi,还有CentOS 5自带的5.0.45版本的MySQL和5.1.6版本的php。

优缺点

本方案的优点是使用CentOS5自带的php和mysql,扩展性好,php的各种扩展yum库里面都有,都可以直接使用;另外,由于使用系统自带的php和mysql,安全性要好一些,如果有什么漏洞都可以直接升级为centos官方的最新版本。由于使用spawn-fcgi,所以无须重新编译php。

本方案的缺点有:

  1. php和mysql都是centos自带的版本,不是最新版本,万一用到php最新版本的某些特性则就不行了。
  2. spawn-fcgi的性能不如php-fpm,如果想用php-fpm,请参考 http://rashost.com/blog/centos5-vps-nginx-solution2

安装Nginx

 http://dl.rashost.com/下载nginx-0.7.61-1.x86_64.rpm

安装命令:

rpm -ivh nginx-0.7.61-1.x86_64.rpm
chkconfig --list nginx
chkconfig nginx on
/etc/init.d/nginx start
rpm -ql nginx

上面的rpm -ql nginx命令是看看nginx的文件都安装在哪些目录下面了,可以看到nginx的缺省网页目录应该是/usr/share/nginx/html/

通过浏览器访问,应该能看到nginx的缺省网页了,说明nginx正常工作了!

安装MySQL

yum install -y mysql-server
chkconfig --list mysqld
chkconfig mysqld on
/etc/init.d/mysqld start

运行mysql -uroot命令,应该可以正常连接到MySQL

安装PHP

yum install -y php-cgi php-mysql

安装spawn-fcgi

http://dl.rashost.com/ 下载 spawn-fcgi-1.6.2-1.32.x86_64.rpm

rpm -ivh spawn-fcgi-1.6.2-1.32.x86_64.rpm

然后在/etc/rc.local里面加入spawn-fcgi的启动命令:

spawn-fcgi -C 10 -a 127.0.0.1 -p 9000 -u nginx -d /tmp -f php-cgi

其中的-C 10参数是指启动的php fastcgi的进程数目,这个数值可以根据网站的访问量和内存大小修改。

然后先手工启动一下php:

spawn-fcgi -C 10 -a 127.0.0.1 -p 9000 -u nginx -d /tmp -f php-cgi

整合

首先在/usr/share/nginx/html目录下创建文件test.php,其内容很简单,只要下面一行:

<?phpinfo();?>

假设所在VPS的地址是centos5.rashost.com,这时通过浏览器访问http://centos5.rashost.com/test.php是得不到正确的显示结果的。

修改nginx的配置文件/etc/nginx/nginx.conf,在文件内搜索fastcgi_pass,修改该部分内容为:

      location ~ \.php$ {
root           html;
fastcgi_pass   127.0.0.1:9000;
fastcgi_index  index.php;
fastcgi_param  SCRIPT_FILENAME  $document_root/$fastcgi_script_name;
include        fastcgi_params;
}

然后重启nginx:

/etc/init.d/nginx/restart

然后在浏览器中访问test.php页面,就应该能正确显示了,reboot VPS测试一下,各个模块应该都能自带启动。大功告成,该来些瓶啤酒庆祝一下了!

在CentOS5 VPS下编译nginx的RPM包

Posted by zuzhihui in vps技术 on 2009/09/04 with 2 Comments

Nginx是个Web服务器新秀,CentOS5官方没有Nginx的RPM包,本文记录了在64位的CentOS5 VPS下怎样编译Nginx 0.7.61版本的RPM包。

要编译RPM包,首先要有SRPM包,也就是RPM包的源代码包。可以从Nginx官网下载Nginx的源代码然后自己制作Nginx的SRPM包,这比较麻烦。本文下载了fedora 10中自带的Nginx的SRPM包,稍做修改即可。

安装SRPM包:

rpm -ivh nginx-0.7.61-1.fc10.src.rpm

上面命令把源代码安装在了/usr/src/redhat目录下,要编译RPM,需要rpmbuild命令:

yum install -y rpm-build.x86_64

然后就可以开始build了:

cd /usr/src/redhat/SPECS
rpmbuild -bb nginx.spec

build报错了,少了几个必须的库文件,我们来安装:

yum install -y pcre-devel.x86_64 zlib-devel.x86_64 openssl-devel.x86_64 mod_perl-devel.x64_64

然后修改nginx.spec文件,将其中的perl-devel修改成mod_perl-devel。继续build:

rpmbuild -bb nginx.spec

大功告成!build出来的RPM包就是/usr/src/redhat/RPMS/x86_64/nginx-0.7.61-1.x86_64.rpm 。同样的方法,我们在32位的CentOS VPS下也编译了一份,然后把他们都放到http://dl.rashost.com/下供大家下载。

用phpmyadmin备份VPS上的MySQL数据库老失败,怎么办?

Posted by zuzhihui in vps技术 on 2009/08/30 with No Comments

phpmyadmin是一个优秀的MySQL数据库管理前端软件,能通过浏览器对VPS上的MySQL进行管理。使用起来非常方便,很多客户都在VPS上面安装了这个软件。

有些客户用phpmyadmin备份MySQL数据库不成功,并且每次备份MySQL不但不成功,反而会影响正在网站都打不开了,知道重启VPS或者等一段时间后,网站才能正常访问。

以上这个问题的根本原因在于要备份的MySQL数据库有点大,而php可使用的内存有点小。在用phpmyadmin备份大数据库的的时候由于内存耗尽而导致网站访问异常缓慢。

怎样解决这个问题呢?

其实写一个小的php文件就可以了,比如文件名称是backup.php,内容如下:

<?php exec("mysqldump -h localhost -u root -ppassword dbname | gzip -c > /var/www/html/db.sql.gz");?>

上面文件中,localhost是指数据库的主机名,root代表连接数据库的用户名,password是root的密码,dbname就是要备份的数据库,备份出来的文件是/var/www/html/db.sql.gz。每次在浏览器中访问这个backup.php,就自动执行了一次数据库备份,然后就可以把备份出来的文件下载到本地了。这种备份方法非常适合大数据库,效率很高。

是否应该为Linux VPS安装一个Web控制面板?

Posted by zuzhihui in vps技术 on 2009/08/29 with No Comments

经常有Linux VPS的客户会问:是否给我的Linux VPS安装一个Web控制面板呢?

我们的建议

我们的建议是,如果您满足以下条件之一,就不要选择Web控制面板:

  • 熟悉Linux操作系统的使用
  • 刚开始学习Linux操作系统,但有钻研精神,希望自己以后能够掌握Linux

如果您一点也不熟悉Linux,那还是安装一个Web控制面板比较方便。

什么是Web控制面板

现在比较流行的Web控制面板有Kloxo(原名LxAdmin),cPanel, DirectAdmin, Virtualmin等,以后我们会写出更详细的介绍。

Web控制面板的优点

Web控制面板能通过Web的形式对VPS进行管理,优点是简化系统管理,能让用户很方便的配置Web服务器,绑定域名,配置FTP服务器等。

Web控制面板的缺点

总结一下,缺点如下:

  • 局限性大。使用Web控制面板,VPS的各个组件都已经安装好了,比如Web服务器,FTP服务器,MySQL数据库,PHP等。用户不能再修改这些组件了,一切操作都要通过浏览器进行。
  • Web控制面板额外占用一些内存和硬盘空间
  • 使用Web控制面板配置,用户看不到底层的操作

流行的Web控制面板

现在流行的Web控制面板有cPanel, DirectAdmin, Kloxo, Virtualmin等

cPanel是个老牌的Web控制面板,功能最强大,市场占用率最大,价格也是最贵的,我们提供的价格是120元人民币每月。

DirectAdmin也是一个商业的Web控制面板,功能也不错,使用界面比较简陋,价格便宜,我们的价格是50元人民币每月。

Kloxo控制面板有免费的版本,最多绑定40个域名,基本功能都有,使用起来也比较方便。

新兴的Virtualmin控制面板是由Webmin发展而来的,功能也不错,有免费版本,这个面板至少需要256M内存,用户自己可以在VPS上安装。

32位的VPS和64位的VPS

Posted by zuzhihui in vps技术 on 2009/08/24 with No Comments

当前广泛使用的CPU架构有x86和x86_64。其中x86是Intel很早推出的32位CPU架构,以前我们使用的绝大多数桌面CPU都是x86架构,包括AMD的一些CPU。

x86_64是由AMD公司在最近几年设计推出的64位CPU架构,x86_64架构刚推出的时候被称为AMD64。x86_64兼容32位的x86架构,是一个很成功的64位CPU架构。Intel在AMD推出x86_64之后,也推出了自己的x86_64架构CPU,只不过Intel称呼x86_64为Intel64,EM64T。

由于x86_64兼容x86,32位的Windows和Linux等操作系统都可以很好的运行在x86_64的CPU上。x86的CPU只能运行32位的操作系统,而x86_64的CPU既可以运行64位的操作系统,也可以运行32位的操作系统。

有一点需要说明的是,Linux操作系统分为Linux内核和应用程序两部分。x86_64 CPU上可以运行64位的Linux内核,和32位的应用程序。所以,在x86_64 CPU上运行的Linux操作系统可能是:

  • 内核和应用程序都是64位
  • 内核和应用程序都是32位
  • 内核是64位,而应用程序是32位

在Linux下查看内核的信息的命令是: uname -a , 查看应用程序的格式可以用file命令,比如:file /usr/bin/*

瑞豪开源用来做VPS的CPU绝大多数都是64位的CPU,所以支持32位的VPS和64位的VPS。缺省情况下我们给客户安装64位的Linux操作系统和32位的Windows操作系统。

自带Kloxo控制面板的CentOS Linux VPS只有32位的版本,所以如果客户选择该系统的话,看到的将是64位的内核和32位的应用程序。

128M内存的VPS能支持多少人在线?

Posted by zuzhihui in vps技术 on 2009/07/24 with No Comments

经常会有人问:”我的VPS能支持多少人同时在线?“。这是一个没有标准答案的问题,因为:

一个网站能支持的用户数量取决于很多因素,包括网站程序的质量和优化,VPS的内存大小,一个用户所占用的内存的大小,Web服务器所采用的技术和优化等等。比如:静态页面比php程序节省内存,php程序的网站一般比Java程序的网站节省内存,插件少的网站比插件多的网站省内存,lighttpd web server比apache web server省内存。。。

另外,”在线“这个词也没有一个清晰准确公认的定义。有的网站在根据当前时刻没有流量来判断用户是否在线,即使浏览器里显示着页面,只有当前时刻没有流量,就不算在线用户;有的网站在用户退出(关闭浏览器)之后,这个用户就不计入在线用户数量了;有的网站在用户退出10分钟后才不计入在线用户数量;更离谱的有的网站在用户退出24小时后才不计入在线用户数量。。。

因为以上诸多不确定的因素,本问题没有标准答案。我们的答案是:请优化并测试自己的VPS(网站),让事实来说话。

美国加州硅谷VPS大量上线

Posted by zuzhihui in vps技术 on 2009/07/24 with No Comments

最近我们美国硅谷数据中心新增加的一批设备上线了!为了庆祝和促销,我们推出了最低7折的优惠:

优惠码:NEW70LINUX 适用于美国Linux VPS,价格打7折
优惠码:NEW77WIN  适用于美国Windows VPS,折扣是77折

欢迎大家选购美国VPS!

怎样重置Kloxo密码

Posted by zuzhihui in vps技术 on 2009/06/23 with No Comments

忘记Kloxo的admin密码后,运行下面的命令即可重置admin密码:

/script/resetpassword master [password]

其中[password]表示新密码

端午节献礼–RASHOST自主研发的ras-shell闪亮登场!

Posted by zuzhihui in vps技术 on 2009/05/28 with 6 Comments

我们自主开发的ras-shell终于在端午节的今天闪亮登场,开始服役了。 ras-shell的当前版本是0.1,版本代号是”粽子”。

ras-shell是一个类似HyperVM,用来管理VPS的一个工具。ras-shell的功能包括:关闭VPS,启动VPS,登录VPS的Console,Rebuild VPS等。目前,我们曾经用过的HyperVM已经退役,以后也不会再使用HyperVM,所有的VPS都将使用ras-shell来管理。

ras-shell和Kloxo(原名LxAdmin)控制面板不是同一类产品,大家不要混淆了。ras-shell和Kloxo最大的不同是ras-shell可以在VPS死机或者VPS网络不通的情况下操作VPS。ras-shell的程序是运行在VPS所在的物理主机上,而Kloxo程序是运行在VPS上。ras-shell和Kloxo可以同时使用,两者功能完全不同,不会有任何冲突。

以前使用HyperVM的VPS客户们如果想使用ras-shell,可以通过服务单系统给提交一个服务单让客服给手工开通ras-shell功能。

从今天开始所有新开通的VPS都将自动开通ras-shell。

推荐新客户购买VPS,终身有提成

Posted by zuzhihui in vps技术 on 2009/05/25 with 12 Comments

欢迎各位客户推荐新客户购买RASHOST VPS,您推荐的新客户每个月消费额的一部分自动存入您的RASHOST帐户,您的帐户余额可以用于购买VPS,也可以提现金出来(需满50元)。

推荐提成过程如下:

  1. 首先,您需要拥有一个RASHOST客户中心帐户
  2. 登录客户中心,在 http://my.rashost.com/affiliates.php 您会看到您的唯一推荐链接
  3. 您把唯一推荐链接发到博客,论坛,社区上,或者通过email发给您的朋友
  4. 只要是点击您的推荐链接过来的新客户,网站会自动记录这个客户是您推荐过来的,只要这个客户有任何消费,系统都会自动提成到您的帐户中去。这些提成详细记录在 http://my.rashost.com/affiliates.php ,您可以随时查询。满50元后可以提现。

我能否自己推荐自己?

不行,我们不允许自己推荐自己,详见 http://rashost.com/blog/self-referral

Back to Top

2007-2017 © 北京瑞豪开源科技有限公司 京ICP备13004995号-2