站長資訊網
        最全最豐富的資訊網站

        CentOS7快速安裝搭建LNMP環境

        源碼編譯安裝 LNMP 環境雖然便于自定義,但是對于小型服務器來說,漫長的編譯時間讓人無法等待。如果能在 10 分鐘內搞定環境安裝,那就很好了。

        1、配置yum源

        CentOS 7 的 默認 yum 源里的軟件包版本可能不是最新的,如果要安裝最新的軟件包就得配置下 yum 源。

        配置 yum 源可以通過直接安裝 rpm (Red Hat Package Manager) 包,或者修改 Repository,本文講解通過安裝 rpm 方式。

        1.1、安裝epel源

        首先需要安裝 EPEL ( Extra Packages for Enterprise Linux ) yum 源,用以解決部分依賴包不存在的問題

        [root@localhost ~]# yum -y install epel-release

        1.2、安裝MySQL源

        官方安裝MySQL源參考網址

        https://dev.mysql.com/doc/mysql-repo-excerpt/5.6/en/linux-installation-yum-repo.html

        安裝 rpm 包前需要導入 rpm-GPG-KEY 文件,不然安裝過程會出錯。將 MySQL rpm-GPG-KEY 另存為 mysql_pubkey.asc 并導入

        [root@localhost ~]# rpm –import mysql_pubkey.asc

        導入后安裝 CentOS 7 的 MySQL rpm 包

        [root@localhost ~]# rpm -Uvh http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

        1.3、安裝PHP源

        PHP 最新的 rpm 官方yum源包地址

        http://rpms.remirepo.net/

        導入 PHP rpm-GPG-KEY (remi)

        [root@localhost ~]# rpm –import http://rpms.remirepo.net/rpm-GPG-KEY-remi

        安裝 PHP rpm (remi) 包

        [root@localhost ~]# rpm -Uvh http://remi.mirrors.arminco.com/enterprise/remi-release-7.rpm

        1.4、安裝 Nginx 源

        官方安裝Nginx源參考網址

        http://nginx.org/en/linux_packages.html

        導入 Nginx rpm-GPG-KEY

        [root@localhost ~]# rpm –import http://nginx.org/packages/keys/nginx_signing.key

        安裝 Nginx rpm 包

        [root@localhost ~]# rpm -Uvh http://nginx.org/packages/centos/7/noarch/rpmS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

        到目前為止,yum 源已經安裝好了 ,接著進行下一步的配置。

        2、修改相關的yum源文件

        MySQL yum 源默認是啟用的 MySQL-5.6,PHP yum 源默認都沒有啟用,Nginx yum 源默認是啟用的 Nginx-1.8。定位到 /etc/yum.repos.d/,對后綴為 .repo 的文件進行編輯,修改 enabled 為 1 以啟用。

        2.1、啟用 PHP-7.0的yum源

        1、修改 /etc/yum.repos.d/remi.repo,將 [remi] 和 [remi-test] 下面的 enabled=0 改為 enabled=1;

        2、修改 /etc/yum.repos.d/remi-php70.repo,將 [remi-php70] 下面的 enabled=0 改為 enabled=1;

        [root@localhost ~]# sed -i “/remi/mirror/{n;s/enabled=0/enabled=1/g}” /etc/yum.repos.d/remi.repo

        [root@localhost ~]# sed -i “/test/mirror/{n;n;s/enabled=0/enabled=1/g}” /etc/yum.repos.d/remi.repo

        [root@localhost ~]# sed -i “/php70/mirror/{n;s/enabled=0/enabled=1/g}” /etc/yum.repos.d/remi-php70.repo

        到這一步 yum 配置就算完成了,清除并生成 yum緩存使之生效:

        [root@localhost ~]# yum clean all

        [root@localhost ~]# yum makecache

        3、安裝 MySQL + PHP + Nginx + phpMyAdmin

        yum 源已經配置好了,現在直接安裝 MySQL + PHP + Nginx + phpMyAdmin

        [root@localhost ~]# yum install -y mysql-community-server nginx php php-bcmath php-fpm php-gd php-json php-mbstring php-mcrypt php-mysqlnd php-opcache php-pdo php-pdo_dblib php-pgsql php-recode php-snmp php-soap php-xml php-pecl-zip phpMyAdmin

        注:上面安裝的 php-* 可以根據實際使用情況選擇安裝

        4、修改MySQL + PHP + Nginx + phpMyAdmin的配置文件

        安裝完成后,進行下一步的環境配置。

        MySQL 配置文件在 /etc/my.cnf.d/

        PHP 配置文件在 /etc/php-fpm.d/

        Nginx 配置文件在 /etc/nginx/

        phpMyAdmin 的配置文件在 /etc/phpMyAdmin/

        4.1、配置 MySQL

        MySQL 配置文件保持默認,運行一次安全配置即可。

        4.1.1、啟動 MySQL

        [root@localhost ~]# systemctl start mysqld.service

        4.1.2、安全配置 MySQL

        設置 root 密碼、刪除匿名用戶、禁止 root 遠程登錄、刪除 test 數據庫、重新加載權限表,一路 Y 下去

        [root@localhost ~]# mysql_secure_installation

        4.2、配置 PHP

        PHP 默認配置文件使用的是監聽 9000 端口進行通信,針對小型單一、沒有做負載均衡的服務器,可以使用 unix sock 方式通信。使用 unix sock 方式需要修改 PHP 配置文件。

        #更換監聽方式

        listen = /dev/shm/php-fpm-default.sock

        #監聽隊列最大長度為不限

        listen.backlog = -1

        #指定監聽用戶和用戶組(需存在)

        listen.owner = www

        listen.group = www

        啟動 PHP-FPM:

        [root@localhost ~]# systemctl start php-fpm.service

        4.3、配置 Nginx

        讓服務器默認訪問顯示為 400 提示頁。

        新建名為 nginx-default.conf 的配置文件

        [root@localhost ~]# touch /etc/nginx/conf.d/nginx-default.conf

        編輯配置文件

        [root@localhost ~]# vim /etc/nginx/conf.d/nginx-default.conf

        #將以下信息輸入到 nginx-default.conf

        server

        {

            listen 80 default;

            return 400;

        }

        防火墻放行 HTTP 端口訪問:

        firewall-cmd –permanent –zone=public –add-service=http

        firewall-cmd –reload

        啟動 Nginx

        [root@localhost ~]# systemctl start nginx.service

        這時,在瀏覽器地址欄輸入當前服務器 IP 就會看到一個 400 的提示頁面了。

        4.4、綁定域名+站點目錄+保存日志+運行 PHP的配置文件

        server

        {

            #監聽80端口

        listen 80;

        #綁定域名 default.com 和 www.default.com

        server_name default.com www.default.com;

        #設置首頁文件,越前優先級越高

        index index.html index.htm index.php;

        #設置網頁編碼

        charset utf-8;

        #設置站點根目錄

            root  /home/wwwroot/default;

            #運行 PHP

            location ~ .*.php$

            {

                #默認使用9000端口和PHP通信

        fastcgi_pass  127.0.0.1:9000

                #使用 unix sock 和PHP通信

        #fastcgi_pass  unix:/dev/shm/php-fpm-default.sock;

                fastcgi_index index.php;

                #PHP文檔根目錄

          fastcgi_param DOCUMENT_ROOT  /home/wwwroot/default;

                #PHP 腳本目錄

        fastcgi_param SCRIPT_FILENAME  /home/wwwroot/default$fastcgi_script_name;

                include fastcgi_params;

                try_files $uri = 404;

            }

            #設置文件過期時間

            location ~ .*.(gif|jpg|jpeg|png|bmp|swf|flv|mp3|wma)$

            {

                expires      30d;

            }

            #設置文件過期時間

            location ~ .*.(js|css)$

            {

                expires      12h;

            }

            #設置文件訪問權限

            location ~* /templates(/.*).(bak|html|htm|ini|old|php|tpl)$ {

                allow 127.0.0.1;

                deny all;

            }

            #設置文件訪問權限

            location ~* .(ftpquota|htaccess|htpasswd|asp|aspx|jsp|asa|mdb)?$ {

                deny all;

            }

            #保存日志

            access_log /var/log/nginx/default-access.log main;

            error_log /var/log/nginx/default-error.log crit;

        }

        4.5、配置 phpMyAdmin

        [root@localhost ~]# vi etc/phpMyAdmin/config.inc.php

        修改以下內容:

        $cfg[‘Servers’][$i][‘host’] = ‘localhost’;

        $cfg[‘Servers’][$i][‘port’] = ‘3306’;

        $cfg[‘Servers’][$i][‘socket’] = ‘/var/lib/mysql/mysql.sock’;

        $cfg[‘Servers’][$i][‘connect_type’] = ‘socket’;

        $cfg[‘Servers’][$i][‘extension’] = ‘mysqli’;

        $cfg[‘Servers’][$i][‘auth_type’] = ‘cookie’;

        $cfg[‘UploadDir’] = ‘/tmp’;

        $cfg[‘SaveDir’] = ‘/tmp’;

        如果Nginx使用的是上面的進階代碼,那么把 phpMyAdmin 的目錄 復制到 /home/wwwroot/default/phpMyAdmin/ 下面,就可通過 http://default.com/phpMyAdmin 訪問了

        復制 phpMyAdmin 目錄

        [root@localhost ~]# cp -a /usr/share/phpMyAdmin /home/wwwroot/default/

        替換連接形式為目錄

        [root@localhost ~]# rm -rf /home/wwwroot/default/phpMyAdmin/doc/html

        [root@localhost ~]# cp -a /usr/share/doc/phpMyAdmin-<span>*</span>/html /home/wwwroot/default/phpMyAdmin/doc/

        5、一鍵腳本

        上面已經講解了如何配置和安裝,但是不能每次都這么一步一步來吧?為了節省時間,寫了一個一鍵安裝管理腳本,可選擇安裝 Nginx 1.8/1.9、 MySQL 5.5/5.6/5.7 和 PHP 5.5/5.6/7.0

        安裝

        [root@localhost ~]# yum install -y unzip

        [root@localhost ~]# wget https://github.com/maicong/LNMP/archive/master.zip

        [root@localhost ~]# unzip master.zip

        [root@localhost ~]# cd LNMP-master

        [root@localhost ~]# bash lnmp.sh

        輸出到指定文件

        [root@localhost ~]# bash lnmp.sh 2>&1 | tee lnmp.log

        管理站點

        [root@localhost ~]# service vhost (start,stop,list,add,edit,del,exit) <domain> <server_name> <index_name> <rewrite_file> <host_subdirectory>

        start 啟動

        stop 停止

        list 列出

        add 添加

        edit 編輯

        del 刪除

        exit 什么都不做

        <domain>: 配置名稱,例如:domain

        <server_name>: 域名列表,例如:domain.com,www.domain.com

        <index_name>: 首頁文件,例如:index.html,index.htm,index.php

        <rewrite_file>: 偽靜態規則文件,保存在 /etc/nginx/rewrite/ 例如:nomal.conf

        <host_subdirectory>: 是否支持子目錄綁定,on 或者 off

        示例:

        添加一個標識為 domain 的站點

        [root@localhost ~]# service vhost add domain domain.com,www.domain.com index.html,index.htm,index.php nomal.conf on

        啟動標識為 domain 的站點

        [root@localhost ~]# service vhost start domain

        停止標識為 domain 的站點

        [root@localhost ~]# service vhost stop domain

        編輯標識為 domain 的站點

        [root@localhost ~]# service vhost edit domain

        刪除標識為 domain 的站點

        [root@localhost ~]# service vhost del domain

        列出所有站點

        [root@localhost ~]# service vhost list

        備份數據

        [root@localhost ~]# service vbackup (start,list,del) <delete name.tar.gz>

        start 添加

        list 列出

        del 刪除

        示例:

        添加一個新的備份

        [root@localhost ~]# service vbackup start

        列出備份文件

        [root@localhost ~]# service vbackup list

        刪除一個備份

        [root@localhost ~]# service vbackup del name.tar.gz

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 中文无码久久精品| 亚洲精品岛国片在线观看| 精品国产一区二区三区久久蜜臀| 国产精品日本一区二区不卡视频| 国产三级精品三级在专区| 国产精品视频一区二区三区| 无码人妻精品一区二区三区夜夜嗨| 精品久久久无码中文字幕天天| 国产精品视频一区二区三区经| 色国产精品一区在线观看| 污污网站国产精品白丝袜| 在线精品国产一区二区| 成人午夜精品网站在线观看| 久久精品人人做人人爽电影蜜月 | 九九精品99久久久香蕉| 午夜福利麻豆国产精品| 久久久精品人妻无码专区不卡 | 久久精品国产91久久综合麻豆自制| 亚洲AV永久无码精品网站在线观看 | 国产精品亚洲一区二区三区在线| 亚洲精品高清一二区久久| 久久精品国产清自在天天线| 国产乱人伦偷精品视频不卡| 丰满人妻熟妇乱又伦精品劲 | 精品国产免费人成网站| 国产精品福利片免费看 | 91精品国产综合久久精品| 精品久久久久久亚洲精品| 日韩国产精品无码一区二区三区| 亚洲国产精品一区第二页| 亚洲精品成人网站在线观看| 一区二区国产精品| 亚洲第一极品精品无码久久| 无码精品黑人一区二区三区| 久久香蕉超碰97国产精品| 久久er99热精品一区二区| 国产精品免费大片| 国产亚洲福利精品一区| 一区二区三区日韩精品| 国产精品无码久久久久| 久久99精品久久久久久噜噜|