/[smecontribs]/rpms/mod_fastcgi/contribs9/mod_fastcgi.spec
ViewVC logotype

Annotation of /rpms/mod_fastcgi/contribs9/mod_fastcgi.spec

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1 - (hide annotations) (download)
Mon Feb 24 11:14:11 2020 UTC (4 years, 9 months ago) by jpp
Branch: MAIN
CVS Tags: mod_fastcgi-2_4_6-3_el6_fws, mod_fastcgi-2_4_6-3_el6_sme, HEAD
Initial import

1 jpp 1.1 # $Id$
2     # Authority: shuff
3     # Upstream: http://fastcgi.com/fastcgi-developers
4    
5     %{?el4:%define _without_selinux 1}
6     %{?el3:%define _without_selinux 1}
7     %{?rh9:%define _without_selinux 1}
8     %{?rh7:%define _without_selinux 1}
9    
10     Summary: Apache module that enables FastCGI
11     Name: mod_fastcgi
12     Version: 2.4.6
13     Release: 3%{?dist}
14     License: GPL/Apache License
15     Group: System Environment/Daemons
16     URL: http://www.fastcgi.com/
17    
18     Packager: Steve Huff <shuff@vecna.org>
19     Vendor: Dag Apt Repository, http://dag.wieers.com/apt/
20    
21     Source0: http://www.fastcgi.com/dist/mod_fastcgi-%{version}.tar.gz
22     Source1: mod_fastcgi.te
23     BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
24    
25     BuildRequires: autoconf
26     BuildRequires: automake
27     BuildRequires: gcc-c++
28     BuildRequires: httpd-devel >= 2.0
29     Requires: httpd >= 2.0
30    
31     %{!?_without_selinux:BuildRequires: checkpolicy, policycoreutils}
32    
33     %description
34     mod_fastcgi is a module for the Apache web server, that enables
35     FastCGI - a standards based protocol for communicating with
36     applications that generate dynamic content for web pages.
37    
38     %prep
39     %setup -n %{name}-%{version}
40    
41     %build
42     cp Makefile.AP2 Makefile
43     %{__make} top_dir="%{_libdir}/httpd"
44    
45     %{__cat} <<EOF >fastcgi.httpd
46     # WARNING: this is a kludge:
47     ## The User/Group for httpd need to be set before we can load mod_fastcgi,
48     ## but /etc/httpd/conf.d/fastcgi.conf on RHEL gets loaded before
49     ## /etc/httpd/conf/httpd.conf, so we need to set them here :(
50     ## mod_fcgid does not have this bug,
51     ## but it does not handle child PHP processes appropriately per
52     ## http://serverfault.com/questions/303535/a-single-php-fastcgi-process-blocks-all-other-php-requests/305093#305093
53    
54     User apache
55     Group apache
56    
57     LoadModule fastcgi_module modules/mod_fastcgi.so
58    
59     # dir for IPC socket files
60     FastCgiIpcDir %{_localstatedir}/run/%{name}
61    
62     # wrap all fastcgi script calls in suexec
63     FastCgiWrapper On
64    
65     # global FastCgiConfig can be overridden by FastCgiServer options in vhost config
66     FastCgiConfig -idle-timeout 20 -maxClassProcesses 1
67    
68     # sample PHP config
69     # see /usr/share/doc/mod_fastcgi-2.4.6 for php-wrapper script
70     # don't forget to disable mod_php in /etc/httpd/conf.d/php.conf!
71     #
72     # to enable privilege separation, add a "SuexecUserGroup" directive
73     # and chown the php-wrapper script and parent directory accordingly
74     # see also http://www.brandonturner.net/blog/2009/07/fastcgi_with_php_opcode_cache/
75     #
76     #FastCgiServer /var/www/cgi-bin/php-wrapper
77     #AddHandler php-fastcgi .php
78     #Action php-fastcgi /cgi-bin/php-wrapper
79     #AddType application/x-httpd-php .php
80     #DirectoryIndex index.php
81     #
82     #<Location /cgi-bin/php-wrapper>
83     # Order Deny,Allow
84     # Deny from All
85     # Allow from env=REDIRECT_STATUS
86     # Options ExecCGI
87     # SetHandler fastcgi-script
88     #</Location>
89     EOF
90    
91     %{__cat} <<WRAPPER >php-wrapper
92     #!/bin/sh
93    
94     PHPRC="/etc/php.ini"
95     export PHPRC
96     PHP_FCGI_CHILDREN=4
97     export PHP_FCGI_CHILDREN
98     exec /usr/bin/php-cgi
99     WRAPPER
100    
101     %{__chmod} +x php-wrapper
102    
103     %install
104     %{__rm} -rf %{buildroot}
105     %{__make} install top_dir="%{_libdir}/httpd" DESTDIR="%{buildroot}"
106     %{__install} -Dp -m0644 fastcgi.httpd %{buildroot}%{_sysconfdir}/httpd/conf.d/fastcgi.conf
107    
108     # make an IPC sockets dir
109     %{__install} -d -m770 %{buildroot}%{_localstatedir}/run/%{name}
110    
111     ### set up SELinux module if called for (adapted from munin.spec)
112     %if %{!?_without_selinux:1}
113     checkmodule -M -m -o %{name}.mod %{SOURCE1}
114     semodule_package -o %{name}.pp -m %{name}.mod
115     %{__install} -D -d -m0755 %{buildroot}%{_datadir}/selinux/targeted/
116     %{__install} %{name}.pp %{buildroot}%{_datadir}/selinux/targeted/
117     %endif
118    
119     %clean
120     %{__rm} -rf %{buildroot}
121    
122     %post
123     %if %{!?_without_selinux:1}
124     semodule -i %{_datadir}/selinux/targeted/%{name}.pp
125     %endif
126    
127     %files
128     %defattr(-, root, root, 0755)
129     %doc CHANGES INSTALL* README docs/ php-wrapper
130     %config(noreplace) %{_sysconfdir}/httpd/conf.d/fastcgi.conf
131     %{_libdir}/httpd/modules/mod_fastcgi.so
132     %dir %attr(770,apache,apache) %{_localstatedir}/run/%{name}
133     %attr(0644, root, root) %{_datadir}/selinux/targeted/*
134    
135     %changelog
136     * Wed Jul 26 2017 Daniel Berteaud <daniel@firewall-services.com> 2.4.6-3
137     - Rebuild for SME Server
138    
139     * Mon May 07 2012 William Horka <whorka@hmdc.harvard.edu> 2.4.6-2
140     - Add selinux module
141     - Remove unused log dir and add IPC socket dir
142     - Add FastCgiWrapper, FastCgiConfig, and FastCgiWrapper to fastcgi.conf
143     - Set httpd User and Group in fastcgi.conf so mod_fastcgi.so will load
144    
145     * Fri Aug 26 2011 Philip Durbin <philipdurbin@gmail.com> 2.4.6-1
146     - Initial release, based on mod_suphp.spec

admin@koozali.org
ViewVC Help
Powered by ViewVC 1.2.1 RSS 2.0 feed