Nginx 俄罗斯人开发的一款比较强劲的web服务器,静态页面html 单机在优化得当的情况下,能够达到3-4W的并发,是一款比较优秀的服务器软件,在国内,有Tengine【淘宝】开发的分支 ,关于Tengine的文档,可以参考,淘宝团队的官方文档:http://tengine.taobao.org/
下面介绍是在Linux Centos 6.7下关于Nginx的安装:
1.下载nginx ,目前比较常用的nginx是1.4.7,经过了历史的重重考验,下载地址:http://nginx.org/en/download.html ,选中nginx 1.4.7 下载到/usr/local/src
命令:
wget http://nginx.org/download/nginx-1.4.7.tar.gz
2.解压:
[root@alex src]# tar -zxvf nginx-1.4.7.tar.gz nginx-1.4.7/ nginx-1.4.7/auto/ nginx-1.4.7/conf/ nginx-1.4.7/contrib/ nginx-1.4.7/src/ nginx-1.4.7/configure nginx-1.4.7/LICENSE nginx-1.4.7/README nginx-1.4.7/html/ nginx-1.4.7/man/ nginx-1.4.7/CHANGES.ru nginx-1.4.7/CHANGES nginx-1.4.7/man/nginx.8 nginx-1.4.7/html/50x.html nginx-1.4.7/html/index.html nginx-1.4.7/src/core/ nginx-1.4.7/src/event/ nginx-1.4.7/src/http/ nginx-1.4.7/src/mail/ nginx-1.4.7/src/misc/ nginx-1.4.7/src/os/ nginx-1.4.7/src/os/unix/ nginx-1.4.7/src/os/unix/ngx_aio_read_chain.c nginx-1.4.7/src/os/unix/ngx_aio_read.c nginx-1.4.7/src/os/unix/ngx_aio_write_chain.c nginx-1.4.7/src/os/unix/ngx_aio_write.c nginx-1.4.7/src/os/unix/ngx_atomic.h nginx-1.4.7/src/os/unix/ngx_alloc.c nginx-1.4.7/src/os/unix/ngx_alloc.h nginx-1.4.7/src/os/unix/ngx_darwin_config.h nginx-1.4.7/src/os/unix/ngx_channel.c nginx-1.4.7/src/os/unix/ngx_channel.h nginx-1.4.7/src/os/unix/ngx_daemon.c nginx-1.4.7/src/os/unix/ngx_darwin.h nginx-1.4.7/src/os/unix/ngx_darwin_sendfile_chain.c nginx-1.4.7/src/os/unix/ngx_darwin_init.c nginx-1.4.7/src/os/unix/ngx_file_aio_read.c nginx-1.4.7/src/os/unix/ngx_errno.c nginx-1.4.7/src/os/unix/ngx_errno.h nginx-1.4.7/src/os/unix/ngx_freebsd.h nginx-1.4.7/src/os/unix/ngx_files.c nginx-1.4.7/src/os/unix/ngx_files.h nginx-1.4.7/src/os/unix/ngx_freebsd_rfork_thread.c nginx-1.4.7/src/os/unix/ngx_freebsd_config.h nginx-1.4.7/src/os/unix/ngx_freebsd_init.c nginx-1.4.7/src/os/unix/ngx_freebsd_sendfile_chain.c nginx-1.4.7/src/os/unix/ngx_freebsd_rfork_thread.h nginx-1.4.7/src/os/unix/ngx_gcc_atomic_sparc64.h nginx-1.4.7/src/os/unix/ngx_gcc_atomic_amd64.h nginx-1.4.7/src/os/unix/ngx_gcc_atomic_ppc.h nginx-1.4.7/src/os/unix/ngx_solaris_sendfilev_chain.c nginx-1.4.7/src/os/unix/ngx_gcc_atomic_x86.h nginx-1.4.7/src/os/unix/ngx_linux.h nginx-1.4.7/src/os/unix/ngx_linux_aio_read.c nginx-1.4.7/src/os/unix/ngx_linux_config.h nginx-1.4.7/src/os/unix/ngx_linux_init.c nginx-1.4.7/src/os/unix/ngx_linux_sendfile_chain.c nginx-1.4.7/src/os/unix/ngx_os.h nginx-1.4.7/src/os/unix/ngx_posix_config.h nginx-1.4.7/src/os/unix/ngx_posix_init.c nginx-1.4.7/src/os/unix/ngx_process.c nginx-1.4.7/src/os/unix/ngx_process.h nginx-1.4.7/src/os/unix/ngx_process_cycle.c nginx-1.4.7/src/os/unix/ngx_process_cycle.h nginx-1.4.7/src/os/unix/ngx_pthread_thread.c nginx-1.4.7/src/os/unix/ngx_readv_chain.c nginx-1.4.7/src/os/unix/ngx_recv.c nginx-1.4.7/src/os/unix/ngx_send.c nginx-1.4.7/src/os/unix/ngx_setaffinity.c nginx-1.4.7/src/os/unix/ngx_setaffinity.h nginx-1.4.7/src/os/unix/ngx_setproctitle.c nginx-1.4.7/src/os/unix/ngx_setproctitle.h nginx-1.4.7/src/os/unix/ngx_shmem.c nginx-1.4.7/src/os/unix/ngx_shmem.h nginx-1.4.7/src/os/unix/ngx_socket.c nginx-1.4.7/src/os/unix/ngx_socket.h nginx-1.4.7/src/os/unix/ngx_solaris.h nginx-1.4.7/src/os/unix/ngx_solaris_config.h nginx-1.4.7/src/os/unix/ngx_solaris_init.c nginx-1.4.7/src/os/unix/ngx_sunpro_atomic_sparc64.h nginx-1.4.7/src/os/unix/ngx_sunpro_amd64.il nginx-1.4.7/src/os/unix/ngx_sunpro_sparc64.il nginx-1.4.7/src/os/unix/ngx_sunpro_x86.il nginx-1.4.7/src/os/unix/ngx_thread.h nginx-1.4.7/src/os/unix/ngx_time.c nginx-1.4.7/src/os/unix/ngx_time.h nginx-1.4.7/src/os/unix/ngx_udp_recv.c nginx-1.4.7/src/os/unix/ngx_user.c nginx-1.4.7/src/os/unix/ngx_user.h nginx-1.4.7/src/os/unix/ngx_writev_chain.c nginx-1.4.7/src/os/unix/rfork_thread.S nginx-1.4.7/src/misc/ngx_google_perftools_module.c nginx-1.4.7/src/misc/ngx_cpp_test_module.cpp nginx-1.4.7/src/mail/ngx_mail_handler.c nginx-1.4.7/src/mail/ngx_mail.c nginx-1.4.7/src/mail/ngx_mail.h nginx-1.4.7/src/mail/ngx_mail_auth_http_module.c nginx-1.4.7/src/mail/ngx_mail_core_module.c nginx-1.4.7/src/mail/ngx_mail_imap_handler.c nginx-1.4.7/src/mail/ngx_mail_imap_module.c nginx-1.4.7/src/mail/ngx_mail_imap_module.h nginx-1.4.7/src/mail/ngx_mail_parse.c nginx-1.4.7/src/mail/ngx_mail_pop3_handler.c nginx-1.4.7/src/mail/ngx_mail_pop3_module.c nginx-1.4.7/src/mail/ngx_mail_pop3_module.h nginx-1.4.7/src/mail/ngx_mail_proxy_module.c nginx-1.4.7/src/mail/ngx_mail_smtp_handler.c nginx-1.4.7/src/mail/ngx_mail_smtp_module.c nginx-1.4.7/src/mail/ngx_mail_smtp_module.h nginx-1.4.7/src/mail/ngx_mail_ssl_module.c nginx-1.4.7/src/mail/ngx_mail_ssl_module.h nginx-1.4.7/src/http/modules/ nginx-1.4.7/src/http/ngx_http_cache.h nginx-1.4.7/src/http/ngx_http.c nginx-1.4.7/src/http/ngx_http.h nginx-1.4.7/src/http/ngx_http_copy_filter_module.c nginx-1.4.7/src/http/ngx_http_busy_lock.c nginx-1.4.7/src/http/ngx_http_busy_lock.h nginx-1.4.7/src/http/ngx_http_config.h nginx-1.4.7/src/http/ngx_http_header_filter_module.c nginx-1.4.7/src/http/ngx_http_core_module.c nginx-1.4.7/src/http/ngx_http_core_module.h nginx-1.4.7/src/http/ngx_http_file_cache.c nginx-1.4.7/src/http/ngx_http_parse_time.c nginx-1.4.7/src/http/ngx_http_parse.c nginx-1.4.7/src/http/ngx_http_request_body.c nginx-1.4.7/src/http/ngx_http_request.c nginx-1.4.7/src/http/ngx_http_postpone_filter_module.c nginx-1.4.7/src/http/ngx_http_request.h nginx-1.4.7/src/http/ngx_http_spdy_module.c nginx-1.4.7/src/http/ngx_http_script.c nginx-1.4.7/src/http/ngx_http_script.h nginx-1.4.7/src/http/ngx_http_spdy.c nginx-1.4.7/src/http/ngx_http_spdy.h nginx-1.4.7/src/http/ngx_http_spdy_filter_module.c nginx-1.4.7/src/http/ngx_http_spdy_module.h nginx-1.4.7/src/http/ngx_http_special_response.c nginx-1.4.7/src/http/ngx_http_upstream.c nginx-1.4.7/src/http/ngx_http_upstream.h nginx-1.4.7/src/http/ngx_http_upstream_round_robin.c nginx-1.4.7/src/http/ngx_http_upstream_round_robin.h nginx-1.4.7/src/http/ngx_http_variables.c nginx-1.4.7/src/http/ngx_http_variables.h nginx-1.4.7/src/http/ngx_http_write_filter_module.c nginx-1.4.7/src/http/modules/ngx_http_addition_filter_module.c nginx-1.4.7/src/http/modules/ngx_http_access_module.c nginx-1.4.7/src/http/modules/ngx_http_charset_filter_module.c nginx-1.4.7/src/http/modules/ngx_http_auth_basic_module.c nginx-1.4.7/src/http/modules/ngx_http_autoindex_module.c nginx-1.4.7/src/http/modules/ngx_http_browser_module.c nginx-1.4.7/src/http/modules/ngx_http_not_modified_filter_module.c nginx-1.4.7/src/http/modules/ngx_http_chunked_filter_module.c nginx-1.4.7/src/http/modules/ngx_http_dav_module.c nginx-1.4.7/src/http/modules/ngx_http_degradation_module.c nginx-1.4.7/src/http/modules/ngx_http_empty_gif_module.c nginx-1.4.7/src/http/modules/ngx_http_fastcgi_module.c nginx-1.4.7/src/http/modules/ngx_http_flv_module.c nginx-1.4.7/src/http/modules/ngx_http_geo_module.c nginx-1.4.7/src/http/modules/ngx_http_geoip_module.c nginx-1.4.7/src/http/modules/ngx_http_gunzip_filter_module.c nginx-1.4.7/src/http/modules/ngx_http_gzip_filter_module.c nginx-1.4.7/src/http/modules/ngx_http_gzip_static_module.c nginx-1.4.7/src/http/modules/ngx_http_headers_filter_module.c nginx-1.4.7/src/http/modules/ngx_http_image_filter_module.c nginx-1.4.7/src/http/modules/ngx_http_index_module.c nginx-1.4.7/src/http/modules/ngx_http_limit_conn_module.c nginx-1.4.7/src/http/modules/ngx_http_limit_req_module.c nginx-1.4.7/src/http/modules/ngx_http_log_module.c nginx-1.4.7/src/http/modules/ngx_http_map_module.c nginx-1.4.7/src/http/modules/ngx_http_memcached_module.c nginx-1.4.7/src/http/modules/ngx_http_mp4_module.c nginx-1.4.7/src/http/modules/ngx_http_random_index_module.c nginx-1.4.7/src/http/modules/ngx_http_proxy_module.c nginx-1.4.7/src/http/modules/ngx_http_upstream_ip_hash_module.c nginx-1.4.7/src/http/modules/ngx_http_range_filter_module.c nginx-1.4.7/src/http/modules/ngx_http_realip_module.c nginx-1.4.7/src/http/modules/ngx_http_referer_module.c nginx-1.4.7/src/http/modules/ngx_http_rewrite_module.c nginx-1.4.7/src/http/modules/ngx_http_scgi_module.c nginx-1.4.7/src/http/modules/ngx_http_secure_link_module.c nginx-1.4.7/src/http/modules/ngx_http_split_clients_module.c nginx-1.4.7/src/http/modules/ngx_http_ssi_filter_module.c nginx-1.4.7/src/http/modules/ngx_http_ssi_filter_module.h nginx-1.4.7/src/http/modules/perl/ nginx-1.4.7/src/http/modules/ngx_http_ssl_module.c nginx-1.4.7/src/http/modules/ngx_http_ssl_module.h nginx-1.4.7/src/http/modules/ngx_http_static_module.c nginx-1.4.7/src/http/modules/ngx_http_stub_status_module.c nginx-1.4.7/src/http/modules/ngx_http_sub_filter_module.c nginx-1.4.7/src/http/modules/ngx_http_upstream_keepalive_module.c nginx-1.4.7/src/http/modules/ngx_http_upstream_least_conn_module.c nginx-1.4.7/src/http/modules/ngx_http_userid_filter_module.c nginx-1.4.7/src/http/modules/ngx_http_uwsgi_module.c nginx-1.4.7/src/http/modules/ngx_http_xslt_filter_module.c nginx-1.4.7/src/http/modules/perl/Makefile.PL nginx-1.4.7/src/http/modules/perl/nginx.pm nginx-1.4.7/src/http/modules/perl/nginx.xs nginx-1.4.7/src/http/modules/perl/typemap nginx-1.4.7/src/http/modules/perl/ngx_http_perl_module.c nginx-1.4.7/src/http/modules/perl/ngx_http_perl_module.h nginx-1.4.7/src/event/modules/ nginx-1.4.7/src/event/ngx_event_accept.c nginx-1.4.7/src/event/ngx_event.c nginx-1.4.7/src/event/ngx_event.h nginx-1.4.7/src/event/ngx_event_openssl_stapling.c nginx-1.4.7/src/event/ngx_event_busy_lock.c nginx-1.4.7/src/event/ngx_event_busy_lock.h nginx-1.4.7/src/event/ngx_event_connect.c nginx-1.4.7/src/event/ngx_event_connect.h nginx-1.4.7/src/event/ngx_event_mutex.c nginx-1.4.7/src/event/ngx_event_openssl.c nginx-1.4.7/src/event/ngx_event_openssl.h nginx-1.4.7/src/event/ngx_event_pipe.c nginx-1.4.7/src/event/ngx_event_pipe.h nginx-1.4.7/src/event/ngx_event_posted.c nginx-1.4.7/src/event/ngx_event_posted.h nginx-1.4.7/src/event/ngx_event_timer.c nginx-1.4.7/src/event/ngx_event_timer.h nginx-1.4.7/src/event/modules/ngx_devpoll_module.c nginx-1.4.7/src/event/modules/ngx_aio_module.c nginx-1.4.7/src/event/modules/ngx_eventport_module.c nginx-1.4.7/src/event/modules/ngx_epoll_module.c nginx-1.4.7/src/event/modules/ngx_win32_select_module.c nginx-1.4.7/src/event/modules/ngx_kqueue_module.c nginx-1.4.7/src/event/modules/ngx_poll_module.c nginx-1.4.7/src/event/modules/ngx_rtsig_module.c nginx-1.4.7/src/event/modules/ngx_select_module.c nginx-1.4.7/src/core/ngx_array.c nginx-1.4.7/src/core/nginx.c nginx-1.4.7/src/core/nginx.h nginx-1.4.7/src/core/ngx_conf_file.c nginx-1.4.7/src/core/ngx_array.h nginx-1.4.7/src/core/ngx_buf.c nginx-1.4.7/src/core/ngx_buf.h nginx-1.4.7/src/core/ngx_connection.c nginx-1.4.7/src/core/ngx_conf_file.h nginx-1.4.7/src/core/ngx_config.h nginx-1.4.7/src/core/ngx_murmurhash.c nginx-1.4.7/src/core/ngx_file.c nginx-1.4.7/src/core/ngx_connection.h nginx-1.4.7/src/core/ngx_core.h nginx-1.4.7/src/core/ngx_cpuinfo.c nginx-1.4.7/src/core/ngx_crc.h nginx-1.4.7/src/core/ngx_crc32.c nginx-1.4.7/src/core/ngx_crc32.h nginx-1.4.7/src/core/ngx_crypt.c nginx-1.4.7/src/core/ngx_crypt.h nginx-1.4.7/src/core/ngx_cycle.c nginx-1.4.7/src/core/ngx_cycle.h nginx-1.4.7/src/core/ngx_file.h nginx-1.4.7/src/core/ngx_hash.c nginx-1.4.7/src/core/ngx_hash.h nginx-1.4.7/src/core/ngx_inet.c nginx-1.4.7/src/core/ngx_inet.h nginx-1.4.7/src/core/ngx_list.c nginx-1.4.7/src/core/ngx_list.h nginx-1.4.7/src/core/ngx_log.c nginx-1.4.7/src/core/ngx_log.h nginx-1.4.7/src/core/ngx_md5.c nginx-1.4.7/src/core/ngx_md5.h nginx-1.4.7/src/core/ngx_open_file_cache.c nginx-1.4.7/src/core/ngx_murmurhash.h nginx-1.4.7/src/core/ngx_open_file_cache.h nginx-1.4.7/src/core/ngx_output_chain.c nginx-1.4.7/src/core/ngx_palloc.c nginx-1.4.7/src/core/ngx_palloc.h nginx-1.4.7/src/core/ngx_parse.c nginx-1.4.7/src/core/ngx_parse.h nginx-1.4.7/src/core/ngx_queue.c nginx-1.4.7/src/core/ngx_queue.h nginx-1.4.7/src/core/ngx_radix_tree.c nginx-1.4.7/src/core/ngx_radix_tree.h nginx-1.4.7/src/core/ngx_rbtree.c nginx-1.4.7/src/core/ngx_rbtree.h nginx-1.4.7/src/core/ngx_regex.c nginx-1.4.7/src/core/ngx_regex.h nginx-1.4.7/src/core/ngx_resolver.c nginx-1.4.7/src/core/ngx_resolver.h nginx-1.4.7/src/core/ngx_sha1.h nginx-1.4.7/src/core/ngx_shmtx.c nginx-1.4.7/src/core/ngx_shmtx.h nginx-1.4.7/src/core/ngx_slab.c nginx-1.4.7/src/core/ngx_slab.h nginx-1.4.7/src/core/ngx_spinlock.c nginx-1.4.7/src/core/ngx_string.c nginx-1.4.7/src/core/ngx_string.h nginx-1.4.7/src/core/ngx_times.c nginx-1.4.7/src/core/ngx_times.h nginx-1.4.7/contrib/geo2nginx.pl nginx-1.4.7/contrib/README nginx-1.4.7/contrib/unicode2nginx/ nginx-1.4.7/contrib/unicode2nginx/koi-utf nginx-1.4.7/contrib/unicode2nginx/win-utf nginx-1.4.7/contrib/unicode2nginx/unicode-to-nginx.pl nginx-1.4.7/conf/fastcgi.conf nginx-1.4.7/conf/fastcgi_params nginx-1.4.7/conf/koi-utf nginx-1.4.7/conf/koi-win nginx-1.4.7/conf/mime.types nginx-1.4.7/conf/nginx.conf nginx-1.4.7/conf/scgi_params nginx-1.4.7/conf/uwsgi_params nginx-1.4.7/conf/win-utf nginx-1.4.7/auto/cc/ nginx-1.4.7/auto/have_headers nginx-1.4.7/auto/define nginx-1.4.7/auto/endianness nginx-1.4.7/auto/feature nginx-1.4.7/auto/have nginx-1.4.7/auto/lib/ nginx-1.4.7/auto/os/ nginx-1.4.7/auto/headers nginx-1.4.7/auto/include nginx-1.4.7/auto/init nginx-1.4.7/auto/install nginx-1.4.7/auto/types/ nginx-1.4.7/auto/make nginx-1.4.7/auto/modules nginx-1.4.7/auto/nohave nginx-1.4.7/auto/options nginx-1.4.7/auto/sources nginx-1.4.7/auto/stubs nginx-1.4.7/auto/summary nginx-1.4.7/auto/unix nginx-1.4.7/auto/types/uintptr_t nginx-1.4.7/auto/types/sizeof nginx-1.4.7/auto/types/typedef nginx-1.4.7/auto/types/value nginx-1.4.7/auto/os/conf nginx-1.4.7/auto/os/darwin nginx-1.4.7/auto/os/freebsd nginx-1.4.7/auto/os/linux nginx-1.4.7/auto/os/solaris nginx-1.4.7/auto/os/win32 nginx-1.4.7/auto/lib/geoip/ nginx-1.4.7/auto/lib/conf nginx-1.4.7/auto/lib/google-perftools/ nginx-1.4.7/auto/lib/libatomic/ nginx-1.4.7/auto/lib/libgd/ nginx-1.4.7/auto/lib/libxslt/ nginx-1.4.7/auto/lib/md5/ nginx-1.4.7/auto/lib/make nginx-1.4.7/auto/lib/openssl/ nginx-1.4.7/auto/lib/pcre/ nginx-1.4.7/auto/lib/perl/ nginx-1.4.7/auto/lib/sha1/ nginx-1.4.7/auto/lib/zlib/ nginx-1.4.7/auto/lib/test nginx-1.4.7/auto/lib/zlib/makefile.bcc nginx-1.4.7/auto/lib/zlib/conf nginx-1.4.7/auto/lib/zlib/make nginx-1.4.7/auto/lib/zlib/makefile.msvc nginx-1.4.7/auto/lib/zlib/makefile.owc nginx-1.4.7/auto/lib/zlib/patch.zlib.h nginx-1.4.7/auto/lib/sha1/makefile.bcc nginx-1.4.7/auto/lib/sha1/conf nginx-1.4.7/auto/lib/sha1/make nginx-1.4.7/auto/lib/sha1/makefile.msvc nginx-1.4.7/auto/lib/sha1/makefile.owc nginx-1.4.7/auto/lib/perl/conf nginx-1.4.7/auto/lib/perl/make nginx-1.4.7/auto/lib/pcre/makefile.bcc nginx-1.4.7/auto/lib/pcre/conf nginx-1.4.7/auto/lib/pcre/make nginx-1.4.7/auto/lib/pcre/makefile.msvc nginx-1.4.7/auto/lib/pcre/makefile.owc nginx-1.4.7/auto/lib/openssl/makefile.bcc nginx-1.4.7/auto/lib/openssl/conf nginx-1.4.7/auto/lib/openssl/make nginx-1.4.7/auto/lib/openssl/makefile.msvc nginx-1.4.7/auto/lib/md5/makefile.bcc nginx-1.4.7/auto/lib/md5/conf nginx-1.4.7/auto/lib/md5/make nginx-1.4.7/auto/lib/md5/makefile.msvc nginx-1.4.7/auto/lib/md5/makefile.owc nginx-1.4.7/auto/lib/libxslt/conf nginx-1.4.7/auto/lib/libgd/conf nginx-1.4.7/auto/lib/libatomic/conf nginx-1.4.7/auto/lib/libatomic/make nginx-1.4.7/auto/lib/google-perftools/conf nginx-1.4.7/auto/lib/geoip/conf nginx-1.4.7/auto/cc/clang nginx-1.4.7/auto/cc/acc nginx-1.4.7/auto/cc/bcc nginx-1.4.7/auto/cc/ccc nginx-1.4.7/auto/cc/conf nginx-1.4.7/auto/cc/gcc nginx-1.4.7/auto/cc/icc nginx-1.4.7/auto/cc/msvc nginx-1.4.7/auto/cc/name nginx-1.4.7/auto/cc/owc nginx-1.4.7/auto/cc/sunc
[root@alex src]# cd nginx-1.4.7
./configure --prefix=/usr/local/nginx --with-http_realip_module --with-http_sub_module --with-http_gzip_static_module --with-http_stub_status_module --with-pcre
出现错误:
./configure: error: the HTTP rewrite module requires the PCRE library. You can either disable the module by using --without-http_rewrite_module option, or install the PCRE library into the system, or build the PCRE library statically from the source with nginx by using --with-pcre=<path> option.
错误原因,是因为缺少PCRE library 库
yum install -y net-tools pcre-devel.x86_64 gcc zlib zlib-devel make openssl-devel wget
然后重新编译,查看编译是否成功
[root@alex nginx-1.4.7]# echo $? 0
输出结果为0 ,说明是编译成功,然后Make
make之后,仍然要echo $?一下,看是否为0 ,如果不为0,注意错误原因,具体错误原因,具体分析。
最后Make install ,记得也要echo $? 一下,看是否有错误提示。
至此nginx的安装完成!