CentOS7 配置 LNMP 伺服器環境

_zzh發表於2019-03-10

修改yum源為國內的yum源 (原文:https://www.cnblogs.com/xjh713/p/7458437.html

  1. 備份本地yum源
    mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_bak
    2.獲取阿里yum源配置檔案
    wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
    3.更新cache
    yum makecache
    4.檢視
    yum -y update

安裝Nginx (原文:https://blog.csdn.net/qq_26245325/article/details/84633853
因為centOS預設yum源的資源版本都比較老舊,作為一個追求新版本的人。自然是不會安裝預設的老舊版本。所以在安裝要先設定nginx安裝源。
可在nginx官網上檢視最新版本資訊:

Mainline version:Mainline 是 Nginx 目前主力在做的版本,可以說是開發版
Stable version:最新穩定版,生產環境上建議使用的版本
Legacy versions:遺留的老版本的穩定版
1.安裝epel-release源
yum install -y epel-release
2.設定nginx安裝源
vim /etc/yum.repos.d/nginx.repo
新增如下程式碼:
[nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/7/$basearch/ gpgcheck=0 enabled=1

3.安裝nginx並設定開機自啟
yum install -y nginx
systemctl enable nginx
4.檢視版本資訊並啟動
nginx -v
systemctl start nginx

安裝PHP 7.2 (原文:https://newsn.net/say/centos-php72-yum.html
同nginx一樣,centos的yum源預設PHP版本是5. 。顯然是不夠用的。所有這裡選擇安裝PHP7.2。
php高版本的yum源地址,有兩部分,其中一部分是epel-release,另外一部分來自webtatic。
1.因為安裝nginx時因為安裝了epel-release,所有這裡只需要執行:
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
2.清除原有PHP(有的話)
yum -y remove php

3.安裝PHP及擴充套件
yum -y install php72w php72w-cli php72w-fpm php72w-common php72w-devel php72w-embedded php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-xml
4.開啟PHP-fpm服務
systemctl enable php-fpm.service
systemctl start php-fpm.service
5.最後可以檢視php版本了
php -v
6.PHP擴充套件如下,可按個人需求繼續安裝
php72w-cli
php72w-common
php72w-devel
php72w-embedded
php72w-fpm
php72w-gd
php72w-mbstring
php72w-mysqlnd
php72w-opcache
php72w-pdo
php72w-xml
php72w
php72w-bcmath
php72w-dba
php72w-enchant
php72w-imap
php72w-interbase
php72w-intl
php72w-ldap
php72w-mcrypt
php72w-odbc
php72w-pdo_dblib
php72w-pear
php72w-pecl-apcu
php72w-pecl-imagick
php72w-pecl-xdebug
php72w-pgsql
php72w-phpdbg
php72w-process
php72w-pspell
php72w-recode
php72w-snmp
php72w-soap
php72w-tidy
php72w-xmlrpc
php72w-pecl-igbinary
php72w-intl
php72w-memcached
php72w-pecl-mongodb

安裝mysql 5.7 (原文:https://www.cnblogs.com/bigbrotherer/p/7241845.html
下載並安裝MySQL官方的 Yum Repository
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
安裝並啟動mysql
yum -y install mysql-community-server
systemctl start mysqld.service
查詢mysql5.7預設密碼
grep "password" /var/log/mysqld.log
file
進入資料庫
mysql -uroot -p
修改密碼時發現密碼規則衝突,修改密碼規則
set global validate_password_policy=0;
set global validate_password_length=1;(預設最低長度為4)
最後修改密碼
set password for root@localhost = password('123456');
解除安裝對應Yum Repository
yum -y remove mysql57-community-release-el7-10.noarch

至此centos7的LNMP伺服器環境就搭建好了。 接下來準備做簡單的訪問操作來驗證伺服器環境是沒問題的。
首先將nginx目錄通過軟連線方式防止/var/www 目錄下(原文https://www.cnblogs.com/kex1n/p/5193826.html)
ln -s /etc/nginx /var/www/nginx
配置nginx目錄下的conf.d目錄的defalut.conf檔案

vim /var/www/nginx/conf.d/default.conf
server {
listen       80;
server_name  www.hyd1010.top;                                      //修改為監聽的域名,預設為localhost
#charset koi8-r;
#access_log  /var/log/nginx/host.access.log  main;
location / {
    root   /var/www/html;                                                       //修改為訪問路徑
    index  index.html index.htm;
    try_files $uri $uri/ /index.php?$query_string;                       //新增如下程式碼
}
#error_page  404              /404.html;
# redirect server error pages to the static page /50x.html
#
error_page   500 502 503 504  /50x.html;
location = /50x.html {
    root   /var/www/html;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
#    proxy_pass   http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {                                                                           //解開如下注釋
    root           /var/www/html;                                                          //修改路徑
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;          //修改
    include        fastcgi_params;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
#    deny  all;
#}

}

因為我這裡檔案目錄是訪問/var/www/html/index.php 。所以要做如下修改,如果不想修改路徑:那就到預設路徑下建立一個index.php檔案

需要在location裡面加上如下程式碼:
try_files $uri $uri/ /index.php?$query_string;

把 location ~ .php$的註釋開啟並修改 其fastcgi_param為如下值:
SCRIPT_FILENAME $document_root$fastcgi_script_name;

index.php檔案內容隨便吧:
<?php phpinfo(); ?>

最後訪問本身伺服器外網IP(尚無域名的情況)或者自身域名+ /index.php 出現PHP版本資訊頁面說明成功了

相關文章