Nginx 和 Apache 安装

Nginx 安装

Ubuntu 下安装

sudo apt-get install nginx --upgrade

CentOS 下安装

  • ※ 使用 root 用户 ※

安装依赖

yum groupinstall "Development Tools"
yum -y install wget openssl openssl-devel make automake pcre-devel zlib zlib-devel

下载并解压 Nginx

cd /usr/local/src
wget https://nginx.org/download/nginx-1.18.0.tar.gz
tar -zxvf nginx-1.18.0.tar.gz
cd nginx-1.18.0

创建 www 用户

groupadd www
useradd -g www -s /sbin/nologin -M www

运行 configure 文件检测程序

./configure --prefix=/usr/local/nginx --user=www --group=www

编译安装

make && make install

创建软连接

ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx

在 init.d 中创建 nginx

vim /etc/init.d/nginx

#!/bin/sh

#nginx - this script starts and stops the nginx daemon

#chkconfig: - 85 15
#description: NGINX is an HTTP(S) server, HTTP(S) reverse
#proxy and IMAP/POP3 proxy server
#processname: nginx
#config: /usr/local/nginx/conf/nginx.conf
#config: /etc/sysconfig/nginx
#pidfile: /usr/local/nginx/logs/nginx.pid
#Source function library.
. /etc/rc.d/init.d/functions
#Source networking configuration.
. /etc/sysconfig/network
#Check that networking is up.
[ “KaTeX parse error: Expected 'EOF', got '&' at position 22: …KING" = "no" ] &̲& exit 0 nginx=…(basename KaTeX parse error: Expected 'EOF', got '&' at position 87: …config/nginx ] &̲& . /etc/syscon…nginx -V 2>&1 | grep “configure arguments:” | sed ‘s/[*]*–user=([ ])./\1/g’ -if [ -z "grep $user /etc/passwd" ]; then useradd -M -s /bin/nologin $user fi options=$nginx -V 2>&1 | grep 'configure arguments:'for opt in $options; do if [echo $opt | grep '.*-temp-path’]; then value=echo o p t ∣ c u t − d " = " − f 2 ‘ i f [ ! − d " opt | cut -d "=" -f 2` if [ ! -d " optcutd"="f2if[!d"value” ]; then
#echo “creating” $value
mkdir -p $value && chown -R $user $value
fi
fi
done
}
start() {
[ -x $nginx ] || exit 5
[ -f $NGINX_CONF_FILE ] || exit 6
make_dirs
echo -n $"Starting $prog: "
daemon $nginx -c N G I N X C O N F F I L E r e t v a l = NGINX_CONF_FILE retval= NGINXCONFFILEretval=?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
}
stop() {
echo -n $"Stopping $prog: "
killproc p r o g − Q U I T r e t v a l = prog -QUIT retval= progQUITretval=?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
}
restart() {
configtest || return $?
stop
sleep 1
start
}
reload() {
configtest || return $?
echo -n $"Reloading $prog: "
killproc n g i n x − H U P R E T V A L = nginx -HUP RETVAL= nginxHUPRETVAL=?
echo
}
force_reload() {
restart
}
configtest() {
$nginx -t -c $NGINX_CONF_FILE
}
rh_status() {
status $prog
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
case “$1” in
start)
rh_status_q && exit 0
$1
;;
stop)
rh_status_q || exit 0
$1
;;
restart|configtest)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
;;
*)
echo $“Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}”
exit 2
esac

chmod a+x /etc/init.d/nginx

启动 Nginx

/etc/init.d/nginx start

配置防火墙端口

firewall-cmd --permanent --add-port=80/tcp --zone=public
firewall-cmd --reload

Apache 安装

Ubuntu 下安装

sudo apt-get install apache2 --upgrade

CentOS 下安装

  • ※ 使用 root 用户安装 ※

安装依赖

yum groupinstall "Development Tools"
yum -y install wget openssl openssl-devel make automake pcre-devel zlib zlib-devel epel-release autoconf expat-devel libtool libnghttp2-devel

安装 apr

cd /usr/local/src
wget https://downloads.apache.org/apr/apr-1.7.0.tar.gz
tar -zxvf apr-1.7.0.tar.gz
cd apr-1.7.0
./configure --prefix=/usr/local/apr-1.7.0
make && make install

※ 报错 rm: cannot remove 'libtoolT': No such file or directory

解决方法:将 configure 文件中 RM=‘ R M ′ 改 成 R M = ′ RM' 改成 RM=' RMRM=RM -f’

提示:使用 vim 可以用 :/RM=’$RM’ 快速找到目标

然后执行 make clean

安装 apr-util

cd /usr/local/src
wget https://downloads.apache.org/apr/apr-util-1.6.1.tar.gz
tar -zxvf apr-util-1.6.1.tar.gz
cd apr-util-1.6.1
./configure --prefix=/usr/local/apr-util-1.6.1 --with-apr=/usr/local/apr-1.7.0/
make && make install

安装 httpd

cd /usr/local/src
wget https://downloads.apache.org/httpd/httpd-2.4.46.tar.gz
tar -zxvf httpd-2.4.46.tar.gz
cd httpd-2.4.46
./configure --prefix=/usr/local/httpd-2.4.46 --with-apr=/usr/local/apr-1.7.0/ --with-apr-util=/usr/local/apr-util-1.6.1/
make && make install

在 init.d 中创建软连接

ln -s /usr/local/httpd-2.4.46/bin/apachectl /etc/init.d/apache2

启动

/etc/init.d/apache2 start
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值