LNMP架構介紹、MySQL安裝、PHP安裝、 Nginx介紹

LNMP架構介紹

  • LNMP==Linux+Nginx+Mysql+PHP
  • 和LAMP不一樣的是,提供web服務的是Nginx 而且php是做爲一個獨立服務存在的,這個服務叫作php-fpm Nginx直接處理靜態請求,動態請求會轉發給php-fpm

Mysql安裝

  1. 進入文件下載目錄,安裝包通常下載在這個目錄下:/usr/local/src/ [root@localhost ~]# cd /usr/local/src/
  2. 下載安裝包,下載的版本爲5.6.39 [root@localhost src]# wget http://mirrors.163.com/mysql/Downloads/MySQL-5.6/mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
  3. 解壓下載的包 [root@localhost src]# tar -zxvf mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
  4. 移動解壓完的目錄並更更名字爲mysql [root@localhost mysql]# mv mysql-5.6.39-linux-glibc2.12-x86_64 /usr/local/mysql
  5. 建立一個data目錄,能夠看到data目錄已經存在,那麼就不須要執行命令建立目錄 [root@localhost mysql]# mkdir data
  6. 建立一個mysql用戶 [root@localhost mysql]# useradd mysql
  7. 安裝mysql,進行初始化,指定用戶爲mysql,指定數據存放地址/data/mysql [root@localhost mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql 運行完該命令後若是不知道出沒出問題,能夠執行echo $? 看輸出是否是0,是0表示沒有問題。
  8. 拷貝mysql的模板配置文件,mysql的配置文件存放在/etc/下,而且名字固定爲my.cnf,若是不想存放在這個目錄下,那麼啓動的時候須要指定配置文件 [root@localhost mysql]# cp support-files/my-default.cnf /etc/my.cnf
  9. 拷貝啓動的腳本 [root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld
  10. 編輯啓動腳本 vim /etc/init.d/mysqld 找到basedir和datadir將內容更改以下: basedir=/usr/local/mysql datadir=/data/mysql
  11. 更改啓動腳本的配置文件爲755 [root@localhost mysql]# chmod 755 /etc/init.d/mysqld
  12. 將mysqld加入開啓啓動 [root@localhost mysql]# chkconfig --add mysqld
  13. 啓動mysql,下面兩條命令均可以啓動MySQL
  14. service mysqld start
  15. /etc/init.d/mysqld start [root@localhost mysql]# service mysqld start

php安裝

  1. 下載PHP安裝包 [root@localhost src]wget http://cn2.php.net/distributions/php-5.6.37.tar.gz
  2. 解壓安裝包 [root@localhost src]tar zxvf php-5.6.37.tar.gz
  3. 進入解壓後的源碼包 cd php-5.6.37
  4. 執行configure命令,該命令帶的參數較多,再執行完後能夠運行echo $? 驗證是否有錯誤。 [root@localhost php-5.6.37]# ./configure --prefix=/usr/local/php-fpm --with-config-file-path=/usr/local/php-fpm/etc --enable-fpm --with-fpm-user=php-fpm --with-fpm-group=php-fpm --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-pdo-mysql=/usr/local/mysql --with-mysql-sock=/tmp/mysql.sock --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-ftp --enable-mbstring --enable-exif --with-pear --with-curl --with-openssl #prefix=/usr/local/php-fpm 指定安裝目錄 #with-config-file-path=/usr/local/php-fpm/etc 指定配置文件所在地址 #enable-fpm 啓動fpm服務 #with-fpm-user=php-fpm with-fpm-group=php-fpm 指定用戶以及用戶組
  5. configure完成後執行make && make install來編譯安裝 這一步完成以後一樣可使用echo $?驗證編譯和安裝時否出現了問題
  6. 拷貝配置文件 cp php.ini-production /usr/local/php-fpm/etc/php.ini
  7. 進入配置文件目錄 cd /usr/local/php-fpm/etc/
  8. 建立一個配置文件 vim php-fpm.conf
  9. 在建立的配置文件中添加如下內容 [global] #定義一個全局的參數
    pid = /usr/local/php-fpm/var/run/php-fpm.pid error_log = /usr/local/php-fpm/var/log/php-fpm.log [www] #模塊的名字 listen = /tmp/php-fcgi.sock #監聽的地址 listen.mode = 666 #用來定義sock文件的權限 user = php-fpm #定義用戶 group = php-fpm #用戶組 pm = dynamic pm.max_children = 50 pm.start_servers = 20 pm.min_spare_servers = 5 pm.max_spare_servers = 35 pm.max_requests = 500 rlimit_files = 1024
  10. 拷貝啓動的腳本 cp /usr/local/src/php-5.6.30/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
  11. 更改啓動腳本的權限 chmod 755 /etc/init.d/php-fpm
  12. 加入chkconfig服務列表 chkconfig --add php-fpm
  13. 新建一個php-fpm用戶 useradd php-fpm
  14. 啓動服務 service start php-fpm
[root@localhost init.d]# service php-fpm start
Starting php-fpm  done
[root@localhost init.d]# ps aux |grep php-fpm
root     118323  0.0  0.2 124220  4924 ?        Ss   23:51   0:00 php-fpm: master process (/usr/local/php-fpm/etc/php-fpm.conf)
php-fpm  118324  0.0  0.2 124220  4688 ?        S    23:51   0:00 php-fpm: pool www
php-fpm  118325  0.0  0.2 124220  4688 ?        S    23:51   0:00 php-fpm: pool www
php-fpm  118326  0.0  0.2 124220  4688 ?        S    23:51   0:00 php-fpm: pool www
php-fpm  118327  0.0  0.2 124220  4688 ?        S    23:51   0:00 php-fpm: pool www
php-fpm  118328  0.0  0.2 124220  4692 ?        S    23:51   0:00 php-fpm: pool www
php-fpm  118329  0.0  0.2 124220  4696 ?        S    23:51   0:00 php-fpm: pool www

Nginx介紹

Nginx官網 nginx.org,最新版1.15.3,最新穩定版1.15.2
   Nginx應用場景:web服務、反向代理、負載均衡
   Nginx著名分支,淘寶基於Nginx開發的Tengine,使用上和Nginx一致,服務名,配置文件名都同樣,和Nginx的最大區別在於Tenging增長了一些定製化模塊,在安全限速方面表現突出,另外它支持對js,css合併 
   Nginx核心+lua相關的組件和模塊組成了一個支持lua的高性能web容器openresty,參考 http://jinnianshilongnian.iteye.com/blog/2280928

關於Nginx的詳細介紹能夠參考:https://blog.csdn.net/hanhuili/article/details/9389571php

相關文章
相關標籤/搜索