LAMP VS LNMP

      網友投稿 922 2025-03-31

      LAMP ?VS ?LNMP


      1.1 Apache與Nginx 的異同

      Apache 、Nginx與Mysql+PHP搭配都可以提供一套完整的Web服務。一般簡寫為LAMP(Apache+Mysql+PHP)、LNMP(Nginx++Mysql+PHP)。

      apache適用性很強,幾乎可以運行在所有的計算機平臺,功能模塊很多。有強大的rewrite功能,與PHP共同使用時比較簡單,不需要其他服務配合使用。但是Apache處理請求時是同步、阻塞型的,一個連接對應一個進程,所以CPU、內存消耗大,并發性能較差。

      Nginx則是輕量級、異步、非阻塞型的web服務,多連接可以對應一個進程,因此CPU、內存消耗小,并發性能高,處理靜態請求能力很強。Nginx的配置也很簡單,但rewrite功能不敵apache,在穩定性、安全性方面也有所欠缺。

      如今很多公司開始采用nginx代替apache,或者用nginx處理靜態請求,讓apache處理動態請求。

      1.2 部署LAMP

      1.2.1 鏡像安裝

      前提條件

      a.??? 已獲取安裝操作系統的iso鏡像文件,以suse11sp3為例:

      SLES-11-SP3-DVD-x86_64-GM-DVD1.iso

      b.??? 服務器已安裝GCC編譯器

      c.??? 服務器未安裝過php,否則請確保對已安裝php清理干凈

      安裝Web Server

      # mkdir /opt/iso

      # mount –o loop /opt/SLES-11-SP3-DVD-x86_64-GM-DVD1.iso /opt/iso/

      # zypper ar /opt/iso suse11sp3

      # zypper install apache2

      # zypper install mysql

      # zypper install php53 php53-mysql apache2-mod_php53 php53-zlib libxml2 libmm14 libmcrypt php53-mcrypt php53-curl php53-gd

      修改配置文件

      1、???? 配置rewrite:# vi /etc/sysconfig/apache2

      在APACHE_MODULES加入"rewrite"字段:

      2、???? 執行命令:# SuSEconfig

      3、???? 打開配置文件:# vi /etc/apache2/default-server.conf

      a.? 將Options None 修改為 Options FollowSymLinks

      b.? 將AllowOverride None 修改為 AllowOverride All

      c.? 將Order allow,deny下面的一行修改為 Allow from all

      d.??? 修改WebServer根路徑,所有網頁將默認從此路徑下訪問

      4、???? 啟動Mysql

      5、???? 重啟Apache

      1.2.1 安裝操作系統時同步安裝

      在進入Software選項頁面后,點擊進入,勾選“Web and LAMP Server”和“C/C++ Compiler and Tools”,如下圖:

      這種方式安裝Web Server,可能還需要安裝一些php的相關組件。裝完系統后借助鏡像安裝即可,可參考1.2.1章節。

      1.2.2 rpm安裝

      前提條件

      a.??? 已獲取安裝apache2、myslq、php所需的rpm包

      b.??? 服務器已安裝GCC編譯器

      c.??? 服務器未安裝過php,否則請確保對已安裝php清理干凈

      安裝apache2

      # rpm -ivh libapr1-XXX.rpm

      # rpm -ivh libapr-util1-XXX.rpm

      # rpm -ivh apache2-XXX.rpm

      # rpm –ivh apache2-prefork- XXX.rpm

      安裝mysql

      # rpm -ivh mysql-shared-XXX.rpm

      # rpm -ivh mysql-client-XXX.rpm

      # rpm -ivh perl-Data-ShowTable-XXX.rpm

      # rpm -ivh perl-DBD-mysql-XXX.rpm

      # rpm -ivh mysql-XXX.rpm

      安裝php

      # rmp -ivh libmm14-XXX.rpm

      # rpm -ivh php53-XXX.rpm

      # rpm -ivh apache2-mod_php53-XXX.rpm

      # rpm -ivh php53-mysql-XXX.rpm

      # rpm -ivh php53-zlib-XXX.rpm

      # rpm -ivh php53-curl-XXX.rpm

      # rpm -ivh libmcrypt-XXX.rpm

      # rpm -ivh libmxml2-XXX.rpm

      # rpm -ivh php53-mcrypt-XXX.rpm

      # rpm -ivh php53-gd-XXX.rpm

      修改配置文件

      參考1.2.1章節

      1.2.3 源碼安裝

      前提條件

      a.??? 已獲取安裝apache2、php所需的源碼壓縮包

      b.??? 服務器已安裝GCC編譯器

      c.??? 服務器未安裝過php,否則請確保對已安裝php清理干凈

      安裝apache2

      1、??????????? 安裝APR apr-1.4.6.tar.gz

      # tar -zxf apr-1.4.6.tar.gz

      # cd apr-1.4.6

      # ./configure --prefix=/usr/local/apr

      # make

      # make install

      2、??????????? 安裝APR-util apr-util-1.4.1.tar.gz

      # tar -zxf apr-util-1.4.1.tar.gz

      # cd apr-util-1.4.1

      # ./configure --prefix=/usr/local/apr-util --with-apr = /usr/local/apr/bin/apr-1-config

      # make

      # make install

      3、??????????? 安裝PCRE pcre-8.30.zip

      # unzip -o pcre-8.30.zip

      # cd pcre-8.30

      # ./configure --prefix=/usr/local/pcre

      # make

      # make install

      4、??????????? 安裝Apache2 httpd-2.4.2.tar.gz

      # tar -zvxf httpd-2.4.2.tar.gz

      # cd httpd-2.4.2

      # ./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre/

      # make

      # make install

      5、??????????? 修改服務端口、服務名、根路徑等,確保端口未被其他服務占用

      # vi /usr/local/apache2/conf/httpd.conf

      6、??????????? 啟動apache2

      # /usr/local/apache2/bin/apachectl start

      # netstat –anp | grep 80

      安裝mysql

      mysql通過rpm包安裝即可,安裝結束后需啟動mysql服務。

      安裝php

      1、??????????? 安裝Zlib zlib-1.2.5.tar.gz

      # tar -zxvf zlib-1.2.5.tar.gz

      # cd ?zlib-1.2.5

      # ./configure --prefix=/usr/local/zlib/

      # make

      # make install

      2、??????????? 安裝gd gd-2.0.33.tar.gz

      # tar -zxvf gd-2.0.33.tar.gz

      # cd ?gd-2.0.33

      # ./configure --prefix=/usr/local/gd/ --with-zlib=/usr/local/zlib/

      # make

      # make install

      3、??????????? 安裝Curl curl-7.19.4.tar.gz

      # tar -zxvf curl-7.19.4.tar.gz

      # cd curl-7.19.4

      # ./configure --prefix=/usr/local/curl/

      # make

      # make install

      4、??????????? 安裝Libxml libxml2-2.7.7.tar.gz

      # tar -zxvf libxml2-2.7.7.tar.gz

      # cd libxml2-2.7.7

      # ./configure --prefix=/usr/local/libxml2 --with-zlib=/usr/local/zlib/

      # make

      # make install

      5、??????????? 安裝PHP php-5.3.10.tar.gz

      # tar -zxvf php-5.3.10.tar.gz

      #? ./configure --prefix=/usr/local/php/ --with-libxml-dir=/usr/local/libxml2/ --with-gd=/usr/local/gd/? --with-zlib-dir=/usr/local/zlib/ --with-curl=/usr/local/curl/

      修改配置文件

      1、??????????? 拷貝php.ini文件

      # cp php-5.3.10/php.ini-production /usr/local/php/lib/php.ini

      2、??????????? 關聯apache和php

      # vi /usr/local/apache2/conf/httpd.conf

      在AddType application/x-gzip .gz .tgz 后面插入如下內容

      AddType application/x-httpd-php .php

      AddType application/x-httpd-php-source .phps

      3、??????? 重啟apache2

      # /usr/local/apache2/bin/apachectl restart

      1.3 部署LNMP

      1.3.1 源碼安裝

      Nginx和PHP并不能直接做關聯,需要通過fastcgi網關接口來進行通信,因此安裝LNMP(Nginx+Mysql+PHP)就需要通過源碼方式安裝php-fastcig的管理器php-fpm。

      前提條件

      a.??? 已獲取安裝nginx、php所需的源碼壓縮包

      b.??? 服務器已安裝GCC編譯器

      c.??? 服務器未安裝過php,否則請確保對已安裝php清理干凈

      安裝nginx

      1、??????? 安裝zlib zlib-1.2.7.tar.gz

      # tar zlib-1.2.7.tar.gz

      # cd zlib-1.2.7

      # ./configure --prefix=/usr/local/zlib/

      # make

      # make install

      2、??????????? 安裝nginx nginx-1.6.2.tar.gz

      # tar nginx-1.6.2.tar.gz

      # cd nginx-1.6.2

      # ./configure --prefix=/usr/local/nginx --without-http_rewrite_module

      # make

      # make install

      3、????????????? 修改nginx服務端口等

      nginx默認使用80服務端口,如果此端口號已經被其他服務占用,或者規劃其他端口提供http服務,在此處進行修改即可。server_name設為nginx所在服務器的IP地址,location是提供http服務的存儲根路徑,建議放在數據盤下。

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

      4、????????????? 啟動Nginx服務

      # cd /usr/local/nginx/sbin

      # ./nginx

      啟停服務其他命令:

      # ./nginx -s reload

      # ./nginx -s stop

      安裝php

      1、????????????? 安裝Fpm ?php-fpm-0.6-103-5.3.1.tar.gz

      # tar -zxvf php-fpm-0.6-103-5.3.1.tar.gz

      # cd? php-fpm-0.6-103-5.3.1

      # ./configure --prefix=/usr/local/fpm

      # make

      # make install

      2、????????????? 安裝Libxml libxml2-2.7.7.tar.gz

      # tar -zxvf libxml2-2.7.7.tar.gz

      # cd libxml2-2.7.7

      # ./configure --prefix=/usr/local/libxml2 --with-zlib=/usr/local/zlib/

      # make

      # make install

      3、????????????? 安裝PHP php-5.3.10.tar.gz

      # tar -zxvf php-5.3.10.tar.gz

      # cd php-5.3.10

      # ./configure --prefix=/usr/local/php/ --with-libxml-dir=/usr/local/libxml2/ --with-zlib-dir=/usr/local/zlib/ --enable-fastcgi --enable-fpm

      LAMP VS LNMP

      # cp php.ini-production /usr/local/php/etc/php.ini

      # mv /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

      # /usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini

      修改配置文件

      1、????????????? 修改nginx服務端口、服務名、根路徑等

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

      2、????????????? 關聯php和nginx

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

      Nginx+PHP 與Apache+PHP不同,只需要在Apache側做PHP關聯即可,而Nginx與PHP則分別需要在兩邊做關聯,PHP側就是通過php-fpm管理器來實現的。如果需要修改fastcgi的9000端口為其他端口,則要同時修改nginx和php-fpm的配置文件

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

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

      轉載請注明出處:華為云博客 https://portal.hwclouds.com/blogs

      LNMP PHP Nginx LAMP

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:7個非常實用而鮮為人知的EXCEL技巧(最常用excel技巧)
      下一篇:excel篩選 ③列表區域我們選擇A1:E9(excel篩選條件怎么設置)
      相關文章
      久久综合日韩亚洲精品色| 亚洲国产成人精品无码区在线网站| tom影院亚洲国产一区二区| 中文字幕亚洲综合久久| 亚洲国产成人久久精品动漫| 好看的电影网站亚洲一区| 亚洲日韩av无码| 亚洲日韩中文无码久久| 亚洲综合无码精品一区二区三区| 亚洲一区二区三区在线视频| 亚洲午夜国产片在线观看| 亚洲成?Ⅴ人在线观看无码| 日韩亚洲精品福利| 亚洲无码视频在线| 久久亚洲色一区二区三区| 亚洲一区爱区精品无码| 国产偷v国产偷v亚洲高清| 亚洲VA中文字幕不卡无码| 亚洲欧洲日韩不卡| 亚洲精品午夜在线观看| 亚洲国产精品xo在线观看| 亚洲综合一区二区| 亚洲AV一二三区成人影片| 亚洲国产日韩精品| 亚洲AV无码一区二区一二区| 国产精品亚洲av色欲三区| 亚洲国产精品日韩| 中文字幕亚洲一区| 久久亚洲一区二区| 亚洲精品国产电影午夜| 亚洲一区在线免费观看| 亚洲色大成WWW亚洲女子| 黑人粗长大战亚洲女2021国产精品成人免费视频 | 亚洲国产精品乱码一区二区| 亚洲国产精品无码久久久不卡| 亚洲国产成人久久精品影视| 亚洲欧洲久久精品| 亚洲av无码不卡久久| 亚洲av午夜国产精品无码中文字| 男人的天堂亚洲一区二区三区 | 一本色道久久综合亚洲精品|