---恢復內容開始---nginx
聽說淘寶的Tengine很牛X,因此咱們今天也來玩玩,咱們這裏是某開放雲的vps,如今已經安裝好了nginx,如今咱們要平滑切換到安裝Tengine。dom
wget http://tengine.taobao.org/download/tengine-2.1.0.tar.gz
async
tar xvfz tengine-2.1.0.tar.gz
測試
cd tengine-2.1.0
ui
nginx -V
.net運行結果以下:命令行
nginx version: nginx/1.6.2
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC)
TLS SNI support enabled
configure arguments: –prefix=/etc/nginx –sbin-path=/usr/sbin/nginx –conf-path=/etc/nginx/nginx.conf –error-log-path=/var/log/nginx/error.log –http-log-path=/var/log/nginx/access.log –pid-path=/var/run/nginx.pid –lock-path=/var/run/nginx.lock –http-client-body-temp-path=/var/cache/nginx/client_temp –http-proxy-temp-path=/var/cache/nginx/proxy_temp –http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp –http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp –http-scgi-temp-path=/var/cache/nginx/scgi_temp –user=nginx –group=nginx –with-http_ssl_module –with-http_realip_module –with-http_addition_module –with-http_sub_module –with-http_dav_module –with-http_flv_module –with-http_mp4_module –with-http_gunzip_module –with-http_gzip_static_module –with-http_random_index_module –with-http_secure_link_module –with-http_stub_status_module –with-http_auth_request_module –with-mail –with-mail_ssl_module –with-file-aio –with-ipv6 –with-http_spdy_module –with-cc-opt=’-O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector –param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables’code
而後咱們複製一下下面的編譯參數 configure arguments:開始一直到最後。vps
./configure --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-http_ssl_module --with-http_realip_module --with-http_addition_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_stub_status_module --with-http_auth_request_module --with-mail --with-mail_ssl_module --with-file-aio --with-ipv6 --with-http_spdy_module --with-cc-opt='-O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables'
ip
結果錯誤,以下圖所示:
./configure: error: C compiler cc is not found
主要是咱們系統裏面沒有C語言,如今補上gcc編譯環境:
yum install gcc
從新運行編譯命令,依然報錯:
./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.
yum install pcre-devel
再次編譯,結果以下圖,缺乏openssl:
./configure: error: SSL modules require the OpenSSL library.
You can either do not enable the modules, or install the OpenSSL library
into the system, or build the OpenSSL library statically from the source
with nginx by using –with-openssl=<path> option.
yum -y install openssl openssl-devel
再次編譯成功,返回:
Configuration summary
+ using system PCRE library
+ using system OpenSSL library
+ md5: using OpenSSL library
+ sha1: using OpenSSL library
+ using system zlib library
+ jemalloc library is disablednginx path prefix: 「/etc/nginx」
nginx binary file: 「/usr/sbin/nginx」
nginx configuration prefix: 「/etc/nginx」
nginx configuration file: 「/etc/nginx/nginx.conf」
nginx pid file: 「/var/run/nginx.pid」
nginx error log file: 「/var/log/nginx/error.log」
nginx http access log file: 「/var/log/nginx/access.log」
nginx http client request body temporary files: 「/var/cache/nginx/client_temp」
nginx dso module path: 「/etc/nginx/modules/」
nginx http proxy temporary files: 「/var/cache/nginx/proxy_temp」
nginx http fastcgi temporary files: 「/var/cache/nginx/fastcgi_temp」
nginx http uwsgi temporary files: 「/var/cache/nginx/uwsgi_temp」
nginx http scgi temporary files: 「/var/cache/nginx/scgi_temp」
make
make成功,則以下圖所示:
/etc/init.d/nginx stop
複製objs目錄下的nginx文件到/usr/sbin/nginx目錄,覆蓋前記得備份原來文件:
cp /usr/sbin/nginx /usr/sbin/nginx.bak
cp objs/nginx /usr/sbin/
nginx -t
the configuration file /etc/nginx/nginx.conf syntax is ok
configuration file /etc/nginx/nginx.conf test is successful
service nginx start
Starting nginx: [ OK ]
測試Tengine 是否成功:
咱們這裏輸入一個不存在的頁面看看報錯就知道了,以下圖所示:
Tegine 是兼容nginx配置文件的,因此咱們原先配置好的東西就不用再麻煩去修改啦。
---恢復內容結束---