????雖然我不是第一次部署LAMP秸滴,但是還是踩到了坑雹嗦,我使用的云服務(wù)器是阿里云的Centos7.3 64位啥酱,感覺使用Centos7以上的版本都是可以的冠跷,阿里云的搭建動(dòng)態(tài)WordPress網(wǎng)站是Centos6.8的版本南誊,很多東西都不適合了。參考了阿里云官方部署LAMP教程蜜托,但是默默吐槽一句抄囚,官方教程真的不好用,一開始我還按照阿里云官方的教程嘗試搭建ghost博客橄务,但是也失敗了幔托。因?yàn)槲抑鞍凑瞻⒗镌乒俜浇坛檀罱ǔ晒^一次LAMP,所以百思不得其解究竟是哪個(gè)環(huán)節(jié)出了岔子蜂挪,于是找到阿里云文檔的GitHub倉(cāng)庫(kù)重挑,找到18年9月的一個(gè)版本,對(duì)照棠涮,這個(gè)版本才搭建成功谬哀。阿里云18年9月搭建LAMP教程,防止他之后再鬧什么幺蛾子严肪,我就搬運(yùn)一下吧史煎。
????LAMP指Linux+Apache+MySQL/MariaDB+Perl/PHP/Python谦屑,是一組常用來搭建動(dòng)態(tài)網(wǎng)站或者服務(wù)器的開源軟件。它們本身都是各自獨(dú)立的程序劲室,但是因?yàn)槌1环旁谝黄鹗褂寐兹裕瑩碛辛嗽絹碓礁叩募嫒荻龋餐M成了一個(gè)強(qiáng)大的Web應(yīng)用程序平臺(tái)很洋。
????在部署之前充蓝,確認(rèn)實(shí)例所在的安全組已經(jīng)放行了服務(wù)所需的端口,主要有HTTP 22|ssh 22|MYSQL 3306喉磁,通過xshell等軟件遠(yuǎn)程連接實(shí)例谓苟。
準(zhǔn)備工作
設(shè)置防火墻
????關(guān)閉防火墻firewalld放行80、22等端口。
-
運(yùn)行命令關(guān)閉防火墻揪惦。
systemctl stop firewalld.service
-
運(yùn)行命令關(guān)閉防火墻開機(jī)自啟動(dòng)储笑。
systemctl disable firewalld.service
安裝軟件
運(yùn)行命令下載軟件、編輯和解壓文件仑撞。
yum install -y wget vim unzip
操作步驟
按以下步驟部署LAMP。
步驟1:編譯安裝Apache
-
運(yùn)行命令安裝相關(guān)依賴包妖滔。
yum install -y gcc gcc-c++ autoconf libtool
-
依次運(yùn)行以下命令安裝apr隧哮。
cd /usr/local/src/ wget http://oss.aliyuncs.com/aliyunecs/onekey/apache/apr-1.5.0.tar.gz tar zxvf apr-1.5.0.tar.gz cd apr-1.5.0 ./configure --prefix=/usr/local/apr make && make install
-
依次運(yùn)行以下命令安裝apr-util。
cd /usr/local/src/ wget http://oss.aliyuncs.com/aliyunecs/onekey/apache/apr-util-1.5.3.tar.gz tar zxvf apr-util-1.5.3.tar.gz cd apr-util-1.5.3 ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr make && make install
-
依次運(yùn)行以下命令安裝pcre座舍。
cd /usr/local/src/ wget http://zy-res.oss-cn-hangzhou.aliyuncs.com/pcre/pcre-8.38.tar.gz tar zxvf pcre-8.38.tar.gz cd pcre-8.38 ./configure --prefix=/usr/local/pcre make && make install
-
依次運(yùn)行以下命令編譯安裝Apache沮翔。
cd /usr/local/src/ wget http://zy-res.oss-cn-hangzhou.aliyuncs.com/apache/httpd-2.4.23.tar.gz tar zxvf httpd-2.4.23.tar.gz cd httpd-2.4.23 ./configure \ --prefix=/usr/local/apache --sysconfdir=/etc/httpd \ --enable-so --enable-cgi --enable-rewrite \ --with-zlib --with-pcre=/usr/local/pcre \ --with-apr=/usr/local/apr \ --with-apr-util=/usr/local/apr-util \ --enable-mods-shared=most --enable-mpms-shared=all \ --with-mpm=event make && make install
-
修改httpd.conf配置文件參數(shù):
運(yùn)行
cd /etc/httpd/
切換到/etc/httpd/目錄。運(yùn)行
vim httpd.conf
打開httpd.conf文件曲秉,按i
鍵進(jìn)入編輯模式采蚀。-
找到
Directory
參數(shù),注釋掉Require all denied
承二,并添加Require all granted
榆鼠。 -
找到
ServerName
參數(shù),添加ServerName localhost:80
亥鸠。 設(shè)置
PidFile
路徑:在文件最后添加PidFile "/var/run/httpd.pid"
妆够。按
Esc
鍵退出編輯模式,輸入:wq
保存并關(guān)閉 httpd.conf 文件读虏。
-
依次執(zhí)行以下命令啟動(dòng)Apache服務(wù)并驗(yàn)證责静。
cd /usr/local/apache/bin/ ./apachectl start netstat -tnlp #查看服務(wù)是否開啟
如果返回以下結(jié)果,說明Apache服務(wù)已經(jīng)成功啟動(dòng)盖桥。
在本地機(jī)器的瀏覽器中輸入ECS實(shí)例公網(wǎng)IP地址灾螃,如果出現(xiàn)如圖所示信息,說明Apache服務(wù)安裝成功揩徊。
-
設(shè)置開機(jī)自啟動(dòng)腰鬼。
運(yùn)行
vim /etc/rc.d/rc.local
打開rc.local文件嵌赠,按i
進(jìn)入編輯模式。-
添加
/usr/local/apache/bin/apachectl start
熄赡。 按
Esc
鍵退出編輯模式姜挺,輸入:wq
保存并關(guān)閉rc.local文件。
-
設(shè)置環(huán)境變量彼硫。
- 運(yùn)行
vi /root/.bash_profile
打開文件炊豪,按i
進(jìn)入編輯模式。 - 將
PATH=$PATH:$HOME/bin
修改為PATH=$PATH:$HOME/bin:/usr/local/apache/bin
拧篮。 - 按
Esc
鍵退出編輯模式词渤,輸入:wq
保存并關(guān)閉文件。 - 運(yùn)行
source /root/.bash_profile
重新執(zhí)行文件串绩。
- 運(yùn)行
步驟2:編譯安裝MySQL
-
依次執(zhí)行以下命令檢查系統(tǒng)中是否存在使用rpm安裝的MySQL或者M(jìn)ariaDB缺虐。
rpm -qa | grep mysql rpm -qa | grep mariadb
如果已經(jīng)安裝,則運(yùn)行以下任一個(gè)命令刪除礁凡。
rpm -e 軟件名 #注意:這里的軟件名必須包含軟件的版本信息高氮,如rpm -e mariadb-libs-5.5.52-1.el7.x86_64。一般使用此命令即可卸載成功顷牌。 rpm -e --nodeps 軟件名 #卸載不成功時(shí)使用此命令強(qiáng)制卸載
卸載后剪芍,再用
rpm -qa|grep mariadb
或者rpm -qa|grep mysql
查看結(jié)果。 -
依次運(yùn)行以下命令安裝 MySQL韧掩。
yum install -y libaio-* #安裝依賴 mkdir -p /usr/local/mysql cd /usr/local/src wget http://zy-res.oss-cn-hangzhou.aliyuncs.com/mysql/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz tar -xzvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz mv mysql-5.7.17-linux-glibc2.5-x86_64/* /usr/local/mysql/
-
依次運(yùn)行以下命令建立mysql組和用戶紊浩,并將mysql用戶添加到mysql組窖铡。
groupadd mysql useradd -g mysql -s /sbin/nologin mysql
-
運(yùn)行命令初始化MySQL數(shù)據(jù)庫(kù)疗锐。
/usr/local/mysql/bin/mysqld --initialize-insecure --datadir=/usr/local/mysql/data/ --user=mysql
更改MySQL安裝目錄的屬性:
chown -R mysql:mysql /usr/local/mysql
。-
依次運(yùn)行以下命令設(shè)置開機(jī)自啟動(dòng)费彼。
cd /usr/local/mysql/support-files/ cp mysql.server /etc/init.d/mysqld chmod +x /etc/init.d/mysqld # 添加執(zhí)行權(quán)限 vim /etc/rc.d/rc.local
在 rc.local 文件中添加
/etc/init.d/mysqld start
滑臊。 -
設(shè)置環(huán)境變量。
運(yùn)行
vi /root/.bash_profile
打開文件箍铲,按i
進(jìn)入編輯模式雇卷。-
將
PATH=$PATH:$HOME/bin:/usr/local/apache/bin
修改為PATH=$PATH:$HOME/bin:/usr/local/apache/bin:/usr/local/mysql/bin:/usr/local/mysql/bin
。說明: 此處是在編譯安裝 Apache的環(huán)境變量的基礎(chǔ)上再進(jìn)行修改颠猴。
按
Esc
鍵退出編輯模式关划,輸入:wq
保存并關(guān)閉文件。運(yùn)行
source /root/.bash_profile
重新執(zhí)行文件翘瓮。
-
啟動(dòng) MySQL 數(shù)據(jù)庫(kù)贮折。
/etc/init.d/mysqld start
出現(xiàn)如下截圖所示信息,表示MySQL啟動(dòng)成功资盅。
-
修改MySQL的root用戶密碼:初始化后MySQL為空密碼可直接登錄调榄,為了保證安全性需要修改MySQL的root用戶密碼踊赠。運(yùn)行以下命令,并按界面提示設(shè)置密碼每庆。
mysqladmin -u root password
-
測(cè)試登錄MySQL數(shù)據(jù)庫(kù)筐带。
mysql -uroot -p #-p和密碼之間無空格
運(yùn)行
\q
退出MySQL。
步驟3. 編譯安裝 PHP
-
依次運(yùn)行以下命令安裝依賴缤灵。
yum install epel-release php-mcrypt libmcrypt libmcrypt-devel libxml2-devel openssl-devel libcurl-devel libjpeg.x86_64 libpng.x86_64 freetype.x86_64 libjpeg-devel.x86_64 libpng-devel.x86_64 freetype-devel.x86_64 libjpeg-turbo-devel libmcrypt-devel mysql-devel -y wget http://zy-res.oss-cn-hangzhou.aliyuncs.com/php/php-7.0.12.tar.gz tar zxvf php-7.0.12.tar.gz cd php-7.0.12 ./configure \ --prefix=/usr/local/php \ --enable-mysqlnd \ --with-mysqli=mysqlnd --with-openssl \ --with-pdo-mysql=mysqlnd \ --enable-mbstring \ --with-freetype-dir \ --with-jpeg-dir \ --with-png-dir \ --with-zlib --with-libxml-dir=/usr \ --enable-xml --enable-sockets \ --with-apxs2=/usr/local/apache/bin/apxs \ --with-mcrypt --with-config-file-path=/etc \ --with-config-file-scan-dir=/etc/php.d \ --enable-maintainer-zts \ --disable-fileinfo make && make install
-
運(yùn)行命令復(fù)制配置文件伦籍。
cp php.ini-production /etc/php.ini
-
編輯Apache配置文件 httpd.conf,以Apache支持PHP腮出。
運(yùn)行
vim /etc/httpd/httpd.conf
打開文件鸽斟,按i
進(jìn)入編輯模式。-
在配置文件最后添加如下二行代碼利诺。
AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps
-
定位到
DirectoryIndex index.html
富蓄,修改為DirectoryIndex index.php index.html
。說明: 如果文件中沒有
DirectoryIndex index.html
慢逾,則添加上述代碼立倍。 按
Esc
鍵退出編輯模式,輸入:wq
保存并關(guān)閉文件侣滩。
-
重啟Apache服務(wù):
/usr/local/apache/bin/apachectl restart
-
測(cè)試是否能夠正常解析PHP口注。
-
依次運(yùn)行以下命令,找開index.php文件君珠。
cd /usr/local/apache/htdocs/ vim index.php
-
按
i
鍵進(jìn)入編輯模式寝志,并添加以下內(nèi)容。<?php phpinfo(); ?>
按
Esc
鍵退出編輯模式策添,并輸入:wq
保存并關(guān)閉文件材部。-
重啟Apache服務(wù):
/usr/local/apache/bin/apachectl restart
-
在本地機(jī)器的瀏覽器里輸入
http://實(shí)例公網(wǎng) IP/index.php
。如果出現(xiàn)以下頁(yè)面表示PHP解析成功唯竹。
-
步驟4. 安裝phpMyAdmin
依次運(yùn)行以下命令安裝phpMyAdmin乐导。
mkdir -p /usr/local/apache/htdocs/phpmyadmin
cd /usr/local/src/
wget http://oss.aliyuncs.com/aliyunecs/onekey/phpMyAdmin-4.1.8-all-languages.zip
unzip phpMyAdmin-4.1.8-all-languages.zip
mv phpMyAdmin-4.1.8-all-languages/* /usr/local/apache/htdocs/phpmyadmin
在本地機(jī)器瀏覽器輸入 http://實(shí)例公網(wǎng) IP/phpmyadmin
訪問phpMyAdmin登錄頁(yè)面。如果出現(xiàn)以下頁(yè)面浸颓,說明phpMyAdmin安裝成功物臂。輸入MySQL的用戶名和密碼即可登錄。
????Centos7.3按照以上步驟正確部署好LAMP后产上,在瀏覽器中輸入http://實(shí)例公網(wǎng) IP
默認(rèn)訪問的是實(shí)例中/usr/local/apache/htdocs/index.php
文件棵磷,可以進(jìn)行修改,就在步驟3第3步的第iii步晋涣,仔細(xì)體會(huì)DirectoryIndex index.php index.html
即可正確配置仪媒。完結(jié),撒花?