一、安装pcre
查看是否已经安装了pcre
如果存在,则删除已经安装的pcre(最好不要用系统自带的pcre)
安装pcre
二、安装openssl
三、下载Nginx编译安装包
下载地址:http:///en/download.html
下载完成后解压在服务器的某个目录;
然后进度Nginx的解压目录:
- cd /home/software/nginx-1.11.5
执行安装前的配置检查(增加prefix参数,是为了提供nginx的安装目录)
- ./configure --prefix=/home/nginx-1.11.5 --with-http_ssl_module --with-http_v2_module --with-http_stub_status_module --with-pcre
执行结束,如果没有发现error信息,则可以看到系统打印出:
- ......
- checking for rlim_t ... found
- checking for uintptr_t ... uintptr_t found
- checking for system byte ordering ... little endian
- checking for size_t size ... 8 bytes
- checking for off_t size ... 8 bytes
- checking for time_t size ... 8 bytes
- checking for AF_INET6 ... found
- checking for setproctitle() ... not found
- checking for pread() ... found
- checking for pwrite() ... found
- checking for pwritev() ... found
- checking for sys_nerr ... found
- checking for localtime_r() ... found
- checking for posix_memalign() ... found
- checking for memalign() ... found
- checking for mmap(MAP_ANON|MAP_SHARED) ... found
- checking for mmap("/dev/zero", MAP_SHARED) ... found
- checking for System V shared memory ... found
- checking for POSIX semaphores ... not found
- checking for POSIX semaphores in libpthread ... found
- checking for struct msghdr.msg_control ... found
- checking for ioctl(FIONBIO) ... found
- checking for struct tm.tm_gmtoff ... found
- checking for struct dirent.d_namlen ... not found
- checking for struct dirent.d_type ... found
- checking for sysconf(_SC_NPROCESSORS_ONLN) ... found
- checking for openat(), fstatat() ... found
- checking for getaddrinfo() ... found
- checking for PCRE library ... found
- checking for PCRE JIT support ... not found
- checking for OpenSSL library ... found
- checking for zlib library ... found
- creating objs/Makefile
-
- Configuration summary
- + using system PCRE library
- + using system OpenSSL library
- + using system zlib library
-
- nginx path prefix: "/home/nginx-1.11.5"
- nginx binary file: "/home/nginx-1.11.5/sbin/nginx"
- nginx modules path: "/home/nginx-1.11.5/modules"
- nginx configuration prefix: "/home/nginx-1.11.5/conf"
- nginx configuration file: "/home/nginx-1.11.5/conf/nginx.conf"
- nginx pid file: "/home/nginx-1.11.5/logs/nginx.pid"
- nginx error log file: "/home/nginx-1.11.5/logs/error.log"
- nginx http access log file: "/home/nginx-1.11.5/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命令
编译结束后,如果没有错误,则正常结束,如下图
- ......
- objs/src/http/ngx_http_write_filter_module.o \
- objs/src/http/ngx_http_header_filter_module.o \
- objs/src/http/modules/ngx_http_chunked_filter_module.o \
- objs/src/http/v2/ngx_http_v2_filter_module.o \
- objs/src/http/modules/ngx_http_range_filter_module.o \
- objs/src/http/modules/ngx_http_gzip_filter_module.o \
- objs/src/http/ngx_http_postpone_filter_module.o \
- objs/src/http/modules/ngx_http_ssi_filter_module.o \
- objs/src/http/modules/ngx_http_charset_filter_module.o \
- objs/src/http/modules/ngx_http_userid_filter_module.o \
- objs/src/http/modules/ngx_http_headers_filter_module.o \
- objs/src/http/ngx_http_copy_filter_module.o \
- objs/src/http/modules/ngx_http_not_modified_filter_module.o \
- objs/src/http/v2/ngx_http_v2.o \
- objs/src/http/v2/ngx_http_v2_table.o \
- objs/src/http/v2/ngx_http_v2_huff_decode.o \
- objs/src/http/v2/ngx_http_v2_huff_encode.o \
- objs/src/http/v2/ngx_http_v2_module.o \
- objs/src/http/modules/ngx_http_static_module.o \
- objs/src/http/modules/ngx_http_autoindex_module.o \
- objs/src/http/modules/ngx_http_index_module.o \
- objs/src/http/modules/ngx_http_auth_basic_module.o \
- objs/src/http/modules/ngx_http_access_module.o \
- objs/src/http/modules/ngx_http_limit_conn_module.o \
- objs/src/http/modules/ngx_http_limit_req_module.o \
- objs/src/http/modules/ngx_http_geo_module.o \
- objs/src/http/modules/ngx_http_map_module.o \
- objs/src/http/modules/ngx_http_split_clients_module.o \
- objs/src/http/modules/ngx_http_referer_module.o \
- objs/src/http/modules/ngx_http_rewrite_module.o \
- objs/src/http/modules/ngx_http_ssl_module.o \
- objs/src/http/modules/ngx_http_proxy_module.o \
- objs/src/http/modules/ngx_http_fastcgi_module.o \
- objs/src/http/modules/ngx_http_uwsgi_module.o \
- objs/src/http/modules/ngx_http_scgi_module.o \
- objs/src/http/modules/ngx_http_memcached_module.o \
- objs/src/http/modules/ngx_http_empty_gif_module.o \
- objs/src/http/modules/ngx_http_browser_module.o \
- objs/src/http/modules/ngx_http_upstream_hash_module.o \
- objs/src/http/modules/ngx_http_upstream_ip_hash_module.o \
- objs/src/http/modules/ngx_http_upstream_least_conn_module.o \
- objs/src/http/modules/ngx_http_upstream_keepalive_module.o \
- objs/src/http/modules/ngx_http_upstream_zone_module.o \
- objs/src/http/modules/ngx_http_stub_status_module.o \
- objs/ngx_modules.o \
- -ldl -lpthread -lcrypt -lpcre -lssl -lcrypto -ldl -lz \
- -Wl,-E
- sed -e "s|%%PREFIX%%|/home/nginx-1.11.5|" \
- -e "s|%%PID_PATH%%|/home/nginx-1.11.5/logs/nginx.pid|" \
- -e "s|%%CONF_PATH%%|/home/nginx-1.11.5/conf/nginx.conf|" \
- -e "s|%%ERROR_LOG_PATH%%|/home/nginx-1.11.5/logs/error.log|" \
- < man/nginx.8 > objs/nginx.8
- make[1]: Leaving directory `/home/nginx'
执行安装命令 make install
运行结束后,可以看到输出如下:
- ......
- test -f '/home/nginx-1.11.5/conf/mime.types' \
- || cp conf/mime.types '/home/nginx-1.11.5/conf'
- cp conf/mime.types '/home/nginx-1.11.5/conf/mime.types.default'
- test -f '/home/nginx-1.11.5/conf/fastcgi_params' \
- || cp conf/fastcgi_params '/home/nginx-1.11.5/conf'
- cp conf/fastcgi_params \
- '/home/nginx-1.11.5/conf/fastcgi_params.default'
- test -f '/home/nginx-1.11.5/conf/fastcgi.conf' \
- || cp conf/fastcgi.conf '/home/nginx-1.11.5/conf'
- cp conf/fastcgi.conf '/home/nginx-1.11.5/conf/fastcgi.conf.default'
- test -f '/home/nginx-1.11.5/conf/uwsgi_params' \
- || cp conf/uwsgi_params '/home/nginx-1.11.5/conf'
- cp conf/uwsgi_params \
- '/home/nginx-1.11.5/conf/uwsgi_params.default'
- test -f '/home/nginx-1.11.5/conf/scgi_params' \
- || cp conf/scgi_params '/home/nginx-1.11.5/conf'
- cp conf/scgi_params \
- '/home/nginx-1.11.5/conf/scgi_params.default'
- test -f '/home/nginx-1.11.5/conf/nginx.conf' \
- || cp conf/nginx.conf '/home/nginx-1.11.5/conf/nginx.conf'
- cp conf/nginx.conf '/home/nginx-1.11.5/conf/nginx.conf.default'
- test -d '/home/nginx-1.11.5/logs' \
- || mkdir -p '/home/nginx-1.11.5/logs'
- test -d '/home/nginx-1.11.5/logs' \
- || mkdir -p '/home/nginx-1.11.5/logs'
- test -d '/home/nginx-1.11.5/html' \
- || cp -R html '/home/nginx-1.11.5'
- test -d '/home/nginx-1.11.5/logs' \
- || mkdir -p '/home/nginx-1.11.5/logs'
- make[1]: Leaving directory `/home/nginx'
开启Nginx进程(注意应该输入自己的安装目录,题主此处为/home/nginx-1.11.5/)
- /home/nginx-1.11.5/sbin/nginx
可以通过查看进行中是否有nginx来判断nginx是否启动成功:
如果发现结果中有nginx的进程,则认为已经启动:
- root 6088 1 0 18:05 ? 00:00:00 nginx: master process /home/nginx-1.11.5/sbin/nginx
- nobody 6089 6088 0 18:05 ? 00:00:00 nginx: worker process
- root 6125 1198 0 18:06 pts/0 00:00:00 grep nginx
Nginx的重启或者关闭(s参数代表signal,向nginx主进程发送信号):
- /home/nginx-1.11.5/sbin/nginx -s reload
- /home/nginx-1.11.5/sbin/nginx -s stop
浏览器输入IP,即可访问到Nginx的欢迎界面:
|