1. 程式人生 > >用Xshell在centos7下安裝lnmp服務

用Xshell在centos7下安裝lnmp服務

虛擬機器已建立好,本機已安裝Xshell

一、準備工作:安裝常用工具

1.1  yum install -y vim

備註:-y是同意安裝過程中的詢問,不被詢問打斷安裝

vim:vim是一個類似於Vi的著名的功能強大、高度可定製的文字編輯器,在Vi的基礎上改進和增加了很多特性

1.2 關閉SELINUX

SELinux(Security-Enhanced Linux) 是美國國家安全域性(NSA)對於強制訪問控制的實現,是 Linux歷史上最傑出的新安全子系統。

SELinux的配置比較複雜,為了免其影響,建議新手直接將其關閉。

使用sed修改其配置檔案,修改完成後,重啟系統將不會再啟用SELinux:

sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config

1.3 配置或關閉iptables

本文不對iptables進行講解,將直接關閉iptables。
您可以執行iptables -L對比執行下面命令前後的對比。

#清空iptables規則
iptables -F

#儲存
service iptables save

二、安裝lnmp:

2.1 安裝nginx

2.1.1CentOS 7預設倉庫不包含nginx,我們可以手動新增nginx的倉庫。

建立 nginx.repo檔案:

命令: 

.進入目錄   cd /etc/yum.repos.d

.建立檔案  vi nginx.repo

.編輯檔案  i

.儲存並退出編輯 :wq

.刪除檔案  rm  檔名

 

訪問nginx官網獲取repo檔案

我們需要先訪問nginx的官方網站,獲取官方的倉庫地址。
點選這裡訪問nginx官方文件:https://nginx.org/en/linux_packages.html#stable

依照文件中的說明,最後的repo檔案應該是下面這樣,您可以直接複製。

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1

使用vim將上面的配置儲存到/etc/yum.repos.d/nginx.repo檔案中。

2.1.2、安裝nginx

安裝好倉庫後可以直接使用yum安裝nginx。

yum install -y nginx 

2.1.3啟動nginx

執行service nginx start啟動nginx。

啟動成功後執行netstat -tunlp|grep 80就可以看到nginx已經啟動了80埠的監聽。

並且通過瀏覽器直接訪問伺服器的ip地址,能看到已經出現了nginx的歡迎頁面。

2.1.4 nginx設定開機啟動

chkconfig nginx on

 

2.1.5修改nginx埠號

cd /etc/nginx/conf.d/

vim default.conf

2.1.6、啟用http_stub_status_module

檢查是否安裝:

2.1.6.1您可以通過以下指令來檢查,當前版本的 NGINX 是否支援:

nginx -V|&grep http_stub_status_module

若出現下圖,則說明支援:

2.1.6.2 修改nginx的預設配置檔案,檔案路徑為:/etc/nginx/conf.d/default.conf

命令為:

進入nginx配置檔案所在目錄: cd /etc/nginx/conf.d/

進入配置檔案:vim default.conf

編輯檔案:i

新增以下程式碼:

location /nginx_status {

stub_status on;

access_log off;

}

儲存並退出:     :wq(切記帶冒號)

2.1.6.3 重新載入nginx配置檔案:  nginx -s reload

2.1.6.4  curl 127.0.0.1/nginx_status

結果為:

瀏覽器訪問nginx_status結果如下:

 

 

2.2安裝mysql

centos 7 的預設倉庫直接包含mysql,可以直接通過yum安裝mysql

yum install -y mysql mysql-server

啟動mysqld

service mysqld start

發現報錯

 

解決辦法:

centos 放棄了mysql,改用MariaDB

執行命令:

安裝:yum install -y mariadb-server

啟動:systemctl start mariadb.service

停止:systemctl stop mariadb.service

重啟:systemctl restart mariadb.service

設定開機啟動: systemctl enable mariadb.service

 2.3、安裝PHP

安裝命令:yum install php-fpm

啟動命令:systemctl start php-fpm.service

設定開機自啟動:systemctl enable php-fpm.service

啟動完成後,通過netstat -tunlp|grep 9000

2.4 配置nginx使其支援PHP程式

接下來演示如何部署web服務:

我們假設web目錄為/var/www,建立目錄

mkdir /var/www

進入該目錄: cd /var/www

我們新建兩個檔案,一個HTML檔案,一個PHP檔案:

a.html的內容為:

<h1>Hello World</h1>

b.php的內容為:

<?php
phpinfo();
// 將會打印出所有的PHP資訊
?>

變更nginx配置:

用vim開啟nginx第一個站點的配置檔案 vim /etc/nginx/conf.d/default.conf

將第9行的root變更為我們指定的目錄:

修改

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }

變更為

    location / {
        root   /var/www;
        index  index.html index.htm;
    }
 

 

將第30-36行的註釋去掉,使其支援PHP檔案,同時還要修改root和fastcgi_param選項指定我們的工作目錄

修改

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

#

#location ~ \.php$ {

# root html; # fastcgi_pass 127.0.0.1:9000;

# fastcgi_index index.php;

# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;

# include fastcgi_params;

#}

變更為

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

#

location ~ \.php$ {

root    /var/www;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param   SCRIPT_FILENAME   /var/www$fastcgi_script_name;

include fastcgi_params;

}

儲存後,執行 nginx -s reload 重新載入nginx配置

此時,我們可以通過瀏覽器直接訪問剛才建立的檔案了: