Linux平臺(Centos7)-lnmp一鍵式部署mysql,nginx,php,php-fpm服務

  Linux平臺(Centos7)-lnmp一鍵式部署mysql,nginx,php,php-fpm服務

1. 部署方式1:手動部署. 6php

1.1. 配置防火牆. 6html

1.2. 關閉firewall 6mysql

1.3. 安裝iptables防火牆. 6linux

1.4. 安裝Apache 7nginx

1.5. 安裝MariaDB 9web

1.5.1. 安裝MariaDB 9redis

1.5.2. 啓動服務. 10sql

1.5.3. 設置開機啓動. 10shell

1.5.4. 爲root帳戶設置密碼. 11數據庫

1.5.5. 重啓MariaDB 11

1.5.6. 查詢服務狀態. 11

1.5.7. 爲root帳戶設置密碼. 12

1.6. 安裝PHP 12

1.6.1. 安裝PHP 12

1.6.2. 安裝PHP組件. 13

1.6.3. 安裝php組件. 14

1.7. Apache配置. 15

1.8. php配置. 15

1.8.1. php-fpm配置. 16

1.9. 部署測試. 16

1.10. nginx安裝和配置. 17

1.10.1. 安裝. 17

1.10.2. 配置. 19

1.11. web網站部署. 20

1.11.1. apache部署網站. 20

1.11.2. nginx部署網站. 21

1.12. 查看監聽服務狀態. 22

1.12.1. Php-fpm狀態. 22

1.12.2. mariadb狀態. 23

1.12.3. Nginx端口. 23

1.12.4. Php-fpm端口. 23

1.12.5. Apache狀態. 23

1.12.6. Apache監聽端口. 24

2. 部署方式2:一鍵式部署. 24

2.1. lnmp一鍵式部署. 24

2.1.1. 下載lnmp1.3-full.tar.gz包. 24

2.1.2. 安裝lnmp1.3-full.tar.gz 24

2.1.3. 安裝完成. 26

2.2. 軟件配置文件預覽. 27

2.3. 服務狀態管理. 28

2.4. 修改 mysql配置文件. 28

2.5. 導入項目和數據庫腳本. 30

2.6. 修改站點目錄權限. 31

2.7. 配置nginx站點服務. 31

2.8. 添加僞靜態規則. 32

2.9. 硬盤啓動系統. 33

2.10. 性能優化配置. 34

2.10.1. 優化nginx配置文件. 34

2.10.2. 優化php-fpm配置文件. 34

2.10.3. 優化mysql配置文件. 34

2.10.4. 修改ThinkTemplate.class.php文件. 34

2.10.5. 成績提交優化. 35

2.10.6. 同步windows和linux系統時間. 36

2.10.7. 修改php.ini文件. 37

2.10.8. 安裝xcache加速緩存. 37

3. 部署方式3:大賽空環境部署方案. 38

3.1. 安裝Centos7 64位服務器. 38

3.1.1. 重啓網卡. 38

3.1.2. 安裝ifconfig命令. 38

3.1.3. 查看服務器ip地址. 39

3.2. 安裝lnmp環境和xcache 39

3.2.1. 安裝lnmp環境. 39

3.2.2. 安裝xcache 39

3.3. 打包代碼上傳和安裝. 40

3.4. 檢查服務狀態. 41

3.4.1. Nginx服務. 41

3.4.2. Php-fpm服務. 42

3.4.3. Mysql服務. 42

3.5. 設置服務器靜態ip 42

3.5.1. 查看動態獲取的網卡信息:. 42

3.5.2. 執行wmspStaticIP.sh腳本. 42

3.5.3. 查看執行完成後的靜態ip地址. 43

 

 

1.部署方式1:手動部署

1.1.配置防火牆

    開啓80端口、3306端口

    CentOS 7.0默認使用的是firewall做爲防火牆,這裏改成iptables防火牆。

1.2.關閉firewall

    systemctl stop firewalld.service #中止firewall

    systemctl disable firewalld.service #禁止firewall開機啓動

1.3.安裝iptables防火牆

    yum install iptables-services #安裝

    vim /etc/sysconfig/iptables #編輯防火牆配置文件

    # Firewall configuration written by system-config-firewall

    # Manual customization of this file is not recommended.

    *filter

    :INPUT ACCEPT [0:0]

    :FORWARD ACCEPT [0:0]

    :OUTPUT ACCEPT [0:0]

    -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

    -   A INPUT -p icmp -j ACCEPT

    -A INPUT -i lo -j ACCEPT

    -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

    -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

    -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

    -A INPUT -j REJECT --reject-with icmp-host-prohibited

    -A FORWARD -j REJECT --reject-with icmp-host-prohibited

    COMMIT

    :wq!

    systemctl restart iptables.service #最後重啓防火牆使配置生效

    systemctl enable iptables.service #設置防火牆開機啓動

    systemctl status iptables

