LNMP環境搭建

本人保存在本地的一份lnmp安裝步驟教程,原文已經找不到地址了,在此當作我的筆記。php

準備工做:
一、關閉防火牆
    service iptables stop
    
二、關閉SELinux
    setenforce 0 #使配置當即生效
    
三、安裝約定
    軟件源代碼包存放位置:/lnmp/src
    源碼包編譯安裝位置:/usr/local/軟件名
    數據庫數據文件存儲路徑:/data/mysql

四、安裝編譯工具及庫文件
    使用CentOS yum命令一鍵安裝
    yum install -y apr* autoconf automake gcc gcc-c++ cmake gtk+-devel libcurl-devel zlib-devel openssl openssl-devel pcre pcre-devel gd kernel keyutils patch perl kernel-headers compat* cpp glibc libgomp libstdc++-devel keyutils-libs-devel libsepol-devel libselinux-devel krb5-devel libXpm* freetype-devel fontconfig fontconfig-devel libjpeg* libpng* php-gd gettext gettext-devel ncurses* libtool* libxml2 libxml2-devel patch policycoreutils bison

軟件安裝篇:

一、安裝 libmcrypt,php中的加密擴展庫
    tar -zxvf libmcrypt-2.5.8.tar.gz
    cd /lnmp/src/libmcrypt-2.5.8
    ./configure #配置
    make && make install #編譯和安裝

二、安裝 nginx    
    useradd www -s /sbin/nologin #建立nginx運行帳戶www,不容許直接登陸系統
    
    cd /lnmp/src/
    tar -zxvf nginx-1.11.5.tar.gz
    cd nginx-1.11.5
    
    ./configure --prefix=/usr/local/nginx --without-http_memcached_module --user=www --group=www   --with-http_stub_status_module --with-http_ssl_module    

    make && make install
    
    設置nginx開機啓動   複製nginx啓動腳本,此腳本爲網上下載
    cp /lnmp/src/nginx /etc/rc.d/init.d/     #拷貝啓動文件
    chmod 775 /etc/rc.d/init.d/nginx         #賦予文件執行權限

    chkconfig nginx on                         #設置開機啓動
    service nginx start                        #啓動nginx
    
三、安裝 Mysql
    useradd mysql -s /sbin/nologin             #建立用戶mysql,不容許直接登陸系統
    mkdir -p /var/mysql/data                 #建立MySQL數據庫存放目錄
    chown -R mysql:mysql /var/mysql/data     #設置MySQL數據庫目錄權限
    
    cd /lnmp/src                        
    tar -zxvf mysql-5.5.28.tar.gz
    cd mysql-5.5.28
    
    cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
    -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
    -DDEFAULT_CHARSET=utf8 \
    -DDEFAULT_COLLATION=utf8_general_ci \
    -DWITH_MYISAM_STORAGE_ENGINE=1 \
    -DWITH_INNOBASE_STORAGE_ENGINE=1 \
    -DWITH_MEMORY_STORAGE_ENGINE=1 \
    -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 \
    -DMYSQL_DATADIR=/var/mysql/data \
    -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306 

    make && make install
    
    cd /usr/local/mysql
    cp ./support-files/my-huge.cnf /etc/my.cnf #拷貝配置文件  (覆蓋文件)

    vi /etc/my.cnf                 #編輯配置文件,在 [mysqld] 部分增長
    datadir = /var/mysql/data     #添加MySQL數據庫路徑
    
    ./scripts/mysql_install_db --user=mysql #生成mysql系統數據庫
    cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld #把Mysql加入系統啓動
    vi /etc/rc.d/init.d/mysqld #編輯
    basedir=/usr/local/mysql #MySQL程序安裝路徑
    datadir=/var/mysql/data #MySQl數據庫存放目錄
    
    chmod 755 /etc/init.d/mysqld #增長執行權限
    chkconfig mysqld on #加入開機啓動
    
    chown -R mysql /usr/local/mysql    #修改/usr/local/mysql所屬用戶爲mysql
    service mysqld start #啓動mysqld
    
    vi /etc/profile                 #把mysql服務加入系統環境變量:在最後添加
    export PATH=$PATH:/usr/local/mysql/bin
    source /etc/profile #使配置當即生效

    mkdir /var/lib/mysql #建立目錄
    ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock #添加軟連接
    mysql_secure_installation #設置Mysql密碼,根據提示按Y 回車輸入2次密碼
    
        安裝完mysql-server 會提示能夠運行mysql_secure_installation。運行mysql_secure_installation會執行幾個設置:  初次運行,第一個直接回車便可
          a)爲root用戶設置密碼
          b)刪除匿名帳號
          c)取消root用戶遠程登陸
          d)刪除test庫和對test庫的訪問權限
          e)刷新受權表使修改生效
        經過這幾項的設置可以提升mysql庫的安全。建議生產環境中mysql安裝這完成後必定要運行一次mysql_secure_installation
    功能同上:mysqladmin -u root -p password "123456" #或者直接修改密碼

四、安裝 php
    cd /lnmp/src
    tar -jxvf php-7.0.7.tar.bz2
    cd php-7.0.7
    ./configure --prefix=/usr/local/php7 --with-config-file-path=/usr/local/php7/etc  --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mysqlnd --with-mysql-sock=/usr/local/mysql/mysql.sock --with-gd --with-iconv --with-zlib --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-mbregex --enable-fpm --enable-mbstring --enable-ftp --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-mcrypt --with-curl --with-jpeg-dir --with-freetype-dir   --with-pdo-mysql=/usr/local/mysql/

    make && make install #安裝

    cp php.ini-production /usr/local/php7/etc/php.ini     #複製php配置文件到安裝目錄
    rm -f /etc/php.ini                                     #刪除系統自帶配置文件
    ln -s /usr/local/php7/etc/php.ini /etc/php.ini         #添加軟連接
 
    cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf 
    #拷貝模板配置文件爲php-fpm配置文件
    修改:vi /usr/local/php7/etc/php-fpm.conf
        pid = run/php-fpm.pid #取消前面的分號
        
    cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf  
    修改:vi /usr/local/php7/etc/php-fpm.d/www.conf     
        user = www         #設置php-fpm運行帳號爲www
        group = www     #設置php-fpm運行組爲www

    設置 php-fpm開機啓動
    cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm #拷貝php-fpm到啓動目錄
    chmod +x /etc/rc.d/init.d/php-fpm                     #添加執行權限
    chkconfig php-fpm on                                 #設置開機啓動
    service php-fpm start                                 #啓動php-fpm
    
五、配置nginx支持php
    修改配置文件:vi /usr/local/nginx/conf/nginx.conf 
    一、去掉location ~ \.php$ {}等幾行前面的#
    二、將:fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
        改成:fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    三、重啓nginx      service nginx restart
    四、將location /  下面的index   後面添加上index.php   優先解析php文件
    五、cd /usr/local/nginx/html/   寫一個文件進行測試
        index.php   phpinfo()

useradd -s /sbin/nologin -M -g mysql mysql
-s表示指定用戶所用的shell,此處爲/sbin/nologin,表示不登陸。
-M表示不建立用戶主目錄。
-g表示指定用戶的組名爲mysql。
最後的mysql表示用戶名。
相關文章
相關標籤/搜索