Linux搭建生产环境Nginx+Apache血的教训

         一提到“生产环境”这四个字,别人不懂的以为是装逼的感觉,其实不是的,“生产环境”是企业里 产品线的部署环境,实打实的的运作业务的流水线,和工厂里的流水线性质是一样的,只不过一个是软件产品,有过产品开发经验的应该懂得区别,当然小打小闹就不能叫生产环境了,只能说web服务器环境,这是明显的个人和企业的区别,就像当年土八路和国军的区别...不能说了,等下会被河蟹!

        服务器环境为什么要用Nginx+Apache,Nginx处理静态内容效率和速度简直爆了,但是很头痛的经常碰到502,500等错误...Apache则是处理动态的稳定,俩者互补下,性能对比就出来了,更多测试数据,相信谷歌一下马上就有了。程序员做久了你会发现自己对性能越来越看重,开发的东西必须要飞奔状态,才能抚慰经过加班摧残之后的弱小心灵。这不是装逼,程序员的世界,你永远不会懂!之前使用的是windows server下通过优化xampp搭建的web环境,当时只为省时省力,懒得折腾Linux,后来发现实在是坑爹啊。。不忍直视,高并发时Apache就撑不住了,一段时间网站日均IP差不多3-5K样子,各种问题,所以不得不换web服务器。才有了下文。

        服务器使用的是阿里云的,说真的确实强悍,瞬间秒杀某橙、某壤、某通...国内大不多数IDC都会大言不惭的说99.99%不宕机,真的出了问题,你就是属于那0.01%的,阿里云的带宽有点子贵,这是实话。从5月19号开始折腾的Linux,试了很多种方案。

        第一种:手工编译

这种方式不值得推荐,手工推荐有时候会碰到编译失败的现象,导致后面一大堆的问题,一个个谷歌排查,浪费的不只是时间,还是浪费的青春。安装方法百度、谷歌一大堆,最最值得信任的方法是官方的文档!没有之一!多看官方的文档,会发现很多问题都是出在我们自身,很少会真的碰到版本bug的现象,除非你真的是人品弱爆了。 

        第二种:使用服务器套件

其实使用服务器套件也是一种便捷快速的方法,服务器套件是在第一种方式的基础上给你把web服务器的配置文件给你预先配置好了而已,你做的只是根据你的业务需求进行自主选择而已。服务器套件也很多选择.

安装过LuManager,不予评论,不适合我而已.特别是产生的垃圾文件,在后台一个个清除才能重启nginx....安装过ezhttp,这个套件很灵活,自己配置很方便,都是通过命令直接搞定.安装过Lnamp一键包,都很方便.开发人员不需要wdcp这种傻瓜式的控制面板,就把wdcp它卸了就是。安装wdcp也是挺有技巧的,centos下有时候也会碰到编译失败的问题(客家网络就是明显的例子),直接安装RPM包,5分钟搞定,这种方式不会碰到任何问题。基本都是wdcp官方网站的文档,这边摘录下,可能会用的到。 

需要使用ROOT登陆SSH进行操作,使用Xshell之类软件。

安装步骤:

1、下载:

wget http://down.wdlinux.cn/in/lanmp_wdcp_24_in.sh

2、安装:

sh lanmp_wdcp_24_in.sh

3,搞定。

注:wordpress安装502错误 无法接收数据解决办法。

对于lanmp/wdcp不支持微博/QQ登录(https)的问题的解决办法

原因是,apache里没有对SSL的支持,只要重新编译下apache就可以

如下执行可以完成:

wget http://down.wdlinux.cn/in/http2222_ssl.sh
sh http2222_ssl.sh

wdcp管理系统后台访问地址

http://ip:8080
默认用户密码
admin
wdlinux.cn

mysql默认的用户密码

root
wdlinux.cn

4,卸载:输入下面的命令即可。

sh lanmp_wdcp_24_in.sh uninstall

