跟上回差不多,去掉了GeoIP模块,除了做外贸网站,一般用不到。
集成的第三方模块
google perf tool
naxsi
upstream url hash
cache purge
详见附件,去掉.zip后缀名即可
另外,还有一个编译包,添加了最新的google的ngx_pagespeed模块,那家伙比较大,这里只提供spec文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
|
#
%define nginx_home %{_localstatedir}
/cache/nginx
%define nginx_user nginx
%define nginx_group nginx
Summary: nginx is a high performance web server
Name: nginx
Version: 1.4.4
Release: 2%{?dist}.pagespeed
Vendor: nginx inc.
URL: http:
//nginx
.org/
Source0: http:
//nginx
.org
/download/
%{name}-%{version}.
tar
.gz
Source1: logrotate
Source2: nginx.init
Source3: nginx.sysconf
Source4: nginx.conf
Source5: nginx.vh.default.conf
Source6: nginx.vh.example_ssl.conf
Source7: nginx.suse.init
Source8: fastcgi_params
Source50: ngx_pagespeed-1.7.30.1-beta.
tar
.gz
Source51: pagespeed.conf
License: 2-clause BSD-like license
%
if
0%{?suse_version}
Group: Productivity
/Networking/Web/Servers
%
else
Group: System Environment
/Daemons
%endif
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
BuildRequires: zlib-devel
BuildRequires: pcre-devel
BuildRequires: perl
BuildRequires: gperftools-devel
BuildRequires: gcc-c++
%
if
0%{?suse_version}
BuildRequires: libopenssl-devel
Requires(pre): pwdutils
%
else
BuildRequires: openssl-devel
Requires: initscripts >= 8.36
Requires(pre): shadow-utils
Requires(post): chkconfig
%endif
Provides: webserver
%description
nginx [engine x] is an HTTP and reverse proxy server, as well as
a mail proxy server
%package debug
Summary: debug version of nginx
Group: System Environment
/Daemons
Requires: nginx
%description debug
not stripped version of nginx build with the debugging log support
%prep
%setup -q
%{__tar} zxvf %{SOURCE50}
%build
.
/configure
\
--prefix=%{_sysconfdir}
/nginx
\
--sbin-path=%{_sbindir}
/nginx
\
--conf-path=%{_sysconfdir}
/nginx/nginx
.conf \
--error-log-path=%{_localstatedir}
/log/nginx/error
.log \
--http-log-path=%{_localstatedir}
/log/nginx/access
.log \
--pid-path=%{_localstatedir}
/run/nginx
.pid \
--lock-path=%{_localstatedir}
/run/nginx
.lock \
--http-client-body-temp-path=%{_localstatedir}
/cache/nginx/client_temp
\
--http-proxy-temp-path=%{_localstatedir}
/cache/nginx/proxy_temp
\
--http-fastcgi-temp-path=%{_localstatedir}
/cache/nginx/fastcgi_temp
\
--http-uwsgi-temp-path=%{_localstatedir}
/cache/nginx/uwsgi_temp
\
--http-scgi-temp-path=%{_localstatedir}
/cache/nginx/scgi_temp
\
--user=%{nginx_user} \
--group=%{nginx_group} \
--with-http_ssl_module \
--with-http_realip_module \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--with-google_perftools_module \
--add-module=ngx_pagespeed-1.7.30.1-beta \
--with-
file
-aio \
--with-debug \
--with-cc-opt=
"%{optflags} $(pcre-config --cflags)"
\
$*
make
%{?_smp_mflags}
%{__mv} %{_builddir}/%{name}-%{version}
/objs/nginx
\
%{_builddir}/%{name}-%{version}
/objs/nginx
.debug
.
/configure
\
--prefix=%{_sysconfdir}
/nginx
\
--sbin-path=%{_sbindir}
/nginx
\
--conf-path=%{_sysconfdir}
/nginx/nginx
.conf \
--error-log-path=%{_localstatedir}
/log/nginx/error
.log \
--http-log-path=%{_localstatedir}
/log/nginx/access
.log \
--pid-path=%{_localstatedir}
/run/nginx
.pid \
--lock-path=%{_localstatedir}
/run/nginx
.lock \
--http-client-body-temp-path=%{_localstatedir}
/cache/nginx/client_temp
\
--http-proxy-temp-path=%{_localstatedir}
/cache/nginx/proxy_temp
\
--http-fastcgi-temp-path=%{_localstatedir}
/cache/nginx/fastcgi_temp
\
--http-uwsgi-temp-path=%{_localstatedir}
/cache/nginx/uwsgi_temp
\
--http-scgi-temp-path=%{_localstatedir}
/cache/nginx/scgi_temp
\
--user=%{nginx_user} \
--group=%{nginx_group} \
--with-http_ssl_module \
--with-http_realip_module \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--with-
file
-aio \
--with-google_perftools_module \
--add-module=ngx_pagespeed-1.7.30.1-beta \
--with-cc-opt=
"%{optflags} $(pcre-config --cflags)"
\
$*
make
%{?_smp_mflags}
%
install
%{__rm} -rf $RPM_BUILD_ROOT
%{__make} DESTDIR=$RPM_BUILD_ROOT
install
%{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}
/nginx
%{__mv} $RPM_BUILD_ROOT%{_sysconfdir}
/nginx/html
$RPM_BUILD_ROOT%{_datadir}
/nginx/
%{__rm} -f $RPM_BUILD_ROOT%{_sysconfdir}
/nginx/
*.default
%{__rm} -f $RPM_BUILD_ROOT%{_sysconfdir}
/nginx/fastcgi
.conf
%{__mkdir} -p $RPM_BUILD_ROOT%{_localstatedir}
/log/nginx
%{__mkdir} -p $RPM_BUILD_ROOT%{_localstatedir}
/run/nginx
%{__mkdir} -p $RPM_BUILD_ROOT%{_localstatedir}
/cache/nginx
%{__mkdir} -p $RPM_BUILD_ROOT%{_sysconfdir}
/nginx/conf
.d
%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}
/nginx/nginx
.conf
%{__install} -m 644 -p %{SOURCE4} \
$RPM_BUILD_ROOT%{_sysconfdir}
/nginx/nginx
.conf
%{__install} -m 644 -p %{SOURCE5} \
$RPM_BUILD_ROOT%{_sysconfdir}
/nginx/conf
.d
/default
.conf
%{__install} -m 644 -p %{SOURCE6} \
$RPM_BUILD_ROOT%{_sysconfdir}
/nginx/conf
.d
/example_ssl
.conf
%{__mkdir} -p $RPM_BUILD_ROOT%{_sysconfdir}
/sysconfig
%{__install} -m 644 -p %{SOURCE3} \
$RPM_BUILD_ROOT%{_sysconfdir}
/sysconfig/nginx
%{__install} -m 644 -p %{SOURCE8} \
$RPM_BUILD_ROOT%{_sysconfdir}
/nginx/fastcgi_params
%{__install} -m 644 -p %{SOURCE51} \
$RPM_BUILD_ROOT%{_sysconfdir}
/nginx/pagespeed
.conf
# install SYSV init stuff
%{__mkdir} -p $RPM_BUILD_ROOT%{_initrddir}
%
if
0%{?suse_version}
%{__install} -m755 %{SOURCE7} \
$RPM_BUILD_ROOT%{_initrddir}
/nginx
%
else
%{__install} -m755 %{SOURCE2} \
$RPM_BUILD_ROOT%{_initrddir}
/nginx
%endif
# install log rotation stuff
%{__mkdir} -p $RPM_BUILD_ROOT%{_sysconfdir}
/logrotate
.d
%{__install} -m 644 -p %{SOURCE1} \
$RPM_BUILD_ROOT%{_sysconfdir}
/logrotate
.d
/nginx
%{__install} -m644 %{_builddir}/%{name}-%{version}
/objs/nginx
.debug \
$RPM_BUILD_ROOT%{_sbindir}
/nginx
.debug
%clean
%{__rm} -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
%{_sbindir}
/nginx
%
dir
%{_sysconfdir}
/nginx
%
dir
%{_sysconfdir}
/nginx/conf
.d
%config(noreplace) %{_sysconfdir}
/nginx/nginx
.conf
%config(noreplace) %{_sysconfdir}
/nginx/conf
.d
/default
.conf
%config(noreplace) %{_sysconfdir}
/nginx/conf
.d
/example_ssl
.conf
%config(noreplace) %{_sysconfdir}
/nginx/mime
.types
%config(noreplace) %{_sysconfdir}
/nginx/fastcgi_params
%config(noreplace) %{_sysconfdir}
/nginx/scgi_params
%config(noreplace) %{_sysconfdir}
/nginx/uwsgi_params
%config(noreplace) %{_sysconfdir}
/nginx/koi-utf
%config(noreplace) %{_sysconfdir}
/nginx/koi-win
%config(noreplace) %{_sysconfdir}
/nginx/win-utf
%config(noreplace) %{_sysconfdir}
/nginx/pagespeed
.conf
%config(noreplace) %{_sysconfdir}
/logrotate
.d
/nginx
%config(noreplace) %{_sysconfdir}
/sysconfig/nginx
%{_initrddir}
/nginx
%
dir
%{_datadir}
/nginx
%
dir
%{_datadir}
/nginx/html
%{_datadir}
/nginx/html/
*
%attr(0755,root,root) %
dir
%{_localstatedir}
/cache/nginx
%attr(0755,root,root) %
dir
%{_localstatedir}
/log/nginx
%files debug
%attr(0755,root,root) %{_sbindir}
/nginx
.debug
%pre
# Add the "nginx" user
getent group %{nginx_group} >
/dev/null
|| groupadd -r %{nginx_group}
getent
passwd
%{nginx_user} >
/dev/null
|| \
useradd
-r -g %{nginx_group} -s
/sbin/nologin
\
-d %{nginx_home} -c
"nginx user"
%{nginx_user}
exit
0
%post
# Register the nginx service
if
[ $1 -
eq
1 ];
then
/sbin/chkconfig
--add nginx
# print site info
cat
<<BANNER
----------------------------------------------------------------------
Thanks
for
using NGINX!
This is NOT an official build ,at your own risk.
----------------------------------------------------------------------
BANNER
# Touch and set permisions on default log files on installation
if
[ -d %{_localstatedir}
/log/nginx
];
then
if
[ ! -e %{_localstatedir}
/log/nginx/access
.log ];
then
touch
%{_localstatedir}
/log/nginx/access
.log
%{__chmod} 640 %{_localstatedir}
/log/nginx/access
.log
%{__chown} nginx:adm %{_localstatedir}
/log/nginx/access
.log
fi
if
[ ! -e %{_localstatedir}
/log/nginx/error
.log ];
then
touch
%{_localstatedir}
/log/nginx/error
.log
%{__chmod} 640 %{_localstatedir}
/log/nginx/error
.log
%{__chown} nginx:adm %{_localstatedir}
/log/nginx/error
.log
fi
if
[ ! -d %{_localstatedir}
/cache/nginx/pagespeed_cache
];
then
%{__mkdir} -p %{_localstatedir}
/cache/nginx/pagespeed_cache
%{__chown} nginx:nginx %{_localstatedir}
/cache/nginx/pagespeed_cache
else
%{__chown} nginx:nginx %{_localstatedir}
/cache/nginx/pagespeed_cache
fi
fi
fi
%preun
if
[ $1 -
eq
0 ];
then
/sbin/service
nginx stop >
/dev/null
2>&1
/sbin/chkconfig
--del nginx
fi
%postun
if
[ $1 -
ge
1 ];
then
/sbin/service
nginx upgrade &>
/dev/null
|| :
fi
%changelog
* Sat Nov 23 2013 Purple Grape <purplegrape4@gmail.com>
- update to 1.4.4
- google_perftools_module add
- ngx_pagespeed module add
|
最后更新 2013-11-23
升级到nginx1.4.4,添加一个包含ngx_pagespeed模块的spec文件
本文转自 紫色葡萄 51CTO博客,原文链接:http://blog.51cto.com/purplegrape/1186837,如需转载请自行联系原作者