AWS实战攻略 —— EC2、RDS、S3安装配置PHP+Nginx服务器

今天公司有个项目要把网站服务器移到AWS上,在这里记录下,给自己日后使用,也分享给大家。

AWS 提供的解决方案如下:

6c69db4a-2e1b-4295-962f-944d40967f09-300x224 - AWS实战攻略 —— EC2、RDS、S3安装配置PHP+Nginx服务器

简单的说就是,EC2的主机装PHP和Load Balance,RDS装数据库,S3和CloudFront做云处理。下面开始操作

首先RDS不多说了,弄个Instance,然后上传数据库即可。要注意的是,别忘记设置Security groups,不然会导致无法连接数据库。这块有问题的留言私下找我吧。当然你也可以直接把数据库放在EC2上。

EC2我没有选择Amazon Linux,而是RedHat EL,原因是我觉得我更熟悉RHEL一点,而且Amazon Linux用的是Apache,预安装的东西有单多。

创建好Instance之后就是连接ssh的问题,Amazon的安全措施有点麻烦,当你建立Instance的时候你会获得一个pem的证书,好好保存。

Mac直接打开terminal 使用证书链接AWS EC2

ssh -i 证书地址 ec2-user@ec2-54-236-186-128.compute-1.amazonaws.com

Windows就用puppy。不明白点这里:http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EC2_GetStarted.html#ec2-connect-to-instance-linux

我是2016年6月,默认的是RHEL7,请根据自己的情况对以下稍作修改,如果是RHEL6的版本,可以参考我之前的文章:《CentOS 6.5安装配置LNMP服务器(Nginx+PHP+MySQL)》

链接后就开始安装吧,首先你会发现他没有wget。

yum install wget

之后你发现他的库没有nginx,只能使用第三方了,注意你的版本号。

wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-7.noarch.rpm
sudo rpm -ivh epel-release-7-7.noarch.rpm

完成后,安装nginx

sudo yum install nginx
sudo systemctl start nginx
sudo systemctl enable nginx

下一步,安装图形界面,这一步其实可以忽略,不过我习惯了VNC所以还是装了。

先安装图形

sudo yum groupinstall 'Server with GUI'

安装VNC

sudo yum install tigervnc-server xorg-x11-fonts-Type1
sudo cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:3.service

修改参数,将黄色的换成你的用户名,AWS的都是EC2-USER

sudo vi /etc/systemd/system/vncserver@:3.service

vnc-server-config-file-300x99 - AWS实战攻略 —— EC2、RDS、S3安装配置PHP+Nginx服务器

设置密码,记得换到你刚才那个用户下

vncserver

启动vnc

sudo systemctl daemon-reload
sudo systemctl start vncserver@:3.service
sudo systemctl enable vncserver@:3.service

 

之后是PHP,nginx需要php-fpm,但是问题来了,发现没有能装的库,继续老办法:

wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
wget http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo rpm -Uvh remi-release-7.rpm epel-release-latest-7.noarch.rpm

编辑/etc/yum.repos.d/remi.repo 改[remi] main repo中的enabled=1

sudo yum install php php-fpm
sudo yum install php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt

之后nginx和php的配置,我就不多说了,参考下:

CentOS 6.5安装配置LNMP服务器(Nginx+PHP+MySQL)

Nginx 配置文件优化详解

喜欢的话订阅一个呗~第一时间收到文章更新哟~

发表评论

电子邮件地址不会被公开。