换用阿里云服务器的愉快折腾史

新的服务器让我折腾了 5 天,现在终于配置好整个服务器,上线运行了。

整个过程很艰辛,很折腾,但是现在折腾好后感觉不能再棒!xi27

现在我太想把这几天的折腾历史给写下来,谁也不要拦我!

还是先秀个速度,阿里云的服务器确实挺赞的:

捕获

这是我没开 CDN,甚至没开启 WordPress 的缓存插件,首页直接测速的效果,直接全国飙绿,屌炸天!


本站建立于 2013 年暑假,采用主机屋 win 虚拟主机,14 年暑假搬迁至华夏名网 Linux 虚拟主机,今年暑假又搬迁至阿里云的云主机,明年还会搬吗。。。?

·

1、阿里云大打折的诱惑太大

好端端的华夏名网的虚拟主机都还有 1 年的期限,为什么要换服务器,首先是我早就想玩玩云主机了,就算不买,迟早也会在虚拟机里过过瘾的。

第二点,也就是最重要的一点 —— 价格。是的,500 一年的云服务器有点小贵,并且华夏名网的虚拟主机确实不错,速度搭配 CDN 还是很满意的,而服务的稳定性也无可挑剔。

然而,阿里云的大打折尽然就这么突然让我看到了!

捕获

只有在校大学生才有购买资格!在官网上没有推广链接,有的只是论坛中的一个置顶帖

加上阿里云买 10 月送 2 月的传统,一年只需要 99。。。

配置是单核 1G 内存,足够咱使用,宽带方面是按量付费,但是和其他途径买不同的是前 15G 流量是免费的!

xi52

卧槽,简直是为我量身定做的!不买还是人?(旁白:又是一个被阿里祸害的少年)

·

服务器采用 windows 还是 linux 是个大问题

个人觉得阿里云对 Linux 用户不公平,首先同样配置的主机,win 和 linux 是一样的售价,事实上,windows sever 的授权费阿里给平摊到了所有用户的头上。

其次,采用 windows,系统盘大小是 40G,而 linux 就只有 20G,虽然 windows 占用量及使用量都较大,但毕竟多出来了 20G(后来实测 win2008R2 外加全套 php 环境,只占用 15G)

鉴于以上 2 点原因,最初就选择了 winSever。

配置 IIS 环境时也是遇到了好多问题,也不想在 win 平台上用 Apache、Nginx,重装数次,以及在虚拟机中演练数次后,也算是摸索了出了正确的方法。

由于不停需要重装然后重头来过,我甚至还给自己写了一个简要的流程,按照此流程在 win2008R2 中轻松搭建好 PHP 环境,留给需要的人吧:

无标题

其中如果不安装 VC11 runtime,看似一切正常,一运行 php 页面就会返回 500 错误,让人一头雾水。

如果不装 Dynamic Cache Sevice,系统会让缓存文件塞满整个内存,直到 Out of mem,最大生成 4Gb 的缓存,而我们的云主机总共才 1Gb 啊。这是 Win2008 的一个 BUG,这个补丁是微软官方出的,安装后缓存文件就最多只会占用 90% 的物理内存(微软不行啊!)

不设置 IUSR 权限,PHP 文件对站点目录将只有读取权限,而不能修改,产生很多神奇的反映。。。

我想说的是,最终能将这些问题一一解决,完美的搭建出 PHP 环境,我还是挺拼的~ xi19

.

Linux 方案的不足

每当配置 winSever 出现障碍时,我就会想:要是用 Linux 就好了,于是、、、就重装成 Linux 又开始折腾 Linux,但折腾一会儿发现也不好弄,又感叹还是 win 好,于是又重装成 win 继续折腾。。。

总共重装了超过 10 次,反正现在我是 win 和 linux 都会搭建了。xi35

Linux 没有图形界面,最初我想的是采用控制面板来操作。也就是安装相应的服务后,会打开某个端口,用 http 协议访问即可进入图形化的控制面板,包括增添网站、FTP都在网页上直接操作,就像虚拟主机的面板那样,还是很方便的。

