0%

阿里云ECS配置LNMPA服务器

购买阿里云ECS(aliyun Elastic Compute Service)

建议最初可以选择最低配置,因为后续升级也非常容易。参考:在阿里云 CentOS 服务器(ECS)上搭建 nginx + mysql + php-fpm 环境

  • 操作系统建议选择Linux,资源占用低,网络性能好,不过是纯命令行的,如果不喜欢可以选择Windows;
  • 建议选择比较流行的且较快的Ubuntu,版本建议选择最新的长期支持版本14.04,如果不习惯也可以选择CentOS;
  • 一般情况下,Linux系统盘的20G够用了(可用18G),如果网站还要上传图片和音视频则需要购买数据盘;

安装LNMPA

  LNMPA是什么?
  也许大家对LAMP、LNMP比较熟悉,LAMP代表Linux下Apache、MySQL、PHP这种网站服务器架构;LNMP代表的是Linux下Nginx、MySQL、PHP这种网站服务器架构。LNMPA代表的是Linux下Nginx、MySQL、PHP、Apache这种网站服务器架构,是结合LAMP与LNMP各自的优点而产生的新的网站服务器架构。
  我们为什么采用LNMPA这种架构?
  采用Linux、PHP、MySQL的优点我们不必多说。
Nginx是一个小巧而高效的Linux下的Web服务器软件,与Apache相比,消耗资源更少,支持的并发连接,更高的效率,反向代理功能效率高、静态文件处理快等。
Apache是一款老牌的Web服务器软件,在高并发时对队列的处理比FastCGI更成熟,Apache的mod_php效率比php-cgi更高且更稳定、对伪静态支持好,不需要转换、多用户多站点权限等方面有着更好的效果……
  LNMPA这种架构有什么优势?
  LNMPA使用Nginx作为前端服务能够更快更及时的静态页面、js、图片等,当客户端请求访问动态页面时由Nginx的反向代理给Apache处理,Apache处理完再交予Nginx返回给客户端。
采用LNMPA能够更好的解决LNMP架构中由于PHP-FPM方面产生的502错误,同时能够为提供更安全的多用户多站点环境。

Windows登陆远程主机

  下载Putty解压并运行putty.exe,输入远程主机的公网IP,点击打开,输入账号(Linux为root)和密码登陆即可。

首先安装LNMP:http://lnmp.org/install.html

LNMP脚本就会自动安装编译Nginx、MySQL、PHP、phpMyAdmin、Zend Optimizer这几个软件。
安装时间可能会几十分钟到几个小时不等,主要是机器的配置网速等原因会造成影响。
安装完成后命令行提示:

在浏览器里输入公网IP可以看到默认页面:

然后安装Apache:http://lnmp.org/lnmpa.html

注意:低于1G内存不建议使用LNMPA,升级到LNMPA后无法降回LNMP。

启用 InnoDB(一键LNMP已安装InnoDB,只是没有启用)

/etc/init.d/mysql stop
vim /etc/my.cnf
将默认引擎改为InnoDB,并注释掉loose-skip-innodb

/etc/init.d/mysql start

参考:MySql中启用InnoDB数据引擎的方法
如果没有安装InnoDB需要安装:
mysql中如何安装innodb pluginmysql 安装innodb支持
MySQL命令:MySQL命令行登录MySQL数据库命令行工具

LNMP状态管理命令

LNMP状态管理命令:

LNMP状态管理: /root/lnmp {start|stop|reload|restart|kill|status}
Nginx状态管理:/etc/init.d/nginx {start|stop|reload|restart}
MySQL状态管理:/etc/init.d/mysql {start|stop|restart|reload|force-reload|status}
Memcached状态管理:/etc/init.d/memcached {start|stop|restart}
PHP-FPM状态管理:/etc/init.d/php-fpm {start|stop|quit|restart|reload|logrotate}
PureFTPd状态管理: /etc/init.d/pureftpd {start|stop|restart|kill|status}
ProFTPd状态管理: /etc/init.d/proftpd {start|stop|restart|reload}

如重启LNMP,输入命令:/root/lnmp restart 即可,单独重启mysql:/etc/init.d/mysql restart

LNMPA状态管理命令:

LNMPA状态管理: /root/lnmpa {start|stop|reload|restart|kill|status}
Nginx状态管理:/etc/init.d/nginx {start|stop|reload|restart}
MySQL状态管理:/etc/init.d/mysql {start|stop|restart|reload|force-reload|status}
Memcached状态管理:/etc/init.d/memcached {start|stop|restart}
PureFTPd状态管理: /etc/init.d/pureftpd {start|stop|restart|kill|status}
ProFTPd状态管理: /etc/init.d/proftpd {start|stop|restart|reload}
Apache状态管理:/etc/init.d/httpd {start|stop|restart|graceful|graceful-stop|configtest|status}

挂载数据盘

购买的数据盘默认没有格式化和分区,需要手动操作:Linux 系统挂载数据盘

其他

Linux内存占用高的原因:Linux VPS内存占用那么多?- 解析Linux内存机制

Putty连接异常中断后如何注销其他用户:如何注销其他已登录的用户?