訪問http://nginx.org/download/獲得以下的網頁html
從上面能夠看出Nginx官網提供了三個類型的版本nginx
咱們安裝的時候注意在官網選擇安裝最近的Stable的版本,這裏咱們選擇的是nginx-1.18.0。web
源碼編譯安裝正則表達式
gcc pcre zlib openssl
# yum -y install gcc
# yum install -y pcre pcre-devel
# yum install -y zlib zlib-devel
# yum -y install openssl openssl-devel
# rpm -qa gcc* gcc-8.3.1-5.el8.0.2.x86_64 # rpm -qa pcre* pcre-utf16-8.42-4.el8.x86_64 pcre2-10.32-1.el8.x86_64 pcre-8.42-4.el8.x86_64 pcre-utf32-8.42-4.el8.x86_64 pcre-cpp-8.42-4.el8.x86_64 pcre2-utf32-10.32-1.el8.x86_64 pcre2-devel-10.32-1.el8.x86_64 pcre-devel-8.42-4.el8.x86_64 pcre2-utf16-10.32-1.el8.x86_64 # rpm -qa zlib* zlib-devel-1.2.11-16.el8_2.x86_64 zlib-1.2.11-16.el8_2.x86_64 # rpm -qa openssl* openssl-1.1.1c-15.el8.x86_64 openssl-pkcs11-0.4.10-2.el8.x86_64 openssl-libs-1.1.1c-15.el8.x86_64 openssl-devel-1.1.1c-15.el8.x86_64
# wget http://nginx.org/download/nginx-1.18.0.tar.gz
# tar -zxvf nginx-1.18.0.tar.gz
具體的配置參數看這裏shell
須要強調的參數
--prefix=pathvim
defines a directory that will keep server files. This same directory will also be used for all relative paths set by configure (except for paths to libraries sources) and in the nginx.conf configuration file. It is set to the /usr/local/nginx directory by default.瀏覽器
這是設置Nginx安裝路徑的參數,在nginx.conf配置文件中,配置設置的全部相對路徑(庫源路徑除外)也將使用同一個目錄。
默認設置爲/usr/local/nginx目錄。須要修改Nginx安裝目錄的能夠經過設置這個參數來達到目的。
我這裏使用默認的目錄,不設置該參數。
--with-http_ssl_module安全
enables building a module that adds the HTTPS protocol support to an HTTP server. This module is not built by default. The OpenSSL library is required to build and run this module.運維
添加HTTPS協議支持模塊,該模塊默認不參與編譯構建,須要手動開啓。
因爲目前主流的網站都支持Https協議,因此這裏開啓該模塊。curl
# pwd /soft/nginx-1.18.0 # ls auto CHANGES CHANGES.ru conf configure contrib html LICENSE Makefile man objs README src # ./configure --with-http_ssl_module
執行./configure ***
命令後終端上會有些輸出。
輸出的信息裏會包含依賴的組件是否完整,若是不完整則須要另行安裝。
輸出的信息裏會包含配置文件目錄信息,日誌文件目錄信息等一些很重要的咱們作運維依賴的信息。
# ./configure --with-http_ssl_module # 省略若干行 Configuration summary + using system PCRE library + using system OpenSSL library + using system zlib library nginx path prefix: "/usr/local/nginx" nginx binary file: "/usr/local/nginx/sbin/nginx" nginx modules path: "/usr/local/nginx/modules" nginx configuration prefix: "/usr/local/nginx/conf" nginx configuration file: "/usr/local/nginx/conf/nginx.conf" nginx pid file: "/usr/local/nginx/logs/nginx.pid" nginx error log file: "/usr/local/nginx/logs/error.log" nginx http access log file: "/usr/local/nginx/logs/access.log" nginx http client request body temporary files: "client_body_temp" nginx http proxy temporary files: "proxy_temp" nginx http fastcgi temporary files: "fastcgi_temp" nginx http uwsgi temporary files: "uwsgi_temp" nginx http scgi temporary files: "scgi_temp"
# make # 省略若干行 sed -e "s|%%PREFIX%%|/usr/local/nginx|" \ -e "s|%%PID_PATH%%|/usr/local/nginx/logs/nginx.pid|" \ -e "s|%%CONF_PATH%%|/usr/local/nginx/conf/nginx.conf|" \ -e "s|%%ERROR_LOG_PATH%%|/usr/local/nginx/logs/error.log|" \ < man/nginx.8 > objs/nginx.8 make[1]: Leaving directory `/soft/nginx-1.18.0'
# make install
# cd /usr/local/nginx/ # ls conf html logs sbin # sbin/nginx
curl
的方式# curl localhost <!DOCTYPE html> <html> <head> <title>Welcome to nginx!</title> <style> body { width: 35em; margin: 0 auto; font-family: Tahoma, Verdana, Arial, sans-serif; } </style> </head> <body> <h1>Welcome to nginx!</h1> <p>If you see this page, the nginx web server is successfully installed and working. Further configuration is required.</p> <p>For online documentation and support please refer to <a href="http://nginx.org/">nginx.org</a>.<br/> Commercial support is available at <a href="http://nginx.com/">nginx.com</a>.</p> <p><em>Thank you for using nginx.</em></p> </body> </html>
在瀏覽器地址欄輸入Nginx所在主機的IP,出現以下界面表示安裝啓動成功。
# ps -ef | grep nginx root 1253 1 0 10:54 ? 00:00:00 nginx: master process ./nginx nobody 1254 1253 0 10:54 ? 00:00:00 nginx: worker process root 1267 56707 0 10:54 pts/4 00:00:00 grep nginx
能夠看到Nginx的master和worker進程
# vim /etc/profile
# set nginx environment export NGINX_HOME=/usr/local/src/nginx export PATH=${NGINX_HOME}/sbin:$PATH
# source /etc/profile
驗證環境變量是否生效
# pwd /soft # nginx -v nginx version: nginx/1.18.0
# nginx -h nginx version: nginx/1.18.0 Usage: nginx [-?hvVtTq] [-s signal] [-c filename] [-p prefix] [-g directives] Options: -?,-h : this help -v : show version and exit -V : show version and configure options then exit -t : test configuration and exit -T : test configuration, dump it and exit -q : suppress non-error messages during configuration testing -s signal : send signal to a master process: stop, quit, reopen, reload -p prefix : set prefix path (default: /usr/local/nginx/) -c filename : set configuration file (default: conf/nginx.conf) -g directives : set global directives out of configuration file
# nginx
# nginx -s reload
# nginx -s stop
或者查進程號以後 kill -9 pid
。
星辰大海,點滴爲途。