1.4.安裝Apache

    yum install httpd #根據提示,輸入Y安裝便可成功安裝

 

 

 

    看到 Complete 則安裝成功。

    命令:

    systemctl start httpd.service #啓動apache

    systemctl stop httpd.service #中止apache

    systemctl restart httpd.service #重啓apache

    systemctl restart network.service #重啓網絡

    systemctl enable httpd.service #設置apache開機啓動

    systemctl status httpd #查看apache狀態 、

    systemctl status mariadb

    netstat -lnp |grep httpd  #端口監聽

    httpd -v #查看apache版本  --Apache/2.4.6

    mysql --help |grep Distrib #查看mysql版本  --Distrib 5.5.52-MariaDB

    php -v #查看php版本  --PHP 5.4.16

    3): 修改ip: /etc/sysconfig/network-scripts/ifcfg-eth0  。配置文件。(永久修改)

    設置後。運行此命令才生效:#  /etc/rc.d/init.d/network restart

    在客戶端瀏覽器中打開服務器IP地址,會出現下面的界面,說明apache安裝成功 【http://192.168.0.247/】

1.5.安裝MariaDB

    CentOS 7.0中,已經使用MariaDB替代了MySQL數據庫

1.5.1.安裝MariaDB

    yum install mariadb mariadb-server #詢問是否要安裝,輸入Y便可自動安裝,直到安裝完成   (yum groupinstall mariadb mariadb-client -y)

 

 

 

 

    看到 Complete 則安裝成功。

1.5.2.啓動服務

    systemctl start mariadb.service

 

1.5.3.設置開機啓動

    systemctl enable mariadb.service

 

1.5.4.爲root帳戶設置密碼

    mysql_secure_installation

 

1.5.5.重啓MariaDB

    systemctl restart mariadb.service

1.5.6.查詢服務狀態

    systemctl status mariadb

 

    systemctl start mariadb.service #啓動MariaDB

    systemctl stop mariadb.service #中止MariaDB

    systemctl restart mariadb.service #重啓MariaDB

    systemctl enable mariadb.service #設置開機啓動

    systemctl status mariadb #查詢服務狀態

    cp /usr/share/mysql/my-huge.cnf /etc/my.cnf #拷貝配置文件(注意:若是/etc目錄下面默認有一個my.cnf,直接覆蓋便可)

1.5.7.爲root帳戶設置密碼

    mysql_secure_installation

    回車,根據提示輸入Y

    輸入2次密碼,回車 【root,root】

    根據提示一路輸入Y

    最後出現:Thanks for using MySQL!

    MySql密碼設置完成,從新啓動 MySQL:

    systemctl restart mariadb.service #重啓MariaDB

1.6.安裝PHP

1.6.1.安裝PHP

    yum install php #根據提示輸入Y直到安裝完成

    一、安裝PHP

    yum install php #根據提示輸入Y直到安裝完成

 

    安裝信息

 

    安裝完成

 

    看到 Complete 則安裝成功。

1.6.2.安裝PHP組件

    使PHP支持 MariaDB

    yum install php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-bcmath php-mhash

    #這裏選擇以上安裝包進行安裝,根據提示輸入Y回車

    systemctl restart mariadb.service #重啓MariaDB

    systemctl restart httpd.service #重啓apache

 

安裝完成

 

看到 Complete 則安裝成功。

1.6.3.安裝php組件

    使nginx支持php:

    yum install -y php php-devel php-fpm php-mysql php-common php-devel php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt libmcrypt-devel

1.7.Apache配置

    vi /etc/httpd/conf/httpd.conf #編輯文件

    ServerSignature On  #添加,在錯誤頁中顯示Apache的版本,Off爲不顯示

    Options Indexes FollowSymLinks  #修改成:Options Includes ExecCGI FollowSymLinks(容許服務器執行CGI及SSI,禁止列出目錄)

    #AddHandler cgi-script .cgi #修改成:AddHandler cgi-script .cgi .pl (容許擴展名爲.pl的CGI腳本運行)

    AllowOverride None  #修改成:AllowOverride All (容許.htaccess)

    AddDefaultCharset UTF-8 #修改成:AddDefaultCharset GB2312 (添加GB2312爲默認編碼)

    #Options Indexes FollowSymLinks   #修改成 Options FollowSymLinks(不在瀏覽器上顯示樹狀目錄結構)

    DirectoryIndex index.html   #修改成:DirectoryIndex index.html index.htm Default.html Default.htm index.php(設置默認首頁文件,增長index.php)

    MaxKeepAliveRequests 100  #添加MaxKeepAliveRequests 500 (增長同時鏈接數)

