????
Current Path : /scripts/ |
Current File : //scripts/initsslhttpd2_4 |
#!/usr/local/cpanel/3rdparty/bin/perl # cpanel - scripts/initsslhttpd2_2 Copyright 2015 cPanel, Inc. # All Rights Reserved. # copyright@cpanel.net http://cpanel.net # This code is subject to the cPanel license. Unauthorized copying is prohibited use strict; use warnings; use Cpanel::Sys::OS::Check (); use Cpanel::Config::Httpd::EA4 (); if ( Cpanel::Config::Httpd::EA4::is_ea4() ) { print "Nothing to do under ea4 (this script has been deprecated under ea4).\n"; exit(0); } # do not perform the install on a CentOS 7 server if ( Cpanel::Sys::OS::Check::has_systemd() ) { exit; } unlink("/usr/local/etc/rc.d/httpd"); unlink("/etc/rc.d/init.d/httpd"); unlink("/etc/init.d/httpd"); my $iscript = '/etc/rc.d/init.d/httpd'; if ( !-e "/etc/rc.d/init.d/syslog" && !-e "/etc/rc.d/init.d/syslogd" && !-e "/etc/rc.d/init.d/functions" && !-e "/etc/rc.d/init.d/killall" && !-e "/etc/rc.d/init.d/crond" ) { $iscript = '/etc/init.d/httpd'; } open( my $htc, '>', $iscript ) or die "Can't open $iscript: $!"; print {$htc} <<'EOM'; #!/bin/sh # # # Startup script for the Apache Web Server # # chkconfig: - 85 15 # description: Apache is a World Wide Web server. It is used to serve \ # HTML files and CGI. # processname: httpd # pidfile: /usr/local/apache/logs/httpd.pid # config: /usr/local/apache/conf/httpd.conf ulimit -n 1024 ulimit -n 4096 ulimit -n 8192 ulimit -n 16384 # # Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreements. See the NOTICE file distributed with # this work for additional information regarding copyright ownership. # The ASF licenses this file to You 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. # # # Apache control script designed to allow an easy command line interface # to controlling Apache. Written by Marc Slemko, 1997/08/23 # # The exit codes returned are: # XXX this doc is no longer correct now that the interesting # XXX functions are handled by httpd # 0 - operation completed successfully # 1 - # 2 - usage error # 3 - httpd could not be started # 4 - httpd could not be stopped # 5 - httpd could not be started during a restart # 6 - httpd could not be restarted during a restart # 7 - httpd could not be restarted during a graceful restart # 8 - configuration syntax error # # When multiple arguments are given, only the error from the _last_ # one is reported. Run "apachectl help" for usage info # ARGV="$@" # # |||||||||||||||||||| START CONFIGURATION SECTION |||||||||||||||||||| # -------------------- -------------------- # # the path to your httpd binary, including options if necessary HTTPD=/usr/local/apache/bin/httpd # # pick up any necessary environment variables if test -f /usr/local/apache/bin/envvars; then . /usr/local/apache/bin/envvars fi # # a command that outputs a formatted text version of the HTML at the # url given on the command line. Designed for lynx, however other # programs may work. LYNX="lynx -dump" # # the URL to your server's mod_status status page. If you do not # have one, then status and fullstatus will not work. PORT="$(grep 'apache_port=' /var/cpanel/cpanel.config 2>/dev/null | sed -e 's/.*=\([.0-9]*:\)\{0,1\}//;' -e 's/[^0-9]*//g' 2>/dev/null)" STATUSURL="http://localhost:${PORT:-80}/whm-server-status" # # Set this variable to a command that increases the maximum # number of file descriptors allowed per child process. This is # critical for configurations that use many file descriptors, # such as mass vhosting, or a multithreaded server. ULIMIT_MAX_FILES="ulimit -S -n `ulimit -H -n`" # -------------------- -------------------- # |||||||||||||||||||| END CONFIGURATION SECTION |||||||||||||||||||| # Set the maximum number of file descriptors allowed per child process. if [ "x$ULIMIT_MAX_FILES" != "x" ] ; then $ULIMIT_MAX_FILES fi ERROR=0 if [ "x$ARGV" = "x" ] ; then ARGV="-h" fi case $ARGV in start|stop|restart|graceful|graceful-stop) $HTTPD -k $ARGV -DSSL ERROR=$? ;; startssl|sslstart|start-SSL) # echo The startssl option is no longer supported. # echo Please edit httpd.conf to include the SSL configuration settings # echo and then use "apachectl start". # ERROR=2 # ;; $HTTPD -k start -DSSL ERROR=$? ;; configtest) $HTTPD -t ERROR=$? ;; status) $LYNX $STATUSURL | awk ' /process$/ { print; exit } { print } ' ;; fullstatus) $LYNX $STATUSURL ;; *) $HTTPD $ARGV ERROR=$? esac exit $ERROR EOM close($htc); chmod( 0755, $iscript ); #rh system("/sbin/chkconfig --level 35 httpd on >/dev/null 2>/dev/null");