ssh登陸你的服務(wù)器
ssh 用戶@主機(jī)
創(chuàng)建用戶,密碼,加入wheel用戶組
useradd newuser
passwd newuser
sudo gpasswd -a newuser wheel
返回:
Adding user newuser to group wheel
查看用戶所屬群組:
groups newuser
返回:
newuser : newuser wheel
登陸
su newuser
這樣newuser就可以使用sudo命令了。
添加yum倉庫
去安裝 ius 倉庫,它提供了不同的版本,我們需要安裝適合用在 centos 7 上的倉庫 ..
sudo yum install https://centos7.iuscommunity.org/ius-release.rpm -y
查看一下倉庫的列表 ..
yum repolist
你會看到剛才安裝的 ius 這個倉庫 .. 因它這個倉庫會依賴 epel-release 倉庫,所以安裝它的時候也會自動去安裝這個 epel 倉庫 ..
安裝NGINX
sudo yum install nginx -y
完成以后啟動一下這個服務(wù) ..
sudo systemctl start nginx
再讓它可以開機(jī)自啟動 ..
sudo systemctl enable nginx
下面我們可以測試一下看看 .. 打開瀏覽器 .. 直接輸入服務(wù)器的 ip 地址 .. 你應(yīng)該會看到一個 NGINX 的歡迎頁面 .. 說明現(xiàn)在已經(jīng)成功的安裝了 NGINX ..
如果不能看到,需要防火墻打開80端口
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
安裝MariaDB
先刪除Centos7自帶的MariaDB
sudo yum remove mariadb-libs -y
然后搜索一下最新的包
sudo yum search mariadb
安裝
sudo yum install mariadb101u-server -y
開啟
sudo systemctl start mariadb
然后讓它可以開機(jī)自啟動
sudo systemctl enable mariadb
再執(zhí)行一下安全相關(guān)的配置
mysql_secure_installation
這里要讓我們回答一些問題 ..
輸入當(dāng)前 root 用戶的密碼, 直接回車 . 要設(shè)置 root 密碼嗎? 是的 ... 再確認(rèn)一次 ... 是否要刪除匿名用戶嗎? 是的 , 想要禁用 root 用戶遠(yuǎn)程登錄嗎? 可以 ,要刪除掉 test 這個數(shù)據(jù)庫嗎? 確定 ,最后會提示,要重新加載權(quán)限嗎? 再輸入一個 Y,表示確定 ...
這樣我們就完成了 MariaDB 這個數(shù)據(jù)庫的安裝還有配置 ... 可以測試一下 ...
mysql -u root -p
意思是使用 root 用戶登錄到數(shù)據(jù)庫的控制臺, 輸入密碼 .. 注意這個 root 是數(shù)據(jù)庫管理系統(tǒng)的那個 root 用戶 ...
這樣會登錄到數(shù)據(jù)庫的控制臺 ... 顯示數(shù)據(jù)庫系統(tǒng)里所有的數(shù)據(jù)庫 ,可以使用
show databases;
安裝PHP-FPM
PHP-FPM,它可以把解釋好的 PHP 交給 NGINX 服務(wù)器
sudo yum search php
先搜索一下 .. 這里會有一些 php72u 開頭的包, 72表示 7.2 的 PHP .. 它們是 ius 倉庫提供的包 ..
sudo yum install php72u-fpm -y
完成以后啟動一下這個服務(wù) ..
sudo systemctl start php-fpm
再讓它可以開機(jī)自啟動 ..
sudo systemctl enable php-fpm
另外還有一些常用的 php 擴(kuò)展我們也可以再去安裝一下 .. gd 提供了處理圖像的功能 .. mysqlnd 還有 pdo 是跟數(shù)據(jù)庫有關(guān)的擴(kuò)展 .. mcrypt 是加密用的 .. mbstring 是處理多字節(jié)字符的擴(kuò)展 .. 再加上一個 json .. 它可以處理 json 格式的數(shù)據(jù) ..
sudo yum install php72u-gd php72u-mysqlnd php72u-pdo php72u-mcrypt php72u-mbstring php72u-json -y
完成以后我們可以重新加載一下 php-fpm ..
sudo systemctl reload php-fpm
NGINX 配置
下面創(chuàng)建一個基本的可以運行 php 應(yīng)用的 NGINX 配置文件,把它放到 /etc/nginx/conf.d 這個目錄的下面嗎,名字可以是 php.basic.conf
sudo vi /etc/nginx/conf.d/php.basic.conf
server {
listen 80;
server_name IPADDRESS DOMAIN;
root /home/www/default;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}
}
先添加一個 server 區(qū)塊 .. 然后用一個 listen 指令設(shè)置一下監(jiān)聽的端口號 .. 另起一行 .. 再用一個 server_name , 先用一下服務(wù)器的 ip 地址 .. ,因為我們還沒有特別想要使用的主機(jī)名 ..
再用 root 指令設(shè)置一下這個網(wǎng)站應(yīng)用的根目錄 .. 比如放在 /home/www/default 這個目錄的下面 ..
index 指定可以設(shè)置一些默認(rèn)打開的文件 .. 再這個 server 區(qū)塊里,再定義一個 location 區(qū)塊 ..
里面添加一行指令 try_files $uri $uri/ /index.php?$query_string; 它可以實現(xiàn)網(wǎng)站的地址重寫功能 ..
然后我們需要讓這個網(wǎng)站應(yīng)用可以處理 php 腳本 ... 再添加一個 location ,它匹配的是對 php 文件的請求 ..
在它里面再添加幾行指令 .. 主要就是告訴 NGINX 怎么樣處理 PHP 腳本 。
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
完成以后保存一下這個配置文件 .. 再去創(chuàng)建需要的目錄 .. sudo mkdir -p /home/www/default
修改一下目錄的擁有者,把擁有者改成當(dāng)前登錄的用戶
sudo chown -R newuser /home
在創(chuàng)建的這個 default 目錄的下面再去添加一個 php 文件
vi /home/www/default/phpinfo.php
在這個文件里用一個 phpinfo() 函數(shù)
<?php phpinfo();?>
保存一下 ,然后重新加載一下 NGINX
sudo systemctl reload nginx
在瀏覽器里直接打開服務(wù)器的 IP 地址 ,后面加上 phpinfo.php ,會顯示 PHP 相關(guān)的信息
http://IPADDRESS/phpinfo.php
說明已經(jīng)可以處理 PHP 腳本了
到這里為止一個LEMP環(huán)境就搭建好了。