:wq! #保存退出

    systemctl restart httpd.service #重啓apache

    rm -f /etc/httpd/conf.d/welcome.conf /var/www/error/noindex.html #刪除默認測試頁

1.8.php配置

    vi /etc/php.ini #編輯

    date.timezone = PRC #把前面的分號去掉,改成date.timezone = PRC

    disable_functions =     passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid, posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname

    #列出PHP能夠禁用的函數,若是某些程序須要用到這個函數,能夠刪除,取消禁用。

    expose_php = Off #禁止顯示php版本的信息

    short_open_tag = ON #支持php短標籤

    open_basedir = .:/tmp/  #設置表示容許訪問當前目錄(即PHP腳本文件所在之目錄)和/tmp/目錄,能夠防止php木馬跨站,若是改了以後安裝程序有問題(例如:織夢內容管理系統),能夠註銷此行,或者直接寫上程序的目錄/data/www.osyunwei.com/:/tmp/

    :wq! #保存退出

1.8.1.php-fpm配置

    cd /usr/sbin

    ./php-fpm

    ps -ef|grep php-fpm

    systemctl restart mariadb.service #重啓MariaDB

    systemctl restart httpd.service #重啓apache

    systemctl status  php-fpm

    netstat -lnp |grep php-fpm

    netstat -lnp |grep nginx

    a) systemctl start php-fpm #開啓php-fpm

    b) systemctl enable php-fpm #開機自動啓動

1.9.部署測試

    cd /var/www/html

    vi index.php #輸入下面內容

    <?php

    phpinfo();

    ?>

    :wq! #保存退出

    在客戶端瀏覽器輸入服務器IP地址,能夠看到以下圖所示相關的配置信息!

    注意:apache默認的程序目錄是/var/www/html

 

    說明apache 啓動php成功。

1.10.nginx安裝和配置

1.10.1.安裝

使用源碼編譯安裝:

 

Make:

 

Nginx部署測試:

/usr/local/nginx/html 新建 index.php

http://192.168.0.246:81/

部署 成功信息:

說明nginx部署 成功。

1.10.2.配置

    啓動、中止nginx

    cd /usr/local/nginx/sbin/

    ./nginx

    ./nginx -s stop

    ./nginx -s quit

    ./nginx -s reload

    ./nginx -s quit:此方式中止步驟是待nginx進程處理任務完畢進行中止。

    ./nginx -s stop:此方式至關於先查出nginx進程id再使用kill命令強制殺掉進程。

    查詢nginx進程:

    ps aux|grep nginx

    重啓 nginx

    1.先中止再啓動(推薦):

    對 nginx 進行重啓至關於先中止再啓動,即先執行中止命令再執行啓動命令。以下:

    cd /usr/local/nginx/sbin/

    ./nginx -s quit

    ./nginx

    netstat -lnp |grep 81

    ps -ef |grep nginx 

    2.從新加載配置文件:

    當 ngin x的配置文件 nginx.conf 修改後,要想讓配置生效須要重啓 nginx,使用-s     reload不用先中止 ngin x再啓動 nginx 便可將配置信息在 nginx 中生效,以下:

    cd /usr/local/nginx/sbin/

    ./nginx -s reload

    啓動成功後,在瀏覽器能夠看到這樣的頁面:

 

    3.日誌

    /usr/local/nginx/logs

    開機自啓動

    即在rc.local增長啓動代碼就能夠了。

    vi /etc/rc.local

    增長一行 /usr/local/nginx/sbin/nginx

    設置執行權限:

    chmod 755 rc.local

   

1.11.web網站部署

1.11.1.apache部署網站

    打開:apache服務:

    /etc/httpd/conf/httpd.conf 配置文件

    設置:

    Listen 80     #監聽端口

    Listen 10080

    Listen 8010

    User apache  #用戶

    Group apache #組

    ServerName 192.168.0.246:10080

    <Directory "/web">#網站受權

         AllowOverride All

         # Allow open access:

        Require all granted

    </Directory>

    DocumentRoot "/web/wmsp" #站點路徑

    重啓httpd便可。

    systemctl restart httpd.service

