阿里云服務器部署LAMP

????雖然我不是第一次部署LAMP,但是還是踩到了坑,我使用的云服務器是阿里云的Centos7.3 64位,感覺使用Centos7以上的版本都是可以的,阿里云的搭建動態WordPress網站是Centos6.8的版本,很多東西都不適合了。參考了阿里云官方部署LAMP教程,但是默默吐槽一句,官方教程真的不好用,一開始我還按照阿里云官方的教程嘗試搭建ghost博客,但是也失敗了。因為我之前按照阿里云官方教程搭建成功過一次LAMP,所以百思不得其解究竟是哪個環節出了岔子,于是找到阿里云文檔的GitHub倉庫,找到18年9月的一個版本,對照,這個版本才搭建成功。阿里云18年9月搭建LAMP教程,防止他之后再鬧什么幺蛾子,我就搬運一下吧。
????LAMP指Linux+Apache+MySQL/MariaDB+Perl/PHP/Python,是一組常用來搭建動態網站或者服務器的開源軟件。它們本身都是各自獨立的程序,但是因為常被放在一起使用,擁有了越來越高的兼容度,共同組成了一個強大的Web應用程序平臺。
????在部署之前,確認實例所在的安全組已經放行了服務所需的端口,主要有HTTP 22|ssh 22|MYSQL 3306,通過xshell等軟件遠程連接實例。

準備工作

設置防火墻

????關閉防火墻firewalld放行80、22等端口。

  1. 運行命令關閉防火墻。

    systemctl stop firewalld.service
    
  2. 運行命令關閉防火墻開機自啟動。

    systemctl disable firewalld.service
    

安裝軟件

運行命令下載軟件、編輯和解壓文件。

yum install -y wget vim unzip

操作步驟

按以下步驟部署LAMP。

步驟1:編譯安裝Apache

  1. 運行命令安裝相關依賴包。

    yum install -y gcc gcc-c++ autoconf libtool
    
  2. 依次運行以下命令安裝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
    
  3. 依次運行以下命令安裝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
    
  4. 依次運行以下命令安裝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
    
  5. 依次運行以下命令編譯安裝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
    
  6. 修改httpd.conf配置文件參數:

    1. 運行 cd /etc/httpd/ 切換到/etc/httpd/目錄。

    2. 運行 vim httpd.conf 打開httpd.conf文件,按 i 鍵進入編輯模式。

    3. 找到 Directory 參數,注釋掉 Require all denied,并添加 Require all granted

      image
    4. 找到 ServerName 參數,添加 ServerName localhost:80

      image
    5. 設置 PidFile 路徑:在文件最后添加 PidFile "/var/run/httpd.pid"

    6. Esc 鍵退出編輯模式,輸入 :wq 保存并關閉 httpd.conf 文件。

  7. 依次執行以下命令啟動Apache服務并驗證。

    cd /usr/local/apache/bin/
    ./apachectl start
    netstat -tnlp                             #查看服務是否開啟
    

    如果返回以下結果,說明Apache服務已經成功啟動。

    image

    在本地機器的瀏覽器中輸入ECS實例公網IP地址,如果出現如圖所示信息,說明Apache服務安裝成功。

    image
  8. 設置開機自啟動。

    1. 運行 vim /etc/rc.d/rc.local 打開rc.local文件,按 i 進入編輯模式。

    2. 添加 /usr/local/apache/bin/apachectl start

      image
    3. Esc 鍵退出編輯模式,輸入 :wq 保存并關閉rc.local文件。

  9. 設置環境變量。

    1. 運行 vi /root/.bash_profile 打開文件,按 i 進入編輯模式。
    2. PATH=$PATH:$HOME/bin 修改為 PATH=$PATH:$HOME/bin:/usr/local/apache/bin
    3. Esc 鍵退出編輯模式,輸入 :wq 保存并關閉文件。
    4. 運行 source /root/.bash_profile 重新執行文件。

