httpd的安装的启动脚本的制作,2021Android面试笔试总结

把下载下来的包放在 /usr/local/src 下,使用 tar zxvf httpd-NN.tar.gz解压,

cd httpd-NN

./configure --prefix=/usr/local/httpd

make

make install

现在你发现在/usr/local下面多出了一个httpd的目录

我们可以利用 /usr/local/httpd/bin/apachectl -k start|stop|restart 来管理httpd服务。

如果要随系统启动,我们必须在 /etc/rc.d/init.d/rc.local文件的末尾加上一行:

/usr/local/httpd/bin/apachectl -k start

即使是这样,但是我们还是不方便管理httpd服务,我们能不能,像rpm安装那样使用service服务来管理httpd服务呢?

答案是肯定的我们必须如下操作:

在 /etc/rc.d/init.d/下建立一个 httpd的文件,利用 chmod 755 httpd 使其具有执行能力。

vi httpd 添加如下内容:

#!/bin/bash

httpd Startup script for the Apache HTTP Server

chkconfig: - 85 15

description: Apache is a World Wide Web server. It is used to serve \

HTML files and CGI.

processname: httpd

config: /etc/httpd/conf/httpd.conf

config: /etc/sysconfig/httpd

pidfile: /var/run/httpd.pid

Source function library.

. /etc/rc.d/init.d/functions

if [ -f /etc/sysconfig/httpd ]; then

. /etc/sysconfig/httpd

fi

Start httpd in the C locale by default.

HTTPD_LANG=${HTTPD_LANG-“C”}

This will prevent initlog from swallowing up a pass-phrase prompt if

mod_ssl needs a pass-phrase from the user.

INITLOG_ARGS=""

Set HTTPD=/usr/sbin/httpd.worker in /etc/sysconfig/httpd to use a server

with the thread-based “worker” MPM; BE WARNED that some modules may not

work correctly with a thread-based MPM; notably PHP will refuse to start.

Path to the apachectl script, server binary, and short-form for messages.

apachectl=/usr/sbin/apachectl

httpd=${HTTPD-/usr/sbin/httpd}

prog=httpd

pidfile=${PIDFILE-/var/run/httpd.pid}

lockfile=${LOCKFILE-/var/lock/subsys/httpd}

RETVAL=0

check for 1.3 configuration

check13 () {

CONFFILE=/etc/httpd/conf/httpd.conf

GONE="(ServerType|BindAddress|Port|AddModule|ClearModuleList|"

GONE="${GONE}AgentLog|RefererLog|RefererIgnore|FancyIndexing|"

GONE="${GONE}AccessConfig|ResourceConfig)"

if LANG=C grep -Eiq “1*($GONE)” $CONFFILE; then

echo

echo 1>&2 " Apache 1.3 configuration directives found"

echo 1>&2 " please read /usr/share/doc/httpd-2.2.3/migration.html"

failure “Apache 1.3 config directives test”

echo

exit 1

fi

}

The semantics of these two functions differ from the way apachectl does

things – attempting to start while running is a failure, and shutdown

when not running is also a failure. So we just do it the way init scripts

are expected to behave here.

start() {

echo -n {1}quot;Starting $prog: "

check13 || exit 1

LANG=$HTTPD_LANG daemon $httpd $OPTIONS

RETVAL=$?

echo

[ $RETVAL = 0 ] && touch ${lockfile}

return $RETVAL

}

When stopping httpd a delay of >10 second is required before SIGKILLing the

httpd parent; this gives enough time for the httpd parent to SIGKILL any

errant children.

stop() {

echo -n {1}quot;Stopping $prog: "

killproc -d 10 $httpd

RETVAL=$?

echo

[ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile}

}

最后

我见过很多技术leader在面试的时候,遇到处于迷茫期的大龄程序员,比面试官年龄都大。这些人有一些共同特征:可能工作了7、8年,还是每天重复给业务部门写代码,工作内容的重复性比较高,没有什么技术含量的工作。问到这些人的职业规划时,他们也没有太多想法。

其实30岁到40岁是一个人职业发展的黄金阶段,一定要在业务范围内的扩张,技术广度和深度提升上有自己的计划,才有助于在职业发展上有持续的发展路径,而不至于停滞不前。

不断奔跑,你就知道学习的意义所在!

以上进阶BATJ大厂学习资料可以免费分享给大家,需要完整版的朋友,【点这里可以看到全部内容】。


  1. [:space:] ↩︎

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值