1.11.2.nginx部署網站

    打開nginx服務配置文件:

    /usr/local/nginx/conf/nginx.conf

    設置:

    server {

        listen       10080;     #監聽端口

        server_name  localhost;

        location / {

            root    /web/wmsp;  #站點路徑

            index  index.php index.html index.htm;

             }

        location = /50x.html {

            root   html;

             }

        location ~ \.php$ {

            root           /web/wmsp;  #站點路徑

            fastcgi_pass   127.0.0.1:9000;  #php-fpm監聽端口

            fastcgi_index  index.php;

            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

            include        fastcgi_params;

        }

    重啓nginx服務:

    cd /usr/local/nginx/sbin/

    ./nginx -s reload

    設置:#php-fpm參數:

    vi /etc/php-fpm.d/www.conf

    找到如下兩行,解除註釋

    listen.owner = nobody

    listen.group = nobody

    找下如下兩行,將各自的apache改成nginx

    user = apache -> user = nginx

    group = apache -> group = nginx

    若是沒有nginx用戶,則新建。

1.12.查看監聽服務狀態

1.12.1.Php-fpm狀態

 

1.12.2.mariadb狀態

 

1.12.3.Nginx端口

 

1.12.4.Php-fpm端口

 

1.12.5.Apache狀態

 

1.12.6.Apache監聽端口

 

2.部署方式2:一鍵式部署

2.1.lnmp一鍵式部署

2.1.1.下載lnmp1.3-full.tar.gz包

    將lnmp1.3-full.tar.gz上傳到服務器 /home

2.1.2.安裝lnmp1.3-full.tar.gz

    執行命令:

    cd /home

    tar -zxvf lnmp1.3-full.tar.gz && cd lnmp1.3-full  &&  ./install.sh  lnmp

    根據提示 :

    輸入mysql密碼;        輸入----123456

    是否啓用InnoDB           輸入----y

    選擇 mysql版本 5.7       輸入----6

    選擇php版本 5.6         輸入-----5

    是否內存優化:選擇     輸入-----1

   

    提示"Press any key to install...or Press Ctrl+c to cancel"後,

    按回車鍵確認開始安裝。

    LNMP腳本就會自動安裝編譯

    Nginx、MySQL、PHP、phpMyAdmin、Zend Optimizer這幾個軟件。

    安裝時間可能會幾十分鐘到幾個小時不等,

    主要是機器的配置網速等緣由會形成影響。

2.1.3.安裝完成

 

    驗證:nginx訪問php是否成功:

    http://192.168.0.229:8010/phpinfo.php

    (默認沒有配置端口,則不須要輸入8010),輸出php版本信息 ,則鏈接成功。

 

2.2.軟件配置文件預覽

    Nginx目錄:

    /usr/local/nginx/conf/nginx.conf

    Mysql目錄:

    /usr/local/mysql/bin/mysqld

    /etc/my.cnf

    Mysql數據庫所在目錄:

    /usr/local/mysql/var

    MariaDB目錄:

    /usr/local/mariadb/

    MariaDB數據庫所在目錄:

    /usr/local/mariadb/var

    Php目錄:

    /usr/local/php/etc/php.ini

    Php-frm目錄:

    /usr/local/php/etc/php-fpm.conf

    PhpMyAdmin目錄

    /home/wwwroot/default/phpmyadmin

    站點默認發佈目錄:

    /home/wwwroot/default

    Nginx日誌文件路徑:

    /home/wwwlogs/

    /root/vhost.sh添加虛擬主機配置文件所在目錄:

    /usr/local/nginx/conf/vhost

2.3.服務狀態管理

    Lnmp狀態管理:

    lnmp start| stop| reload|restart|kill |status

    Lnmp 各個程序狀態管理

    Lnmp nginx | mysql|php-fpm {start|stop| reload|restart|kill |status}

    Nginx狀態管理

    /etc/init.d/nginx/ start| stop| reload|restart

    Mysql狀態管理:

    /etc/init.d/mysql/ start| stop| reload|restart

    Php-fpm狀態管理:

    /etc/init.d/php-fpm/ start| stop| reload|restart

2.4.修改 mysql配置文件

    爲了 解決sql導入數據校驗問題。

    Vi /ect/my.cnf

    [mysqld]下面增長:

    sql-mode=''

 

    重啓mysql

    #/etc/init.d/mysql  restart

    或者:

    # systemctl restart mysql.service

    容許root用戶在任何地方進行遠程登陸,並具備全部庫任何操做權限,

    具體操做以下:

    在本機先使用root用戶登陸mysql: mysql -u root -p"123456" 進行受權操做:

    mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

    重載受權表:

    FLUSH PRIVILEGES;

    退出mysql數據庫:

    exit

2.5.導入項目和數據庫腳本

    Ubuntu系統安裝完成後;本地navicat連接服務器存在不通的狀況;

    1:檢查3306端口是否通信,

    2:ping 服務器是否通信,

    3:my.cnf 文件是否存在ip綁定

    4:防火牆是否關閉

    5:查看已有的iptables規則,以序號顯示

    #iptables -L -n --line-numbers

    #iptables -D INPUT  5

 

    再次嘗試用 navicat 連接服務器。

    1:導入站點wmsp 到/home/wwwroot 目錄下。

    2:導入站點yiqi到/home/wwwroot目錄下。

    3:新建數據庫pigcms和 qixiu;

    mysql –u root –p 「123456」

    建立pigcms:

    mysql>  CREATE DATABASE `pigcms` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

    建立qixiu:

    mysql> CREATE DATABASE `qixiu` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

    4:mysql 導入sql腳本:

    mysql –u root –p 「123456」

    use pigcms;

    source /home/wwwroot/wmsp/install/pigcms.sql;

    use qixiu;

    source /home/wwwroot/yiqi/qixiu.sql

2.6.修改站點目錄權限

    修改/home/wwwroot/wmsp/Conf目錄及子目錄權限,增長寫入權限

    chmod  -R 755 /home/wwwroot/wmsp/Conf

    chown www:www -R  /home/wwwroot/wmsp

    修改/home/wwwroot/wmsp/uploads目錄及子目錄權限,增長寫入權限

    chmod  -R 755 /home/wwwroot/wmsp/uploads

    修改/home/wwwroot/yiqi 目錄及子目錄權限,增長寫入權限

    chmod  -R 755  /home/wwwroot/yiqi

    chown www:www -R  /home/wwwroot/yiqi

2.7.配置nginx站點服務

    vi /usr/local/nginx/conf/nginx.conf

    配置10080端口

    root  /home/wwwroot/wmsp;

 

    配置8010端口

    將 server段拷貝一份 將端口改成8010。

    root  /home/wwwroot/yiqi;

 

    重啓服務:

    #lnmp restart

2.8.添加僞靜態規則

    cd /usr/local/nginx/conf/

    新建僞靜態文件:

    htaccess.conf

    Vi /usr/local/nginx/conf/ htaccess.conf

    編寫僞靜態規則:

        if (!-e $request_filename) {

            rewrite  /index.php?(.*)$  /index.php?$1 last;

            rewrite  ^(.*)$  /index.php?s=$1  last;

            break;

        }

    更新 nginx.conf

    vi /usr/local/nginx/conf/nginx.conf

    include  htaccess.conf

 

    重啓 nginx

    /etc/init.d/nginx   restart

2.9.硬盤啓動系統

    Ubuntu系統 可能發生 找不到網絡接口

    命令:

    dmesg |grep eth

   

    vi /etc/network/interfaces

 

    重啓網卡

    systemctl restart networking.service

2.10.性能優化配置

2.10.1.優化nginx配置文件

修改/usr/local/nginx/conf/nginx.conf 的內容爲附件中的內容。

 

2.10.2.優化php-fpm配置文件

修改/usr/local/php/etc/php-fpm.conf 的內容爲附件中的內容。

 

2.10.3.優化mysql配置文件

修改/etc/my.cnf 的內容爲附件中的內容。

 

2.10.4.修改ThinkTemplate.class.php文件

    /home/wwwroot/wmsp/Lib/Template/ThinkTemplate.class.php

    新增以下代碼:

   $tmplCacheFile=$this->config['cache_path'].$prefix.md5($tmplTemplateFile).$this->config['cache_suffix'];

        if(file_exists($tmplCacheFile)){

            return $tmplCacheFile;

        }

 

附件目錄見:

 

    $/電子商務系列/奧派微信營銷實訓平臺軟件/2.代碼庫/Environmental

    備註:修改後重啓服務

    systemctl  restart nginx.service

    systemctl  restart mysql.service

    systemctl  restart php-fpm.service

2.10.5.成績提交優化

1.更新配置文件

/home/wwwroot/wmsp/Conf/config.php

'OPEN_SCORE_QUEUE' => 1,     //學生提交成績時,是否啓用異步隊列。1開啓0關閉。開啓時須要windows下的計劃配合

2.新建執行文件:

#Vi /home/wwwroot/wmsp /commit.sh

輸入內容:

cd /home/wwwroot/wmsp

/usr/local/php/bin/php -f /home/wwwroot/wmsp/index.php ./log1

/usr/local/php/bin/php -f /home/wwwroot/wmsp/index.php ./log2

/usr/local/php/bin/php -f /home/wwwroot/wmsp/index.php ./log3

/usr/local/php/bin/php -f /home/wwwroot/wmsp/index.php ./log4

:wq保存

3.新建linux任務計劃

# crontab –e

輸入

*/5 * * * *  /home/wwwroot/wmsp/commit.sh

:wq保存

查詢linux任務計劃

#crontab -l

*/5 * * * *  /home/wwwroot/wmsp/commit.sh

//刪除任務計劃

# crontab -r

2.10.6.同步windows和linux系統時間

    新增:

    Crontab –e 新增

    */1 * * * * /home/wwwroot/wmsp/setDate.sh >log

    */1 * * * * /home/wwwroot/wmsp/getDateDiff.sh >log

    [root@localhost wmsp]# crontab -l

    */5 * * * * /home/wwwroot/wmsp/commit.sh >log

    */1 * * * * /home/wwwroot/wmsp/setDate.sh >log

    */1 * * * * /home/wwwroot/wmsp/getDateDiff.sh >log

2.10.7.修改php.ini文件

    文件目錄:

    /usr/local/php/etc/php.ini

    memory_limit = 128M 改爲了512M

    memory_limit = 512M

2.10.8.安裝xcache加速緩存

    cd /home/lnmp1.3-full && ./addons.sh install xcache

    根據提示輸入密碼(該密碼用於訪問xcache配置頁面),

    12345678

    以下圖:

 

    修改php.ini:

    /usr/local/php/etc/php.ini

    xcache.size  =               60M

    xcache.var_size  =             0

    保存後重啓php-fpm

    syetemctl  php-fpm restart

3.部署方式3:大賽空環境部署方案

3.1.安裝Centos7 64位服務器

    採用最小化安裝後 打開:

    vi /etc/sysconfig/network-scripts/ifcfg-ens33

    (ifcfg-ens33 網卡名 依據當前系統的名稱修改)

 

    更改:Onboot=yes 保存,ip採用自動獲取方式。

3.1.1.重啓網卡

    systemctl restart network.service

    保證Centos7服務器已經可以訪問外網(大賽須要聯網)

    ping  www.baidu.com

3.1.2.安裝ifconfig命令

    yum install -y net-tools

    安裝unzip zip命令(可選):

    yum install -y unzip zip

3.1.3.查看服務器ip地址

    ifconfig

3.2.安裝lnmp環境和xcache

3.2.1.安裝lnmp環境

    上傳lnmp1.3-full.tar.gz包到 /home目錄下,執行

    cd /home

    tar -zxvf lnmp1.3-full.tar.gz && cd lnmp1.3-full  &&  ./install.sh  lnmp

根據提示 :

    輸入mysql密碼;        輸入----123456

    是否啓用InnoDB           輸入----y

    選擇 mysql版本 5.7       輸入----6

    選擇php版本 5.6         輸入-----5

    是否內存優化:選擇     輸入-----1

   

    提示"Press any key to install...or Press Ctrl+c to cancel"後,

    按回車鍵確認開始安裝。

    LNMP腳本就會自動安裝編譯

    Nginx、MySQL、PHP、phpMyAdmin、Zend Optimizer這幾個軟件。

    安裝時間可能會幾十分鐘到幾個小時不等,

    主要是機器的配置網速等緣由會形成影響。

 

3.2.2.安裝xcache

    cd /home/lnmp1.3-full && ./addons.sh install xcache

    根據提示輸入密碼(該密碼用於訪問xcache配置頁面),

    12345678

 

    Enter鍵 進行安裝;

    安裝完成:

 

    則說明xcache安裝完成;

    檢查/usr/local/php/etc/php.ini配置文件:

 

…….

則php說明完成配置成功。

3.3.打包代碼上傳和安裝

一、 將TFS目錄:$/電子商務系列/奧派微信營銷實訓平臺軟件/2.代碼庫 下:

Environmental文件夾、wmsp文件夾、yiqi文件夾、install.sh文件打成一個wxyx.tar.gz包(使用7zip壓縮包)

二、上傳wxyx.tar.gz包到服務器的/home/wwwroot目錄下

三、解壓執行 tar -zxvf wxyx.tar.gz   

四、執行/home/wwwroot/install.sh

五、按提示輸入後安裝完成

以下圖:

[root@localhost wwwroot]# sh install.sh

please input AllPassMSDD_IP address:192.168.0.4 【外圍服務器ip】

your input AllPassMSDD_IP address is: 192.168.0.4

please input WMSP_IP address:192.168.0.223     【微信營銷服務器ip】

your input WMSP_IP address is: 192.168.0.223

Please confirm the IP you entered...Press any key to Continue...or Press Ctrl+c to cancel!

 

 

執行結果以下圖:則說明 部署成功。

 

 

 

3.4.檢查服務狀態

控制檯輸入:

# lnmp status

 

+-------------------------------------------+

|    Manager for LNMP, Written by Licess    |

+-------------------------------------------+

|              http://lnmp.org              |

+-------------------------------------------+

nginx (pid 979 978 977 976 970) is running...

php-fpm is runing!

SUCCESS! MySQL running (2214)

出現上述 提示:則說明 nginx,php,Mysql 3個服務器都是運行正常的。

 

3.4.1.Nginx服務

    #netstat -alnp |grep nginx

#ps -ef |grep nginx

 

重啓nginx:

# /etc/init.d/nginx  restart

Or:

# systemctl restart nginx.service

# systemctl restart nginx.service

 

 

 

3.4.2.Php-fpm服務

    #netstat -alnp |grep php-fpm

#ps -ef |grep php-fpm

 

 

重啓php-fpm:

# /etc/init.d/php-fpm restart

Or:

# systemctl restart php-fpm.service

 

 

3.4.3.Mysql服務

    #netstat -alnp |grep mysql

#ps -ef |grep mysql

 

重啓mysql:

# /etc/init.d/mysql restart

Or:

# systemctl restart mysql.service

 

 

3.5.設置服務器靜態ip

3.5.1.查看動態獲取的網卡信息:

#vi /etc/sysconfig/network-scripts/ifcfg-ens33

 

腳本功能主要是:

在ifcfg-ens33文件後追加:

IPADDR=192.168.0.202

NETMASK=255.255.255.0

GATEWAY=192.168.0.1

DNS1=218.2.135.1

DNS2=114.114.114.114

BOOTPROTO=dhcp 改爲 static。

而後重啓服務:

systemctl restart network.service

遇到突發狀況:如shell腳本執行失敗,能夠考慮手動更新文件後手動重啓服務。

 

3.5.2.執行wmspStaticIP.sh腳本

執行 /2.代碼庫/Environmental/wmspStaticIP.sh

#sh wmspStaticIP.sh

1:IPADDR IP –輸入服務器IP地址 如: 192.168.0.208

2:NETMASK: --輸入子網掩碼 如:255.225.225.0

3:GATEWAY: --輸入默認網關 如:192.168.0.1

4:DNS1 IP: --輸入DNS1如: 218.2.135.1

4:DNS2 IP: --輸入DNS2如: 114.114.114.114

執行結果,以下圖:

 

 

3.5.3.查看執行完成後的靜態ip地址

#vi /etc/sysconfig/network-scripts/ifcfg-ens33

以下圖:

 

3.5.4.檢查服務器IP配置

檢查服務器ip配置:

#ifconfig

 

說明IP爲  192.168.0.202

 

測試是否聯網外圍:

#ping www.baidu.com

 

說明 可以聯網外網。

 

 

3.6.數據備份

核心腳本以下:

echo "dataBackup is start!"

cd /home/wwwroot/

tar -czvf wmsp_dataBackup.tar.gz  wmsp

tar -czvf yiqi_dataBackup.tar.gz  yiqi

echo "wmspbak,yiqibak dataBackup is success"

mysqldump -u root -p123456 pigcms > pigcms_dataBackup.sql

mysqldump -u root -p123456 qixiu > qixiu_dataBackup.sql

echo "pigcms_dataBackup,qixiu_dataBackup is success"

echo "Backing up. Wait a minute......"

cp -rf wmsp_dataBackup.tar.gz /home/

cp -rf yiqi_dataBackup.tar.gz /home/

cp -rf pigcms_dataBackup.sql /home/

cp -rf qixiu_dataBackup.sql /home/

echo "copy dataBackup is All success......"

exit

3.6.1.1:執行備份shell腳本

#cd /home/wwwroot/Environmental

# sh dataBackup.sh

執行完成後 以下提示,則說明備份成功。

 

 

3.6.2.2:拷貝備份文件到U盤

拷貝 /home下面的4個備份文件 到U盤(4GB以上,推薦8GB以上)。

#cd /home

wmsp_dataBackup.tar.gz

yiqi_dataBackup.tar.gz

pigcms_dataBackup.sql

qixiu_dataBackup.sql

 

使用軟件庫裏面的 SSHSecureShellClient_downcc.zip或者MobaXterm_Setup_9.4.msi

連接到服務器下載到桌面或者直接拷貝到U盤便可。

 

3.7.數據還原

核心腳本以下:

cd /home

mysqldump -u root -p123456 pigcms < pigcms_dataBackup.sql

mysqldump -u root -p123456 qixiu < qixiu_dataBackup.sql

#cp -rf wmsp_dataBackup.tar.gz  ./wwwroot/

#cp -rf yiqi_dataBackup.tar.gz  ./wwwroot/

cd wwwroot/

mv wmsp wmsp_old

mv yiqi yiqi_old

tar -xzvf  wmsp_dataBackup.tar.gz

tar -xzvf  yiqi_dataBackup.tar.gz

echo "dataReduction is All success"

exit

 

3.7.1.1:站點還原:

將以前備份的4個文件放到/home下面

執行dataReduction.sh

#cd /home/wwwroot/Environmental

# sh dataReduction.sh

 

 

4.部署緩存服務器

4.1.安裝memcached

4.1.1.memcached安裝部署

Memcached 是一個高性能的分佈式內存對象緩存系統,用於動態Web應用以減輕數據庫負載。它經過在內存中緩存數據和對象來減小讀取數據庫的次數,從而提供動態、數據庫驅動網站的速度。

安裝
進入lnmp解壓後的目錄,執行:./addons.sh install memcached 

 

輸入對應的序號 2 ,回車,再次確認回車開始安裝。

 

看到 Memcached installed successfully, enjoy it!則說明安裝成功。
卸載
執行:./addons.sh uninstall memcached

 

4.1.2.memcached配置

1 :部署安裝路徑說明:

/usr/local/memcached      –服務端

/usr/local/libmemcached   --客戶端

/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/memcached.so –插件

 

/usr/local/php/etc/php.ini裏面新增

extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/memcached.so

 

#查看是否php模塊安裝成功

[root@localhost lnmp1.3-full]# php -m | grep memcached

memcached

 

2:啓動memcached :   

啓動服務(命令默認在/usr/local/memcached/bin/memcached。

主要的啓動參數

-p 監聽的端口
-l 鏈接的IP地址, 默認是本機
-d start 啓動memcached服務
-d restart 重起memcached服務
-d stop|shutdown 關閉正在運行的memcached服務
-d install 安裝memcached服務
-d uninstall 卸載memcached服務
-u 以的身份運行 (僅在以root運行的時候有效)
-m 最大內存使用,單位MB。默認64MB
-M 內存耗盡時返回錯誤,而不是刪除項
-c 最大同時鏈接數,默認是1024
-f 塊大小增加因子,默認是1.25
-n 最小分配空間,key+value+flags默認是48
-h 顯示幫助

 

 

啓動命令:

#/usr/local/memcached/bin/memcached -d -l 127.0.0.1 -p 11211 -u root -m 1024 -c 4000 -P /var/run/memcached.pid

 

 

查看進程:

 [root@localhost wmsp]# ps -aux |grep mem

 

root     10961  0.0  0.0 314928  1040 ?        Ssl  10:14   0:00 /usr/local/memcached/bin/memcached -d -l 127.0.0.1 -p 11211 -u root -m 64 -c 1024 -P /var/run/memcached.pid

4.1.3.memcached配置nginx服務

server {

        listen       10090;

        server_name  127.0.0.1;

        location / {

            root   html;

            index  index.php index.html index.htm;

            set  $memcached_key  $uri; #uri是url剃掉主機名,賦值給memcached_key

            memcached_pass  127.0.0.1:11211;#轉發給memcached

            error_page 404 502 504=@fallback;#必須以@首字符命名

        }

        location @fallback {

            proxy_pass http://backend  #集羣服務器節點

root html;#到root下查找網頁

            index index.php;   #指定首頁名叫index.php

           

        }

4.1.4.memcached配置測試

1:新建memcached.php

[root@localhost wmsp]# cat memcached.php

<?php

  error_reporting(E_ALL & ~E_NOTICE);

  $m = new Memcached();

  $m->addServer("127.0.0.1", 11211);

  $m->set("foo", "Hello!");

  $m->set("bar", "Memcached...");

  $arr = array(

       $m->get("foo"),

       $m->get("bar")

   );

   print_r($arr);

 

訪問:http://192.168.0.202:10080/memcached.php

Array ( [0] => Hello! [1] => Memcached... )

 

2:查看Memcached信息

#telnet 127.0.0.1 11211

Trying 127.0.0.1...

Connected to 127.0.0.1.

Escape character is '^]'.

stats

 

 

4.2.安裝Redis

4.2.1.Redis安裝部署

Redis是一個開源、支持網絡、基於內存、鍵值對存儲數據庫。

安裝
進入lnmp解壓後的目錄,執行:./addons.sh install redis

 

看到Redis installed successfully, enjoy it!,則安裝成功。

 

 

4.2.2.Redis配置

1 :部署安裝路徑說明:

/usr/local/redis

/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/redis.so –插件

 

/usr/local/php/etc/php.ini裏面新增

extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/redis.so

/var/run/redis.pid

 

進程端口:

[root@localhost lnmp1.3-full]# ps aux |grep redis

root     25636  0.1  0.0 136944  7512 ?        Ssl  15:59   0:02 /usr/local/redis/bin/redis-server 127.0.0.1:6379

 

啓動redis:

/usr/local/redis/bin/redis-server  /usr/local/redis/etc/redis.conf

 

4.2.3.Redis配置測試

重啓redis:

/etc/init.d/redis restart

 

進入redis-cli測試:

[root@localhost init.d]# /usr/local/redis/bin/redis-cli

127.0.0.1:6379> set foo bar

OK

127.0.0.1:6379> get foo

"bar"

 

新建redis.php 測試:

Vi /home/wwwroot/wmsp/redis.php

<?php

$redis = new redis();

$redis->connect('127.0.0.1', 6379);

$redis->auth(「666」);

$redis->set('redistest','redistest66666666666666666');

echo $redis->get('redistest');

?>

 

訪問:http://192.168.0.202:10080/redis.php

'redistest66666666666666666'

相關文章
相關標籤/搜索