如何快速正確搭建LNMP環境?

2021-09-11 06:16:05 字數 3750 閱讀 4887

首先我們來比較一下 apache與nginx 的優缺點:

apache

1、穩定

2、處理動態請求有優勢(nginx處理動態,會稍微略遜一些)

3、功能豐富,但是占用資源多

4、select模型,阻塞

nginx

1、輕量級,占用資源少(apache資源多,比較笨重些)

2、抗併發,nginx以epoll作為開發模型,處理請求是非同步非阻塞的

3、nginx配置方便,負載均衡,反向**,lua語言擴充套件

4、處理靜態請求有很大優勢

兩者最核心的區別在於 apache是同步多程序模型,乙個連線對應乙個乙個程序。而nginx是非同步的,多個連線(萬級別)可以對應乙個程序。

安裝前的說明:

1、帶有黃色及紅色字型,不要複製,那只是**提示或說明。

軟體安裝目錄: /usr/local/****

2、解壓安裝nginx:

tar xf nginx-1.14.2.tar.gz

cd nginx-1.14.2

groupadd www

useradd -g www www -m -s /sbin/nologin     (-m:不要家目錄 -s /sbin/nologin:不要讓它登入)

在編譯前,確認是否已經安裝了軟體所需要的依賴庫,所需要的依賴庫如下:

yum install gcc gcc-c++ -y

yum install pcre-devel -y

yum install openssl-devel -y

依賴庫全部安裝後,進行下面的編譯操作:

當上面的編譯完成後,繼續下面命令,安裝nginx:make && make install

安裝完成後使用nginx:

nginx啟動:/usr/local/nginx/sbin/nginx

nginx關閉:/usr/local/nginx/sbin/nginx -s stop

nginx重啟:/usr/local/nginx/sbin/nginx -s reload

2、解壓安裝mysql:

tar xf mysql-5.5.62.tar.gz

cd mysql-5.5.62

groupadd mysql

useradd -g mysql mysql -m -s /sbin/nologin

在編譯前,確認是否已經安裝了軟體所需要的依賴庫,所需要的依賴庫如下:

yum install cmake ncurses-devel -y

yum install autoconf -y

依賴庫全部安裝後,進行下面的編譯操作:

cmake -dcmake_install_prefix=/usr/local/mysql -dmysql_unix_addr=/tmp/mysql.sock -dmysql_user=mysql -ddefault_charset=utf8 -ddefault_collation=utf8_general_ci -dwith_myisam_storage_engine=1 -dwith_innobase_storage_engine=1 -dwith_debug=0 -dwith_readline=1 -dwith_embedded_server=1 -denabled_local_infile=1

編譯完成無誤後:rm -f cmakecache.txt

當上面的完成後,繼續下面命令,安裝mysql:make && make install

mysql安裝完成後,需要初始化(進入 /usr/local/mysql)執行命令:

scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data/ --basedir=/usr/local/mysql

安裝及初始化完成後使用mysql:

啟動mysql:/usr/local/mysql/support-files/mysql.server start

關閉mysql:/usr/local/mysql/support-files/mysql.server stop

重啟mysql:/usr/local/mysql/support-files/mysql.server restart

首次進入資料庫,需要修改密碼,命令:mysqladmin -uroot -p'舊密碼' password '新密碼'

2、解壓安裝php:

tar xf php.tar.gz

cd php-7.2.13

在編譯之前,先安裝依賴庫:

yum install libxml2-devel -y

yum install curl-devel -y

yum install libjpeg-devel -y

yum install libpng-devel -y

yum install freetype-devel -y

yum install openssl-devel -y

yum install libxslt-devel -y

依賴庫全部安裝後,進行下面的編譯操作:

./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype-dir=/usr/local/freetype --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --with-gd --with-openssl --with-mhash --enable-pcntl --with-xmlrpc --enable-zip --enable-soap --with-gettext --enable-opcache --with-xsl

編譯完成無誤後:make && make install

安裝完成後使用php:

啟動php:/usr/local/php/sbin/php-fpm

nginx與php通訊配置:

nginx必須配合php-fpm才能解釋php語言,當nginx遇到php檔案時,反向**到9000端**給php-fpm執行,如果只啟動了nginx,沒有啟動php-fpm是不能解釋php檔案的。

2、進入nginx配置檔案:

最後   實驗一下:

在nginx的html目錄建乙個 index.php檔案,裡寫輸出phpinfo**,瀏覽器訪問若展示資訊,則nginx與php通訊連線實驗成功!

Docker快速搭建LNMP環境

前面的部落格中已經介紹了如何基於容器製作映象,此方法的原理是使用乙個正在執行的容器,根據生產所需進行配置更改等操作後,使其滿足生產環境,再將這個容器打包製作為映象,這樣類似於快照製作映象的方式儘管操作還算比較簡單,但是當生產環境規模增大,配置變得越來越複雜後,就會顯得很臃腫很笨拙。所以下面使用doc...

搭建LNMP環境

yum install nginx yserver error page 404 404.html location 40x.html error page 500 502 503 504 50x.html location 50x.html 修改完成後,啟動 nginx nginx此時,可訪問來確...

lnmp環境搭建

lnmp版本 nginx1.12.1 php7.1.8 mysql5.6.37 php和nginx包 提取碼 ggmf 安裝前先安裝依賴 已經安裝了可能會進行公升級,版本完全一致則不會進行任何操作。yum y install bzip2 devel curl devel freetype devel...