1. 程式人生 > >CentOS 7 安裝 LNMP 環境(PHP7 + MySQL5.7 + Nginx1.10)

CentOS 7 安裝 LNMP 環境(PHP7 + MySQL5.7 + Nginx1.10)

記錄下在CentOS 7 安裝 LNMP 環境(PHP7 + MySQL5.7 + Nginx1.10)過程筆記。

工具

  • VMware版本號 : 12.0.0

  • CentOS版本 : 7.0

一、修改 yum 源

二、安裝 Nginx、MySQL、PHP

[[email protected] ~]# yum -y install nginx
[[email protected] ~]# yum -y install mysql-community-server
[[email protected] ~]# yum -y install php70w-devel php70w.x86_64 php70w-cli.x86_64 php70w-common.x86_64 php70w-gd.x86_64 php70w-ldap.x86_64 php70w-mbstring.x86_64 php70w-mcrypt.x86_64  php70w-pdo.x86_64   php70w-mysqlnd  php70w-fpm php70w-opcache php70w-pecl-redis php70w-pecl-mongo

三、配置

1、配置 MySQL
MySQL 安裝完成之後,在 /var/log/mysqld.log 檔案中給 root 生成了一個預設密碼
通過下面的方式找到root 預設密碼,然後登入 MySQL 進行修改:

[[email protected] ~]# systemctl start mysqld    # 啟動 MySQL
[[email protected] ~]# grep 'temporary password' /var/log/mysqld.log  # 查詢預設密碼
2017-04-10T02:58:16.806931Z 1 [Note] A temporary password is generated for 
[email protected]
: iacFXpWt-6gJ

登入 MySQL

[[email protected] ~]# mysql -uroot -p'iacFXpWt-6gJ'  

修改root 預設密碼:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyPass1!';

或者:

mysql> set password for 'root'@'localhost'=password('123abc'); 


MySQL5.7 預設安裝了密碼安全檢查外掛(validate_password)

,預設密碼檢查策略要求密碼必須包含:大小寫字母、數字和特殊符號,並且長度不能少於8位。否則會提示 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements 錯誤

配置預設編碼為 utf8
修改 /etc/my.cnf 配置檔案,在 [mysqld] 下新增編碼配置,配置完成後重啟:

[[email protected] ~]# vim /etc/my.cnf
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
[[email protected] ~]# systemctl restart mysqld    # 重啟 MySQL

設定開機啟動:

[[email protected] ~]# systemctl enable mysqld

預設配置檔案路徑:
配置檔案:/etc/my.cnf
日誌檔案:/var/log/mysqld.log
服務啟動指令碼:/usr/lib/systemd/system/mysqld.service
socket 檔案:/var/run/mysqld/mysqld.pid

2、配置 Nginx
安裝完成以後檢視自己防火牆是否開啟,如果已開啟,我們需要修改防火牆配置,開啟 Nginx 外網埠訪問。

[[email protected] ~]# systemctl status firewalld

如果顯示 active (running),則需要調整防火牆規則的配置。

修改 /etc/firewalld/zones/public.xml檔案,在zone一節中增加
儲存後重新載入 firewalld 服務:

[[email protected] ~]# vim /etc/firewalld/zones/public.xml
<zone>
    ...
    <service name="nginx"/>
<zone>
[[email protected] ~]# systemctl reload firewalld

修改 Nginx 配置:

[[email protected] ~]# vim /etc/nginx/nginx.conf

在 server {} 裡新增:

location / {
    #定義首頁索引檔案的名稱
    index index.php index.html index.htm;   
}

# PHP 指令碼請求全部轉發到 FastCGI處理. 使用FastCGI預設配置.
location ~ .php$ {
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    include fastcgi_params;
}

配置完成重啟 Nginx

[[email protected] ~]# systemctl start nginx    # 啟動 Nginx

:本文只是簡單配置 Nginx,具體更多配置請自行百度。

設定開機啟動:

[[email protected] ~]# systemctl enable nginx

3、設定開機啟動 php-fpm

[[email protected] ~]# systemctl enable php-fpm
[[email protected] ~]# systemctl start php-fpm    # 啟動 php-fpm

四、測試

  • 在 /usr/share/nginx/html 檔案下建立php檔案,輸出 phpinfo 資訊

  • 瀏覽器訪問 http://<內網IP地址>/phpinfo.php,如果看到 PHP資訊,說明安裝成功