摘要:前言本章基于系統講解本章講解下在項目上線部署的時候對的操作。以下列出各部分詳細地址編譯配置參數虛擬主機配置配置文件中的計量單位命令參數負載均衡配置官方博客致謝感謝你看到這里,本篇文章我的語言過于偏激了,還希望見諒。
前言
本章基于Centos 7.x系統講解
本章講解下在項目上線部署的時候對NGINX的操作。有些童鞋在網上百度類似LNMP安裝就跟著命令一條一條執行了,如果沒報錯還好,一旦報錯就懵逼狀態了。這是對自己、對代碼的不負責任的表現。本章帶大家"正經"的安裝一次NGINX。
下載下載NGINX的源碼包切勿隨意查找,好好的NGINX官網在那擺著,何必盲目搜尋呢?
源碼包下載地址 : http://nginx.org/en/download....
Mainline Version 主線版本,也是開發版本測試版本,跟自己沒仇的最好別下載
Stable version 穩定版本,一般下載就在穩定版本內找就可以了
Legacy versions 以往的版本
實際對版本沒有太多要求的,下載穩定版本的就可以,每個版本都分.gz的源碼包和.exe的windows安裝包,會下載游戲還不會下載個壓縮包了嗎?
很多人糾結安裝包放哪比較好,現在告訴你
/usr/src
usr 歷史上全稱是user(用戶目錄),只不過現在不是這個意思了,。總之放這地死不了人。
wget http://nginx.org/download/nginx-1.14.0.tar.gz
wget 比吃飯還簡單的命令了解一下?
然后就開始下載了,下載懂不懂?沒下載過游戲嗎?
安裝下載完之后 /usr/src 目錄下就有個 nginx-1.14.0.tar.gz 的壓縮包,然后就是刷刷刷的命令,擼起袖子就是干
解壓縮tar 解壓縮命令
參數 | 說明 |
---|---|
-z | 專門解壓gzip壓縮的,沒看到壓縮包最后是.gz嘛 |
-x | 解壓 |
-v | 解壓過程,就是解出來啥文件 |
-f | 指向文件,一定得放最后 |
tar -zxvf nginx-1.14.0.tar.gz
隨后就是咔咔咔的解壓,然后出來一些看不懂的文件
nginx-1.14.0/ nginx-1.14.0/auto/ nginx-1.14.0/conf/ nginx-1.14.0/contrib/ nginx-1.14.0/src/ nginx-1.14.0/configure nginx-1.14.0/LICENSE nginx-1.14.0/README nginx-1.14.0/html/ nginx-1.14.0/man/ nginx-1.14.0/CHANGES.ru nginx-1.14.0/CHANGES nginx-1.14.0/man/nginx.8 nginx-1.14.0/html/50x.html nginx-1.14.0/html/index.html nginx-1.14.0/src/core/ nginx-1.14.0/src/event/ nginx-1.14.0/src/http/ nginx-1.14.0/src/mail/ nginx-1.14.0/src/misc/ nginx-1.14.0/src/os/ nginx-1.14.0/src/stream/ nginx-1.14.0/src/stream/ngx_stream_geo_module.c nginx-1.14.0/src/stream/ngx_stream.c nginx-1.14.0/src/stream/ngx_stream.h nginx-1.14.0/src/stream/ngx_stream_limit_conn_module.c nginx-1.14.0/src/stream/ngx_stream_access_module.c ......
這個時候你所在的 /usr/src 目錄下就有了一個 nginx-1.14.0 文件夾
nginx-1.14.0 nginx-1.14.0.tar.gz./configure
目錄有了現在就是安裝了,不要百度不要谷歌,官網文檔寫的那么清楚干那多余的活有什么用。小學英語就能看懂。http://nginx.org/en/docs/conf... , 滑動到最下面,官網給出了一個demo
./configure --sbin-path=/usr/local/nginx/nginx --conf-path=/usr/local/nginx/nginx.conf --pid-path=/usr/local/nginx/nginx.pid --with-http_ssl_module --with-pcre=../pcre-8.41 --with-zlib=../zlib-1.2.11
對頭就是這樣安裝,如果你不愿了解這些配置,完全就可以
./configure
對沒錯,啥都不用加,9個字母結束戰斗,為什么不需要加參數?是因為nginx很多參數都有默認值。
參數 | 默認 | 注釋 |
---|---|---|
--prefix=path | /usr/local/nginx | nginx安裝路徑 |
--sbin-path=path | prefix/sbin/nginx | nginx命令路徑 |
--modules-path=path | prefix/modules | nginx模塊路徑 |
--conf-path=path | prefix/conf/nginx.conf | nginx配置文件路徑 |
--error-log-path=path | prefix/logs/error.log | nginx默認日志目錄 |
執行./configure
checking for OS + Linux 3.10.0-514.26.2.el7.x86_64 x86_64 checking for C compiler ... found + using GNU C compiler + gcc version: 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC) checking for gcc -pipe switch ... found checking for -Wl,-E switch ... found checking for gcc builtin atomic operations ... found checking for C99 variadic macros ... found checking for gcc variadic macros ... found checking for gcc builtin 64 bit byteswap ... found checking for unistd.h ... found checking for inttypes.h ... found checking for limits.h ... found checking for sys/filio.h ... not found checking for sys/param.h ... found checking for sys/mount.h ... found checking for sys/statvfs.h ... found checking for crypt.h ... found checking for Linux specific features checking for epoll ... found checking for EPOLLRDHUP ... found checking for EPOLLEXCLUSIVE ... not found checking for O_PATH ... found checking for sendfile() ... found checking for sendfile64() ... found ....
configure是個檢查工具,上面的直接結果很清楚了,各種的checking,檢測下環境支持不?依賴都裝了嗎?檢測成功后你才可以進入下一步,否則你進入下一步也依舊會提示xxx不存在,xxx不支持等等
make && make install
make是一個編譯工具,你就記住是個編譯工具就行了,編譯的過程輸出
cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/os/unix -I objs -o objs/src/core/nginx.o src/core/nginx.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/os/unix -I objs -o objs/src/core/ngx_log.o src/core/ngx_log.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/os/unix -I objs -o objs/src/core/ngx_palloc.o src/core/ngx_palloc.c cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/os/unix -I objs -o objs/src/core/ngx_array.o src/core/ngx_array.c .... cp conf/nginx.conf "/usr/local/nginx/conf/nginx.conf.default" test -d "/usr/local/nginx/logs" || mkdir -p "/usr/local/nginx/logs" test -d "/usr/local/nginx/logs" || mkdir -p "/usr/local/nginx/logs" test -d "/usr/local/nginx/html" || cp -R html "/usr/local/nginx" test -d "/usr/local/nginx/logs" || mkdir -p "/usr/local/nginx/logs" make[1]: 離開目錄“/usr/src/nginx-1.14.0”
最后他copy了一些必須文件到指定目錄里,這個時候nginx的安裝就基本完成了。
配置如果是僅僅執行了這條命令
./configure
那nginx的目錄就是
/usr/local/nginx ----------- cert client_body_temp conf fastcgi_temp html logs proxy_temp sbin scgi_temp uwsgi_temp
以下講解的所有配置都在nginx.conf內進行
修改默認指向目錄取消默認指向的解析目錄 html 直接注釋掉就行了。一般我會把項目目錄指向 /var/www 一般都在虛擬主機文件中指向
避免泛解析總有些人會把域名解析錯地址或者是惡意解析到你的服務器上。對于這種人必須嚴懲
server { listen 80 default_server; server_name _; return 403; }
分分鐘屏蔽他
添加虛擬主機虛擬主機的配置文件可千萬別都寫到nginx.conf中
一般我會在nginx.conf同級建立一個server目錄存放
include /usr/local/nginx/conf/server/*.conf;配置Gzip壓縮
http://nginx.org/en/docs/http...
添加SSL支持https://segmentfault.com/a/11...
開啟日志記錄https://segmentfault.com/a/11...
開啟負載均衡https://segmentfault.com/a/11...
開啟反向代理https://segmentfault.com/a/11...
設置權限最好設置nginx命令之允許root用戶或者你們公司的運營執行,無緣無故的nginx -s stop可受不了。
官網文檔nginx官網是我感覺文檔寫的最簡介最詳細的文檔。以下列出各部分詳細地址
編譯配置參數 http://nginx.org/en/docs/conf...
虛擬主機配置 http://nginx.org/en/docs/http...
配置文件中的計量單位 http://nginx.org/en/docs/synt...
nginx命令參數 http://nginx.org/en/docs/swit...
nginx負載均衡配置 http://nginx.org/en/docs/http...
nginx官方博客 https://www.nginx.com/blog/
致謝感謝你看到這里,本篇文章我的語言過于偏激了,還希望見諒。希望本篇文章可以幫助到你,有什么問題可以在評論區留言。謝謝
別害怕英語,小學英語水平就能看懂,一切源于堅持
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/40061.html
摘要:前言本章基于系統講解本章講解下在項目上線部署的時候對的操作。以下列出各部分詳細地址編譯配置參數虛擬主機配置配置文件中的計量單位命令參數負載均衡配置官方博客致謝感謝你看到這里,本篇文章我的語言過于偏激了,還希望見諒。 showImg(https://segmentfault.com/img/bVbeW5C?w=1398&h=840); 前言 本章基于Centos 7.x系統講解 本章講解...
摘要:實踐四環境容器化最近把公司的環境做了容器化,目前達到的效果是代碼提交到,觸發將代碼部署到測試服務器,然后就可以根據前后端不同的分支組合的域名來訪問,從而省去了每次前后端代碼都合并到分支才能測試的環節。 Docker 實踐(四): Beta 環境容器化 最近把公司的 beta 環境做了容器化,目前達到的效果是代碼提交到 gitlab,觸發 webhook 將代碼部署到測試服務器,然后就可...
摘要:所以我們整理了一個應用安全備忘錄,以幫助你在部署啟動應用程序的時候進行安全檢查。這可以保護應用程序不被攻擊。應該用日志記錄下來,而不是顯示給用戶。 本人的博客http://www.wjs.photo/,感興趣的可以看看哦,基于NodeJs框架ThinkJs 本文翻譯自 www.risingstack.com ,并非逐字逐句的翻譯,有錯誤的地方請指出,謝謝啦 應用程序的安全就像是你房間里...
閱讀 1344·2023-04-25 15:21
閱讀 2675·2021-11-24 10:23
閱讀 3401·2021-10-11 10:59
閱讀 3245·2021-09-03 10:28
閱讀 1733·2019-08-26 13:45
閱讀 2325·2019-08-26 12:11
閱讀 926·2019-08-26 12:00
閱讀 1709·2019-08-26 10:44