作為一個(gè)創(chuàng)業(yè)產(chǎn)品,Y米App(游戲陪玩、游戲代練踊东、視頻交友、語(yǔ)音交友綜合娛樂(lè)社交平臺(tái))跟大多數(shù)早期App一樣刚操,選擇了阿里云作為公司網(wǎng)站和App的服務(wù)端闸翅。當(dāng)時(shí)最新版的CentOS是7.2,我們毫不猶豫地選擇這個(gè)最新的版本菊霜。但是對(duì)于一個(gè)新手來(lái)說(shuō)坚冀,在阿里云上遇到了很多坑,完全按照阿里云上的幫助和使用說(shuō)明鉴逞,基本上是跑不起來(lái)的记某,特別是最后的一個(gè)步驟,是很多技術(shù)文章都沒(méi)提到過(guò)的构捡。廢話少說(shuō)辙纬,直接來(lái)實(shí)操的:
一、購(gòu)買阿里云ECS服務(wù)
根據(jù)自己的產(chǎn)品對(duì)CPU叭喜、帶寬贺拣、內(nèi)存等硬件配置的要求,選擇對(duì)應(yīng)的配置捂蕴,調(diào)試期間我們一般選擇1核1G 1M譬涡,默認(rèn)選擇40G云盤(pán)。這樣一個(gè)月也就幾十塊的服務(wù)端成本啥辨。產(chǎn)品上線后涡匀,我們?cè)俑鶕?jù)用戶導(dǎo)入規(guī)模,初期選擇了4核8G 10M的配置溉知。
二陨瘩、準(zhǔn)備安裝調(diào)試環(huán)境的工具
Xshell 5比阿里云自己提供的Web命令行工具方便太多了腕够。而Xftp 5又是Xshell 5的最佳搭檔,在Xshell 5中配置好阿里云分配的IP地址和賬號(hào)密碼后舌劳,能夠快速通過(guò)Xftp 5管理阿里云服務(wù)器上的配置文件和數(shù)據(jù)帚湘,包括后期用到的PhpMyAdmin,也會(huì)經(jīng)常用到Xftp 5甚淡。
三大诸、 檢查系統(tǒng)環(huán)境
1、檢查是否安裝過(guò)Apache
rpm -qa| grep httpd
或者:
apachectl-v
或者:
httpd -v
3贯卦、檢查是否安裝過(guò)Mysql
servicemysqld start
如果沒(méi)有安裝资柔,請(qǐng)按照下面的步驟安裝上這些軟件,
四撵割、安裝Apache贿堰、PHP、Mysql
1啡彬、安裝apache
[root@localhost~]# yum -y install httpd
安裝提示如下:
Installed:
httpd.x86_64 0:2.4.6-40.el7.centos.4
DependencyInstalled:
apr.x86_64 0:1.4.8-3.el7apr-util.x86_640:1.5.2-6.el7
httpd-tools.x86_640:2.4.6-40.el7.centos.4mailcap.noarch0:2.1.41-2.el7
Complete!
此時(shí)的提示即表示Apache安裝成功了羹与!
2、安裝PHP
[root@localhost~]# yum -y install php
安裝提示如下:
Installed:
php.x86_64 0:5.4.16-36.3.el7_2
DependencyInstalled:
libzip.x86_64 0:0.10.1-8.el7php-cli.x86_640:5.4.16-36.3.el7_2
php-common.x86_64 0:5.4.16-36.3.el7_2
Complete!
此時(shí)的提示即表示PHP安裝成功了外遇!
3注簿、安裝php-fpm
[root@localhost~]# yum -y install php-fpm
安裝提示如下:
Installed:
php-fpm.x86_64 0:5.4.16-36.3.el7_2
Complete!
此時(shí)的提示即表示PHP-fpm安裝成功了!
4跳仿、安裝MySql
[root@localhost~]# yum -y install mysql
安裝提示如下:
Installed:
mariadb.x86_64 1:5.5.50-1.el7_2
DependencyUpdated:
mariadb-libs.x86_64 1:5.5.50-1.el7_2
Complete!
此時(shí)的提示即表示MySql安裝成功了诡渴!
7.2版本的Centos已經(jīng)把mysql更名為mariadb,表示安裝成功菲语!
5妄辩、安裝mysql-server
CentOS
7.2版本將MySQL數(shù)據(jù)庫(kù)軟件從默認(rèn)的程序列表中移除,用mariadb代替了山上,CentOS7.2配置教程上眼耀,大多都是安裝mariadb,因?yàn)閏entos7默認(rèn)將mariadb視作mysql佩憾。
安裝mariadb
[root@localhost~]# yum install -y mariadb
安裝成功O啊!妄帘!
6楞黄、安裝php-mysql
[root@localhost~]# yum -y install php-mysql
安裝提示如下:
Installed:
php-mysql.x86_64 0:5.4.16-36.3.el7_2
DependencyInstalled:
php-pdo.x86_64 0:5.4.16-36.3.el7_2
Complete!
此時(shí)的提示即表示php-mysql安裝成功了!
五抡驼、安裝基本常用擴(kuò)展包
1鬼廓、安裝Apache擴(kuò)展包
yum -yinstall httpd-manual mod_ssl mod_perl mod_auth_mysql
2、安裝PHP擴(kuò)展包
yum -yinstall php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc php-devel
3致盟、安裝Mysql擴(kuò)展包
yum -yinstall mysql-connector-odbc mysql-devel libdbi-dbd-mysql
六碎税、配置Apache尤慰、mysql開(kāi)機(jī)啟動(dòng)
重啟Apache、mysql服務(wù)(注意這里和centos6有區(qū)別,Cenots7+不能使用6的方式)
systemctl
start httpd.service #啟動(dòng)apache
systemctl
stop httpd.service #停止apache
systemctl
restart httpd.service #重啟apache
systemctl
enable httpd.service #設(shè)置apache開(kāi)機(jī)啟動(dòng)
mariadb,安裝完成以后使用下面的命令開(kāi)啟數(shù)據(jù)庫(kù)服務(wù):
#啟動(dòng)MariaDB
[root@localhost~]# systemctl start mariadb.service
#停止MariaDB
[root@localhost~]# systemctl stop mariadb.service
#重啟MariaDB
[root@localhost~]# systemctl restart mariadb.service
#設(shè)置開(kāi)機(jī)啟動(dòng)
[root@localhost~]# systemctl enable mariadb.service
重啟Apache服務(wù)
servicehttpd restart
七雷蹂、配置Mysql(MariaDB)
初次安裝mysql是沒(méi)有密碼的,我們要設(shè)置密碼伟端,mysql的默認(rèn)賬戶為root
設(shè)置MySQL數(shù)據(jù)root賬戶的密碼:
[root@localhost~]# mysql_secure_installation
當(dāng)出現(xiàn)如下提示時(shí)候直接按回車:
Entercurrent password for root
出現(xiàn)如下再次回車:
Set rootpassword? [Y/n]
出現(xiàn)如下提示輸入你需要設(shè)置的密碼,這里輸入了root,輸入密碼是不顯示的萎河,回車后再輸入一次確認(rèn):
Newpassword:
接下來(lái)還會(huì)有四個(gè)確認(rèn)荔泳,分別是:
Removeanonymous users? [Y/n]
Disallowroot login remotely? [Y/n]
Removetest database and access to it? [Y/n]
Reloadprivilege tables now? [Y/n]
八蕉饼、配置阿里云環(huán)境
配置過(guò)程看上去都配好了虐杯,很多初學(xué)者會(huì)發(fā)現(xiàn),配置好的Web歡迎頁(yè)面打不開(kāi)昧港,很多文章都提到如下三種解決方案:
1停止防火墻服務(wù)
[root@mycentosshell]#?systemctl?stop?firewalld.service
2 /etc/init.d/iptablesstop關(guān)閉防火墻
3開(kāi)放端口
iptables-A INPUT -p tcp --dport 22 -j ACCEPT
iptables-A OUTPUT -p tcp --sport 22 -j ACCEPT
iptables-A INPUT -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables-A OUTPUT -p tcp --sport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
即使上述方案都OK了擎椰,但是仍然網(wǎng)頁(yè)仍然打不開(kāi),在Y米App服務(wù)器配置過(guò)程中创肥,我們發(fā)現(xiàn)根源在于阿里云ECS的實(shí)例中的安全組規(guī)則达舒,默認(rèn)設(shè)置了很多訪問(wèn)的權(quán)限限制。通過(guò)修改“入方向”和”出方向”的授權(quán)策略(允許)叹侄、協(xié)議類型(全部)巩搏、端口范圍(-1/-1)、授權(quán)對(duì)象(0.0.0.0/0)后趾代,歡迎頁(yè)面就能打開(kāi)了贯底。
九、安裝PhpMyAdmin
yuminstallphpmyadmin php-mcrypt
phpMyAdmin的默認(rèn)安裝目錄是/usr/share/phpMyAdmin撒强,你如果覺(jué)得配置數(shù)據(jù)庫(kù)很繁瑣禽捆,可以用Xftp 5直接把這個(gè)文件夾移到你的Web/Html目錄下,開(kāi)啟正常的數(shù)據(jù)庫(kù)配置和訪問(wèn)飘哨。