我最先了解到的是 WDCP(http://www.wdlinux.cn/wdcp/),有名的国产免费面板,但是详细了解后才发现作者已经不对其更新新功能了,只是偶尔的补一下已知的安全漏洞。

面板上手感觉还是很方便的,但是连 Nginx 用的都是 n 年前的老版本,不担心其安全性,也真让人担心其运行的稳定性和效率啊。

另一个有名的国产面板是 AMH,居然收费,6 元/月,可是我的服务器才 9.9 元/月好吗?-。-

此外,我还尝试了国外的几个控制面板:Virtualmin、Webmin、ZPanel,可是都太复杂了,完全看不懂啊,还是配置 IIS 来得方便。

·

Win 方案的缺陷

学 PHP 就不要用 win 平台!学 PHP 就不要用 win 平台!学 PHP 就不要用 win 平台!xi30

无数的这类言论在网上不知见过了多少,但我确是在 win 环境搭建好后,才终于醒悟。。。

首先使用 Linux,可以搭配使用 HHVM、Xcache 等 PHP 加速套装,而 win 的话虽然现在支持了 FastCGI 速度也不差了,但还是弱于 Linux 一分的。

什么编码之内的问题现在也都不是问题,但最让我受不了的是 win 对伪静态的不佳支持。

翻阅了 WordPress 官方的文档,以及 IIS 的文档,开启了对本站的伪静态,可以访问 https://hzy.pw/p/5 这样的链接了,但后来又发现无法访问 https://hzy.pw/p/tag/浏览器 这样的伪静态中带中文的链接,直接 404.

百度后知道这是由于 win 在进行伪静态跳转时,由于编码问题导致的。可是,在 Linux 环境下则是没有任何问题的!

此问题在稍作研究后没有找到有效的解决方案,也根本不想去找了。

也许采用 Apache 等就可以解决伪静态的这个问题,但在 win 下使用 Apache 效率又不如 IIS,并且谁知道以后还会不会出现类似的对 PHP 兼容不佳的小问题。

此外,win 由于有图形界面,以及过多的其他服务在运行,硬件资源占用也明显更多。

·

最终我的选择

CentOS + Nginx + PHP + MariaDB + Zend + Memcached + Jemalloc

鉴于 win 对 php 的不良好支持,最终还是选择了 CentOS,yum 超级好用,1G 内存所以选择了 6.5_x32 版本。

之前觉得 Linux 使用可视化面板不靠谱,首先一套软件都不是最新版,而且虽然有了可视化控制台,设置反而太多太繁琐,根本不会用。

知道我看到了这个:lnmp 环境一键安装包。采用脚本一键安装并配置好 php 环境,之后的所有建站操作也都是在命令行下操作,事实上比想象的要简单。

一键包有不少,我用的是 https://blog.linuxeye.com/31.html,是谷歌搜索 lnmp 第一条搜索结果,是国人的作品,也在 Github 上开源,从 2013-3 到现在 2015-9 已经有了 553 次更新,作者还是 HHVM 项目的提交者之一,还是非常靠谱的。

vhost_del

常用的操作作者都提供了脚本,用起来很简单。

我运行了一下后,也就是手动去 nginx.conf 设置了一下 www 到 @ 的 301 重定向,以及提升了 FTP 帐号的权限。其他一切的一切都已经适配好了,包括 memcached 和 jemalloc 等高大上的东西。

用起来很满意,一切太简单了!


捕获

捕获2

xi8 现在本人对本站的新服务器的表现表示非常满意,简直棒棒的!

3 条评论
  1. 我遇到阿里云的一些无耻问题,阿里云安全做的简单粗暴,也存在一些致命的安全漏洞,服务态度跟大爷似的,建议还是考虑更换云厂商为好,不然早晚会有被阿里云痛苦折磨的一天。

  2. 不是学程序的不懂弄的啥,还是有种觉得很牛的感觉!还有,你这精力也太旺盛了点,太能折腾了

发表一条评论