導語
雖然,當今在 CentOS(版本為7) 中搭建 LNMP 環境,我們可以使用 寶塔 或者 LNMP一鍵安裝包;但是,我們作為一名程式設計師,尤其是後臺程式設計師,如果,僅僅藉助這第三方安裝搭建 LNMP,會阻礙我們的成長和進步。尤其對我們這種不摸透原理,誓不罷休的強迫症患者來說,更為嚴重。
上面這段話,說著玩哈,有方便的工具為什麼不用呢,你說是不。當然多學點其它方式,對我們還是有好處的。今天我就把 yum 安裝 nginx1.14、php7.2、mysql5.7 教給大家,同時給自己記錄一下筆記,方便以後查詢。
一、安裝前準備
-
安裝 VMware 虛擬機器(我們在 WIN10 上透過虛擬機器安裝 CentOS7)
這款軟體並不是開源的,我建議有能力的小夥伴,能支援一下正版,就支援一下哈。實在不行滴,,,百度找 vmware14 啟用碼。這裡我就不貼啦,有問題找度娘,什麼問題都能解決。
- 下載 CentOS7
自己選擇一個離自己最近的下載地址,建議選用 163 的下載地址
二、關於安裝 CentOS系統
太長了,不在這嗶嗶啦。直接上我學習 Linux 基礎的筆記分享地址,主要看系統安裝這塊,其它的,有興趣的同學,可以看看。
安裝好以後,在虛擬機器上啟動,使用 Xshell 工具連線已經安裝好的 CentOS:
選擇 Xshell 的 download 按鈕,然後填寫社群或者學校資訊,最後 submit 後,就可以下載了
- 注意安裝完 CentOS 後
一定要設定 DNS 解析,否則無法使用 yum 工具
騰訊DNS:119.29.29.29
114DNS:114.114.114.114
三、安裝 Nginx1.14
- 第一步,獲取 yum 源
看到沒,複製圖片大紅框的內容
- 第二步,在 CentOS 中新建 yum 源
1、進入 yum 源管理目錄
cd /etc/yum.repos.d/
2、新建並編輯 nginx yum 原始檔 nginx.repo
vim nginx.repo
3、將複製好的 nginx yum 源內容,貼上到 nginx.repo
中
4、修改 baseurl
baseurl=http://nginx.org/packages/OS/OSRELEASE/$basearch/
# 改為
baseurl=http://nginx.org/packages/centos/7/$basearch/
如圖
5、儲存退出: esc
-> :wq
-> enter
6、測試 yum 源安裝是否成功
yum list | grep nginx
第一次執行 yum list 可能需要尋找可用的 yum 源地址,並做快取。此過程如果失敗,重新執行一下上面的命令,因為網路環境並不是一成不變的。
如上圖,多執行幾次
yum list | grep nginx
,最後能夠穩定顯示上面的內容,即為 nginx yum 源安裝成功
- 第三步,安裝 nginx
yum -y install nginx
- 第四步,測試 nginx 是否安裝成功
nginx -v
- 第五步,需要關閉防火牆和 selinux(因為這是測試環境,不需要域名,生產環境,不要關閉這兩項)
iptables -F
setenforce 0
注意:每次系統重啟,都要關閉一下,要不訪問不了 80 埠哦
- 第六步,CentOS 根目錄新建
www/wwwroot
目錄用來存放網站專案目錄
mkdir /www
mkdir /www/wwwroot
- 第七步,在
/www/wwwroot
新建測試目錄default
,並在測試目錄下新建一個index.html
測試檔案
mkdir /www/wwwroot/default
cd /www/wwwroot/default
vim index.html
然後在
index.html
輸入Hellow World!!!
內容,用來做測試
- 第八步,進入
/etc/nginx/conf.d
,並修改裡面的default.conf
cd /etc/nginx/conf.d
vim default.conf
將上圖中紅框內容修改為 /www/wwwroot/default;
- 第九步,啟動 nginx,並檢視啟動狀態
systemctl start nginx
systemctl status nginx
如圖 綠點並提示有 active (running) 即為啟動成功。
- 第十步,瀏覽器訪問 虛擬機器的IP地址
四、安裝 PHP7.2
php7.2 版本的 yum 源在 webtatic
上,但還有一部分需要依賴 epel-release
。
- 第一步,安裝
epel-release
EPEL(Extra Packages for Enterprise Linux ),是基於Fedora的一個專案,為“紅帽系”的操作系統提供額外的軟體包,適用於RHEL、CentOS和Scientific Linux。
yum -y install epel-release
安裝完成後,在 /etc/yum.repos.d
目錄下,就會多一個 epel.repo
的檔案,還有一個 testing
的測試檔案。當系統透過 yum
進行安裝軟體時,如果需要 epel
裡的擴充套件包,就會自動下載安裝。
- 第二步,安裝
webtatic
yum 源
rpm -ivh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
安裝完成後,在 /etc/yum.repos.d
目錄下會多出 webtatic.repo
和 webtatic-archive.repo
兩個檔案,還有一個 testing
的測試檔案。
- 第三步,檢視 php 可以安裝的包
yum list | grep php72
上面這些 rpm 包就是 webtatic 的 yum 源裡面的包啦
我們要安裝的就是
php72
的核心包mod_php72w
和核心擴充套件包php72w-cli
、php72w-fpm
、php72w-common
、php72w-devel
其它擴充套件選項包請根據需要安裝,例如需要
php72w-gd
後期可單獨安裝
- 第四步,安裝 php72
yum -y install mod_php72w php72w-cli php72w-fpm php72w-common php72w-devel
透過這種方式安裝的 php72 的 php.ini 檔案與我們認識的不太一樣,它類似於 nginx.conf
存在一個主配置,透過型別 include
方法,包含指定資料夾下的模組配置檔案。
如圖,是 /etc
資料夾:
- 第五步,在
/www/wwwroot
下新建learn
資料夾,並在此資料夾下,新建index.php
檔案,輸入下列內容
<?php
phpinfo();
- 第六步,在
/etc/nginx/conf.d
下面新建learn.conf
nginx配置檔案,輸入下列內容
server {
listen 8080;
server_name localhost;
root /www/wwwroot/learn;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options "nosniff";
index index.php index.html index.htm;
charset utf-8;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
error_page 404 /index.php;
location ~ \.php$ {
root /www/wwwroot/learn;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.(?!well-known).* {
deny all;
}
}
- 第七步,重啟 nginx 與啟動 php-fpm
systemctl restart nginx
systemctl start php-fpm
- 第八步,瀏覽器訪問 IP:8080
五、安裝 MySQL5.7
- 第一步,安裝 mysql 官方 yum 源
rpm -ivh https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
- 第二步,檢視 MySQL yum 源
yum list | grep mysql
發現只有 mysql80 的包,這是因為沒有開啟 mysql57 的包
- 第三步,關閉80包,開啟57包
yum-config-manager --disable mysql80-community
yum-config-manager --enable mysql57-community
這個時候再檢視 mysql 包列表
yum list | grep mysql
57版本的包,就這樣開啟了
- 第四步,安裝 mysql57
yum -y install mysql-community-server mysql-community-client
- 第五步,啟動 mysql
systemctl start mysqld
- 第六步,檢視密碼
grep 'temporary password' /var/log/mysqld.log
- 第七步,登入 mysql,修改密碼
mysql -uroot -p
# 輸入密碼
set password for root@localhost = password('你的密碼');
如果提示錯誤,那是因為 mysql57 對密碼的複雜度進行了限制,依次執行下列命令,取消複雜度限制,再修改
set global validate_password_policy=0;
set global validate_password_mixed_case_count=0;
set global validate_password_number_count=3;
set global validate_password_special_char_count=0;
set global validate_password_length=3;
最後
LNMP 已經安裝完畢。
特別篇第二章,講一下 PhpStrom 實現原生程式碼與遠端程式碼同步功能,此功能極大提高開發效率,省下了,不斷手動上傳程式碼麻煩。
本作品採用《CC 協議》,轉載必須註明作者和本文連結