步驟2:編譯安裝MySQL

  1. 依次執行以下命令檢查系統中是否存在使用rpm安裝的MySQL或者MariaDB。

    rpm -qa | grep mysql
    rpm -qa | grep mariadb
    

    如果已經安裝,則運行以下任一個命令刪除。

    rpm -e 軟件名    #注意:這里的軟件名必須包含軟件的版本信息,如rpm -e mariadb-libs-5.5.52-1.el7.x86_64。一般使用此命令即可卸載成功。
    rpm -e --nodeps 軟件名   #卸載不成功時使用此命令強制卸載
    

    卸載后,再用 rpm -qa|grep mariadb 或者 rpm -qa|grep mysql 查看結果。

  2. 依次運行以下命令安裝 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/
    
  3. 依次運行以下命令建立mysql組和用戶,并將mysql用戶添加到mysql組。

    groupadd mysql
    useradd -g mysql -s /sbin/nologin mysql
    
  4. 運行命令初始化MySQL數據庫。

    /usr/local/mysql/bin/mysqld --initialize-insecure --datadir=/usr/local/mysql/data/ --user=mysql
    
  5. 更改MySQL安裝目錄的屬性:chown -R mysql:mysql /usr/local/mysql

  6. 依次運行以下命令設置開機自啟動。

    cd /usr/local/mysql/support-files/
    cp mysql.server  /etc/init.d/mysqld
    chmod +x /etc/init.d/mysqld             # 添加執行權限
    vim /etc/rc.d/rc.local
    

    在 rc.local 文件中添加 /etc/init.d/mysqld start

  7. 設置環境變量。

    1. 運行 vi /root/.bash_profile 打開文件,按 i 進入編輯模式。

    2. 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的環境變量的基礎上再進行修改。

    3. Esc 鍵退出編輯模式,輸入 :wq 保存并關閉文件。

    4. 運行 source /root/.bash_profile 重新執行文件。

  8. 啟動 MySQL 數據庫。

    /etc/init.d/mysqld start
    

    出現如下截圖所示信息,表示MySQL啟動成功。

    image
  9. 修改MySQL的root用戶密碼:初始化后MySQL為空密碼可直接登錄,為了保證安全性需要修改MySQL的root用戶密碼。運行以下命令,并按界面提示設置密碼。

    mysqladmin -u root password
    
  10. 測試登錄MySQL數據庫。

    mysql -uroot -p #-p和密碼之間無空格
    
    image
  11. 運行 \q 退出MySQL。

步驟3. 編譯安裝 PHP

  1. 依次運行以下命令安裝依賴。

    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
    
  2. 運行命令復制配置文件。

    cp php.ini-production /etc/php.ini
    
  3. 編輯Apache配置文件 httpd.conf,以Apache支持PHP。

    1. 運行 vim /etc/httpd/httpd.conf 打開文件,按 i 進入編輯模式。

    2. 在配置文件最后添加如下二行代碼。

      AddType application/x-httpd-php  .php 
      AddType application/x-httpd-php-source  .phps
      
    3. 定位到 DirectoryIndex index.html,修改為 DirectoryIndex index.php index.html

      說明: 如果文件中沒有 DirectoryIndex index.html,則添加上述代碼。

    4. Esc 鍵退出編輯模式,輸入 :wq 保存并關閉文件。

  4. 重啟Apache服務:

    /usr/local/apache/bin/apachectl restart
    
  5. 測試是否能夠正常解析PHP。

    1. 依次運行以下命令,找開index.php文件。

      cd  /usr/local/apache/htdocs/
      vim index.php
      
    2. i 鍵進入編輯模式,并添加以下內容。

      <?php
      phpinfo();
      ?>
      
    3. Esc 鍵退出編輯模式,并輸入 :wq 保存并關閉文件。

    4. 重啟Apache服務:

      /usr/local/apache/bin/apachectl restart
      
    5. 在本地機器的瀏覽器里輸入 http://實例公網 IP/index.php

      如果出現以下頁面表示PHP解析成功。

      image

步驟4. 安裝phpMyAdmin

依次運行以下命令安裝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

在本地機器瀏覽器輸入 http://實例公網 IP/phpmyadmin 訪問phpMyAdmin登錄頁面。如果出現以下頁面,說明phpMyAdmin安裝成功。輸入MySQL的用戶名和密碼即可登錄。

image

????Centos7.3按照以上步驟正確部署好LAMP后,在瀏覽器中輸入http://實例公網 IP默認訪問的是實例中/usr/local/apache/htdocs/index.php文件,可以進行修改,就在步驟3第3步的第iii步,仔細體會DirectoryIndex index.php index.html即可正確配置。完結,撒花?

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,517評論 6 539
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,087評論 3 423
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,521評論 0 382
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,493評論 1 316
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,207評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,603評論 1 325
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,624評論 3 444
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,813評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,364評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,110評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,305評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,874評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,532評論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,953評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,209評論 1 291
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,033評論 3 396
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,268評論 2 375

推薦閱讀更多精彩內容