Nginx 和 Apache 安装[通俗易懂]

Nginx 和 Apache 安装[通俗易懂]Nginx和Apache安装Nginx安装Ubuntu下安装CentOS下安装安装依赖下载并解压Nginx创建www用户运行configure文件检测程序编译安装创建软连接在init.d中创建nginx启动Nginx配置防火墙端口Apache安装Ubuntu下安装CentOS下安装安装依赖安装apr安装apr-util安装httpd在init.d中创建软连接启动Nginx安装Ubuntu下安装sudoapt-getinstallnginx–upgr

大家好,又见面了,我是你们的朋友全栈君。

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[!dvalue” ]; 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
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/140979.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • oracle中is not null,oracle之is null和is not null的优化「建议收藏」

    oracle中is not null,oracle之is null和is not null的优化「建议收藏」oracle之优化isnull语句一:isnull的优化方法:通过nvl(字段,j)=j的方式,将字段中为空的数据转化为j,从而正常使用索引。具体实现条件则是:iisnull<===>j=nvl(i,j);注意:使用时必须要确保字段的数据不包含j,例如:(age,15)=15,此时有可能age内容是15,此时不可以,j的值要变换,保证不再age的范围之内。函数介绍:nv…

  • python怎么调用模块_切换模块的功能和特点

    python怎么调用模块_切换模块的功能和特点简介Python的PyYAML模块是Python的YAML解析器和生成器。安装简单安装pipinstallpyyaml从源码安装下载源码包PyYAML-3.13.tar.gz并解压,在命令行下切换到解压后的包目录内并执行如下命令:pythonsetup.pyinstall如果想使用比纯Python版本更快的LibYAML绑定,需要先下载并安装LibYAML,然后在安装…

  • poj1142_poj是什么意思

    poj1142_poj是什么意思poj1142题解

  • 更改nginx默认端口_更改端口号

    更改nginx默认端口_更改端口号一、查看当前Nginx配置信息打开nginx根目录下conf文件夹,点击编辑nginx.conf文件。Tips:Windows系统用记事本打开会使utf-8文件头部加上BOM头,这会导致配置文件不能正常读取,Nginx启动失败。因此推荐使用SublimeText3之类的编辑器打开。 server{listen80;#默认端口号…

  • python 文档注释快捷键,python注释快捷键是什么「建议收藏」

    python 文档注释快捷键,python注释快捷键是什么「建议收藏」python注释快捷键:1、单行注释是【#】,Mac的快捷键是【command+/】,windows的快捷键是【Ctrl+/】;2、多行注释是三个单引号【”’注释”’】。g1m少儿编程网-https://www.pxcodes.comg1m少儿编程网-https://www.pxcodes.com本教程操作环境:windows7系统、python3.9版,DELLG3电脑。g1m少儿编程…

  • rst和markdown_什么是RSA

    rst和markdown_什么是RSA无论是写博客还是相关技术文档,都或多或少会接触到文档文本的编辑,txt不足以满足我们的需求,rst和md文档就应运而生。本博客系列文档主要使用rst文档编写,也有部分md文档,rst文档预览以及文档编译使用到Sphinx和ReadTheDocs,编辑器使用vscode,[vscode配置参考这里](https://taotaodiy.readthedocs.io/en/latest/env/vscode.html)。

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号