d55c2d7a2c
* many files had no license comments at all * some files had license comments suggesting that they weren't open source (like a terse "all rights reserved") when they actually are open source. * all our files are licensed under apache and should be marked as such
86 lines
3.0 KiB
Bash
Executable File
86 lines
3.0 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# Copyright 2010 Google Inc.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
#
|
|
# Script to install a debuggable mod_pagespeed.so into the Apache
|
|
# distribution, usually in ~/apache2.
|
|
|
|
APACHE_DEBUG_ROOT=$1
|
|
APACHE_DEBUG_PORT=$2
|
|
SRC_TREE=$3
|
|
|
|
mkdir -p $APACHE_DEBUG_ROOT/pagespeed/cache
|
|
chmod a+rwx $APACHE_DEBUG_ROOT/pagespeed/cache
|
|
|
|
# Check to see of mod_pagespeed is already loaded into httpd.conf
|
|
conf_file=$APACHE_DEBUG_ROOT/conf/httpd.conf
|
|
if [ -e $conf_file ]; then
|
|
if grep -q "^Listen $APACHE_DEBUG_PORT\$" $conf_file; then
|
|
echo $conf_file is set up to listen on the port $APACHE_DEBUG_PORT.
|
|
else
|
|
echo $conf_file is not set up to listen on port $APACHE_DEBUG_PORT
|
|
echo please remedy
|
|
exit 1
|
|
fi
|
|
|
|
if grep -q "LoadModule pagespeed_module" $conf_file; then
|
|
echo mod_pagespeed is already loaded in config file $conf_file
|
|
else
|
|
echo adding mod_pagespeed into apache config file $conf_file
|
|
cat $SRC_TREE/install/common/pagespeed.load.template | \
|
|
sed s#@@APACHE_MODULEDIR@@#$APACHE_DEBUG_ROOT/modules# | \
|
|
sed s#@@COMMENT_OUT_DEFLATE@@## >> $conf_file
|
|
echo Include $APACHE_DEBUG_ROOT/conf/pagespeed.conf >> $conf_file
|
|
fi
|
|
|
|
# Now hack the file to also load mod_h2.
|
|
MOD_H2=$APACHE_DEBUG_ROOT/modules/mod_http2.so
|
|
if [ -f $MOD_H2 ]; then
|
|
if grep -q "LoadModule http2_module" $conf_file; then
|
|
echo http2_module is already loaded in config file $conf_file
|
|
else
|
|
echo adding http2_module into apache config file $conf_file
|
|
cat $conf_file | sed -e '/pagespeed.conf/i\
|
|
\
|
|
# Load mod_http2 to test mod_pagespeed integration. This is done before\
|
|
# pagespeed.conf so it can detect it.\
|
|
LoadModule http2_module '$MOD_H2'\
|
|
Protocols h2 http/1.1 \
|
|
Protocols h2c http/1.1\
|
|
' > $conf_file.sp
|
|
mv $conf_file.sp $conf_file
|
|
fi
|
|
else
|
|
echo "No mod_http2 in $APACHE_DEBUG_ROOT/modules, so not loading"
|
|
fi
|
|
|
|
# pagespeed_libraries.conf was added later, so check for it separately.
|
|
libraries_conf_file="$APACHE_DEBUG_ROOT/conf/pagespeed_libraries.conf"
|
|
if grep -q "Include $libraries_conf_file" $conf_file; then
|
|
echo pagespeed_libraries.conf is already loaded by $conf_file
|
|
else
|
|
echo adding pagespeed_libraries.conf include to $conf_file
|
|
cp -f $SRC_TREE/net/instaweb/genfiles/conf/pagespeed_libraries.conf \
|
|
$libraries_conf_file
|
|
echo Include $libraries_conf_file >> $conf_file
|
|
fi
|
|
else
|
|
echo "$conf_file does not exist. Consider updating devel/Makefile and/or"
|
|
echo "devel/apache_install.sh"
|
|
exit 1
|
|
fi
|
|
|
|
exit 0
|