摘要:網(wǎng)上看別人寫的服務(wù)器配置,有的是源碼包安裝的,有的時(shí)安裝的。通過(guò)源碼包編譯安裝的軟件,通常都放在包名路徑下。正則表達(dá)式使用在指令和模塊中。
yum 和 源碼包 安裝的 區(qū)別網(wǎng)上看別人寫的 nginx 服務(wù)器配置 ,有的是源碼包安裝的,有的時(shí) yum 安裝的。如果是新手,可能會(huì)有疑問(wèn),這兩種安裝方式有什么區(qū)別?我應(yīng)該使用哪種方式?系統(tǒng)里可以兩個(gè)都安裝可以嗎?怎么卸載?等等問(wèn)題,那么在這里,我做下總結(jié),詳細(xì)介紹下這兩種方式。
這里先說(shuō)明下 yum 和 源碼包 安裝的 區(qū)別:
yum 安裝是在線安裝,好處是:安裝方式簡(jiǎn)單,不易出錯(cuò);
源碼包 安裝是先將 nginx 的源碼下載下來(lái),在自己的系統(tǒng)里編譯生成可執(zhí)行文件,然后執(zhí)行,好處是:因?yàn)槭窃谧约旱南到y(tǒng)上編譯的,更符合自己系統(tǒng)的性能,也就是說(shuō)在自己的系統(tǒng)上執(zhí)行 nginx 服務(wù)性能效率更好。
他們之間最大的區(qū)別是 :安裝位置不同。
yum 在線安裝會(huì)將 nginx 的安裝文件放在系統(tǒng)的不同位置,可以通過(guò)命令 rpm -ql nginx 來(lái)查看安裝路徑,如下所示:
? ~ rpm -ql nginx /etc/logrotate.d/nginx /etc/nginx /etc/nginx/conf.d /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/ssl.conf /etc/nginx/conf.d/virtual.conf /etc/nginx/fastcgi.conf /etc/nginx/fastcgi.conf.default /etc/nginx/fastcgi_params /etc/nginx/fastcgi_params.default /etc/nginx/koi-utf /etc/nginx/koi-win /etc/nginx/mime.types /etc/nginx/mime.types.default /etc/nginx/nginx.conf /etc/nginx/nginx.conf.default /etc/nginx/scgi_params /etc/nginx/scgi_params.default /etc/nginx/uwsgi_params /etc/nginx/uwsgi_params.default /etc/nginx/win-utf /etc/rc.d/init.d/nginx /etc/sysconfig/nginx /usr/lib/perl5/vendor_perl/auto/nginx /usr/lib/perl5/vendor_perl/auto/nginx/nginx.so /usr/lib/perl5/vendor_perl/nginx.pm /usr/sbin/nginx /usr/share/doc/nginx-1.0.15 /usr/share/doc/nginx-1.0.15/CHANGES /usr/share/doc/nginx-1.0.15/LICENSE /usr/share/doc/nginx-1.0.15/README /usr/share/man/man3/nginx.3pm.gz /usr/share/man/man8/nginx.8.gz /usr/share/nginx/html/404.html /usr/share/nginx/html/50x.html /usr/share/nginx/html/index.html /usr/share/nginx/html/nginx-logo.png /usr/share/nginx/html/poweredby.png /usr/share/vim/vimfiles/ftdetect/nginx.vim /usr/share/vim/vimfiles/indent/nginx.vim /usr/share/vim/vimfiles/syntax/nginx.vim /var/lib/nginx /var/lib/nginx/tmp /var/log/nginx
卸載的時(shí)候,只能通過(guò) 命令來(lái)卸載,因?yàn)槲覀儾豢赡?將這些文件自己手動(dòng)刪除,可以通過(guò)命令 rpm -e nginx 來(lái)卸載,這個(gè)命令一般不會(huì)報(bào)錯(cuò),因?yàn)?nginx 不與其他的包有依賴關(guān)系,如果提示關(guān)于 依賴包的問(wèn)題 ,可以嘗試 rpm -e --nodeps nginx 來(lái)卸載,這個(gè)命令相當(dāng)于強(qiáng)制卸載,不考慮依賴問(wèn)題。
源碼包 安裝他的所有文件(包括配置文件,庫(kù)文件,資源文件等)都在同一個(gè)目錄下,我們想卸載的時(shí)候,直接將這個(gè)文件刪除就可以,不會(huì)有任何垃圾文件存在。
通過(guò)源碼包編譯安裝的軟件,通常都放在 /usr/local/包名 路徑下。
yum 安裝 nginx,我們可以通過(guò) 系統(tǒng)服務(wù)命令 service 來(lái)啟動(dòng)或停止
service nginx start #啟動(dòng) nginx 服務(wù) service nginx stop #停止 nginx 服務(wù) service nginx restart #重啟 nginx 服務(wù)
源碼包 安裝 nginx 啟動(dòng)的時(shí)候不能使用 service 來(lái)啟動(dòng),需要執(zhí)行 nginx 安裝目錄下的 sbin 目錄下的 nginx 可執(zhí)行程序才行,如下(我的 nginx 安裝在 /usr/local/webserver/ 目錄下)
? ~ /usr/local/webserver/nginx/sbin/nginx #啟動(dòng) nginx 服務(wù) ? ~ /usr/local/webserver/nginx/sbin/nginx -s stop #停止 nginx 服務(wù)
或者 直接進(jìn)入安裝目錄 ,執(zhí)行 ./nginx 也可以,這兩種方式其實(shí)是一樣的,. 表示當(dāng)前目錄
? ~ cd /usr/local/webserver/nginx/sbin ? sbin ls nginx ? sbin ./nginx #啟動(dòng) nginx 服務(wù) ? sbin ./nginx -s stop #停止 nginx 服務(wù)
注意:在自己的系統(tǒng)中只用選擇一種安裝方式即可,yum 安裝的 nginx 版本可能不是最新的,可以通過(guò) 源碼包 安裝最新的,但系統(tǒng)中只要一種就可以,如果你想安裝兩個(gè)安裝也可以,但是他們監(jiān)聽的端口都是 80 端口,每次只能啟動(dòng)一個(gè)
好,先講了區(qū)別,下面來(lái)看一下安裝方式
yum 安裝 nginx 安裝使用 yum 安裝是在線安裝,直接使用命令 yum -y install nginx 安裝即可
? ~ yum -y install nginx 已加載插件:fastestmirror, security 設(shè)置安裝進(jìn)程 Loading mirror speeds from cached hostfile 解決依賴關(guān)系 --> 執(zhí)行事務(wù)檢查 ---> Package nginx.i686 0:1.0.15-12.el6 will be 安裝 --> 完成依賴關(guān)系計(jì)算 依賴關(guān)系解決 ======================================================================================================================================== 軟件包 架構(gòu) 版本 倉(cāng)庫(kù) 大小 ======================================================================================================================================== 正在安裝: nginx i686 1.0.15-12.el6 epel 410 k 事務(wù)概要 ======================================================================================================================================== Install 1 Package(s) 總下載量:410 k Installed size: 1.1 M 下載軟件包: nginx-1.0.15-12.el6.i686.rpm | 410 kB 00:00 運(yùn)行 rpm_check_debug 執(zhí)行事務(wù)測(cè)試 事務(wù)測(cè)試成功 執(zhí)行事務(wù) Warning: RPMDB altered outside of yum. 正在安裝 : nginx-1.0.15-12.el6.i686 1/1 Verifying : nginx-1.0.15-12.el6.i686 1/1 已安裝: nginx.i686 0:1.0.15-12.el6 完畢!
到這里就安裝完成了,是不是很簡(jiǎn)單。
啟動(dòng) nginx 服務(wù)? ~ service nginx start Starting nginx: [ OK ]停止 nginx 服務(wù)
? ~ service nginx stop Stopping nginx: [ OK ]重啟 nginx 服務(wù)
? ~ service nginx restart Stopping nginx: [ OK ] Starting nginx: [ OK ]
啟動(dòng)后 ,在瀏覽器中 輸入服務(wù)器的 ip 地址,就可以看到
到這里 yum 安裝 nginx 就完成了
源碼包 安裝 nginx 安裝編譯我的系統(tǒng) centos 6.7 32位,首先安裝缺少的依賴包:
yum -y install gcc gcc-c++ make libtool zlib zlib-devel openssl openssl-devel pcre pcre-devel
從 http://nginx.org/en/download.... 下載穩(wěn)定版 nginx-1.10.1.tar.gz ,下載的壓縮文件 放在任意地方都可以,但是建議放在 /usr/local/src 或者 /root/ 下,/usr/local/src 就是系統(tǒng)專門給用戶分配的放 源碼的目錄,/root/ 是我們默認(rèn)操作的目錄,所以也可以放在這里。我就是下載放在 /root/ 目錄下的。
下載可以通過(guò)命令獲取:
wget http://nginx.org/download/nginx-1.10.1.tar.gz
解壓縮:
tar -zxvf nginx-1.10.1.tar.gz
解壓縮后,可以看到 nginx-1.10.1 目錄,然后進(jìn)入這個(gè)目錄
? ~ ls anaconda-ks.cfg install.log install.log.syslog nginx-1.10.1 nginx-1.10.1.tar.gz ? ~ cd nginx-1.10.1
在 nginx-1.10.1 目錄下執(zhí)行 配置 和 make 命令
? nginx-1.10.1 ./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre ? nginx-1.10.1 make && make install常用編譯選項(xiàng)說(shuō)明
這段說(shuō)明,參考自:https://segmentfault.com/a/11...
--prefix=PATH : 指定 nginx 的安裝目錄。默認(rèn) /usr/local/nginx,我的是 /usr/local/webserver/nginx
--conf-path=PATH : 設(shè)置nginx.conf配置文件的路徑。nginx允許使用不同的配置文件啟動(dòng),通過(guò)命令行中的-c選項(xiàng)。默認(rèn)為conf/nginx.conf
--user=name : 設(shè)置nginx工作進(jìn)程的用戶。安裝完成后,可以隨時(shí)在nginx.conf配置文件更改user指令。默認(rèn)的用戶名是nobody。--group=name類似
--with-pcre : 設(shè)置PCRE庫(kù)的源碼路徑,如果已通過(guò)yum方式安裝,使用--with-pcre自動(dòng)找到庫(kù)文件。使用--with-pcre=PATH時(shí),需要從PCRE網(wǎng)站下載pcre庫(kù)的源碼(8.39)并解壓,指定 pcre 的源碼路徑 ,比如:--with-pcre=/root/pcre-8.39/。perl正則表達(dá)式使用在location指令和 ngx_http_rewrite_module模塊中。
--with-zlib=PATH : 指定 zlib(版本1.1.3 - 1.2.5)的源碼解壓目錄。在默認(rèn)就啟用的網(wǎng)絡(luò)傳輸壓縮模塊ngx_http_gzip_module時(shí)需要使用zlib 。
--with-http_ssl_module : 使用https協(xié)議模塊。默認(rèn)情況下,該模塊沒(méi)有被構(gòu)建。前提是openssl與openssl-devel已安裝
--with-http_stub_status_module : 用來(lái)監(jiān)控 Nginx 的當(dāng)前狀態(tài)
--with-http_realip_module : 通過(guò)這個(gè)模塊允許我們改變客戶端請(qǐng)求頭中客戶端IP地址值(例如X-Real-IP 或 X-Forwarded-For),意義在于能夠使得后臺(tái)服務(wù)器記錄原始客戶端的IP地址
--add-module=PATH : 添加第三方外部模塊,如nginx-sticky-module-ng或緩存模塊。每次添加新的模塊都要重新編譯(Tengine可以在新加入module時(shí)無(wú)需重新編譯)
啟動(dòng) 停止 nginx使用 源碼包 安裝 nginx ,啟動(dòng)時(shí)需要使用絕對(duì)路徑來(lái)執(zhí)行,如下:
? ~ /usr/local/webserver/nginx/sbin/nginx #啟動(dòng) nginx 服務(wù) ? ~ /usr/local/webserver/nginx/sbin/nginx -s stop #停止 nginx 服務(wù)
啟動(dòng) nginx 服務(wù)后,可以通過(guò) ps -aux | grep nginx 查看進(jìn)程
? ~ /usr/local/webserver/nginx/sbin/nginx #啟動(dòng) nginx 服務(wù) ? ~ ps -aux | grep nginx Warning: bad syntax, perhaps a bogus "-"? See /usr/share/doc/procps-3.2.8/FAQ root 9628 0.0 0.1 15292 1500 ? Ss 11:17 0:00 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf nginx 9631 0.0 0.2 15448 2312 ? S 11:17 0:00 nginx: worker process root 13158 0.0 0.0 6048 788 pts/1 S+ 12:12 0:00 grep --color=auto --exclude-dir=.bzr --exclude-dir=CVS --exclude-dir=.git --exclude-dir=.hg --exclude-dir=.svn nginx
啟動(dòng)后 ,在瀏覽器中 輸入服務(wù)器的 ip 地址,就可以看到
到這里 源碼包 安裝 nginx 就完成了
可以看出 兩個(gè)歡迎頁(yè)面是不同的,這個(gè)主要是版本不同的原因。
結(jié)語(yǔ)這里講了 使用 yum 和 源碼包 安裝 nginx 的詳細(xì)過(guò)程,如果想了解 yum 和 源碼包 安裝軟件的其他詳細(xì)知識(shí),可以看我的另外一篇博文 《Linux 軟件安裝管理》。
本文中如有紕漏,或者你有什么問(wèn)題,都可以提出來(lái),謝謝~~
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/39356.html
摘要:下,有多種方式來(lái)安裝拓展,主要有包管理式的安裝安裝,以及源碼編譯安裝。而線上部署環(huán)境則推薦編譯安裝,方便調(diào)優(yōu)。本文以擴(kuò)展安裝舉例。建議版本為建議使用擴(kuò)展版本為建議使用擴(kuò)展可以使用擴(kuò)展。 CentOS 下,PHP有多種方式來(lái)安裝拓展, 主要有 包管理式的 yum 安裝、pecl 安裝, 以及源碼編譯安裝。包管理式的安裝卸載尤為方便,而源碼編譯式的安裝則方便參數(shù)調(diào)優(yōu)。一般搭建本機(jī)開發(fā)環(huán)境推...
摘要:下,有多種方式來(lái)安裝拓展,主要有包管理式的安裝安裝,以及源碼編譯安裝。而線上部署環(huán)境則推薦編譯安裝,方便調(diào)優(yōu)。本文以擴(kuò)展安裝舉例。建議版本為建議使用擴(kuò)展版本為建議使用擴(kuò)展可以使用擴(kuò)展。 CentOS 下,PHP有多種方式來(lái)安裝拓展, 主要有 包管理式的 yum 安裝、pecl 安裝, 以及源碼編譯安裝。包管理式的安裝卸載尤為方便,而源碼編譯式的安裝則方便參數(shù)調(diào)優(yōu)。一般搭建本機(jī)開發(fā)環(huán)境推...
閱讀 1370·2021-11-25 09:43
閱讀 3582·2021-11-10 11:48
閱讀 5091·2021-09-23 11:21
閱讀 1597·2019-08-30 15:55
閱讀 3508·2019-08-30 13:53
閱讀 1235·2019-08-30 10:51
閱讀 868·2019-08-29 14:20
閱讀 1972·2019-08-29 13:11