5,安装插件。

5.1,memcache的安装:

下载

wget -c http://down.wdlinux.cn/in/memcached_ins.sh

安装

sh memcached_ins.sh

服务启动或停止

service memcached start|stop|restart

或在后台启动也可以

5.2,mysqli的安装

wget -c http://down.wdlinux.cn/in/mysqli_ins.sh
chmod 755 mysqli_ins.sh
./mysqli_ins.sh

5.3,pod_mysql的安装

wget -c http://down.wdlinux.cn/in/pdo_mysql_ins.sh
chmod 755 pdo_mysql_ins.sh
./pdo_mysql_ins.sh

5.4,mysql innodb的安装

wget -c http://down.wdlinux.cn/in/mysql_innodb_ins.sh
chmod 755 mysql_innodb_ins.sh
./mysql_innodb_ins.sh

5.5,libmcrypt的安装

wget -c http://down.wdlinux.cn/in/libmcrypt_ins.sh
chmod 755 libmcrypt_ins.sh
./libmcrypt_ins.sh

5.6,php zip的支持

wget -c http://down.wdlinux.cn/in/zip_ins.sh
chmod 755 zip_ins.sh
./zip_ins.sh

6,想要用独立IP直接开站点。

登陆面板后,新增一个站点,域名填写“default”即可。

7,wdcp工具集(你会用到的,在SSH里面操作。)

虽然个人觉得wdcp已经不错了,但由于系统,环境,基础等各种原因,还是会有些这样或那样的问题
为了新手能更好的处理解决这些问题,在wdcp2.2开始,提供了些常见问题的修复检查工具,以便能更好的使用

强制修改mysql的root密码,在忘记mysql密码时有用

sh /www/wdlinux/tools/mysql_root_chg.sh

ftp配置文件检查,在FTP不能连接或登录时有用

sh /www/wdlinux/tools/pureftp_conf_check.sh

wdcp权限检查,在wdcp后台不正常或部分功能无法使用时有用

sh /www/wdlinux/tools/wdcp_perm_check.sh

wdcp数据库无法连接的修复,如登录后台提示"无法连接mysql,请检查mysql是否已启动及用户密码是否设置正确"

sh /www/wdlinux/tools/mysql_wdcp_chg.sh

wdcp后台登录密码忘记的修改方法

sh /www/wdlinux/tools/wdcp_login_chp.sh

wdcp后台限制登录IP设置错误的修复方法

sh /www/wdlinux/tools/wdcp_login_cbip.sh

wdcp后台限制登录错误次数的修复方法

sh /www/wdlinux/tools/wdcp_cdip.sh

修改时间和同步时间的方法

sh /www/wdlinux/tools/wdcp_ntp.sh

8,相关说明:

所有软件安装目录/www/wdlinux

站点配置文件
/www/wdlinux/nginx/conf/vhost
/www/wdlinux/apache/conf/vhost

数据库配置文件/www/wdlinux/etc/my.cnf
数据库数据文件目录 /www/wdlinux/mysql/var

9,相关软件版本

httpd-2.2.22
nginx-1.0.15
php-5.2.17
mysql-5.1.63
phpmyadmin-3.3.7
zend-3.3.3
eAccelerator-0.9.5.3
pure-ftpd-1.0.35

更多一键包的说明请看
http://www.wdlinux.cn/bbs/thread-2523-1-1.html

部分组件的可选安装,如memcache,mysqli,pdo_mysql,innodb等
具体的安装方法可见http://www.wdlinux.cn/bbs/thread-1356-1-1.html

 搞得久了,相信明智的人都会知道,我们不必把精力花在怎么一步步编译,一步步去优化上浪费时间,我们把精力花在自己精通的领域,这种环境配置问题,有相关的解决方案就用相关的解决方案!这样才显得我们做的事有价值。专注业务!!!  

你可能感兴趣的:(服务器操作相关)