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

  • Post author:
  • Post category:linux




一提到“生产环境”这四个字,别人不懂的以为是装逼的感觉,其实不是的,

“生产环境”是企业里 产品线的部署环境,实打实的的运作业务的流水线,和工厂里的流水线性质是一样的,只不过一个是软件产品,有过产品开发经验的应该懂得区别,当然小打小闹就不能叫生产环境了,只能说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



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


专注业务!!!



版权声明:本文为panfanglin原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。