Linux下安装启动nginx的过程

1.首先将nginx的安装包传到虚拟机里的/home目录下

2.为了方便nginx运行而不影响linux安全需创建组合用户

groupadd -r nginx
useradd -r -g nginx  -M nginx

3.进入到/home目录下后,进行解压

tar –zxvf   tengine-2.1.0.tar.gz

4.解压完成后,进入到tengine的目录

5.进行预编译:./configure --prefix=/usr/tengine-2.1.0,如果需要gcc等可在yum下进行安装

6.预编译完成后,进行编译和安装:make && make install

7.配置Nginx为系统服务,以方便管理,即在/etc/rc.d/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:      /etc/nginx/nginx.conf
# config:      /etc/sysconfig/nginx
# pidfile:     /var/run/nginx.pid
 
# Source function library.
. /etc/rc.d/init.d/functions
 
# Source networking configuration.
. /etc/sysconfig/network
 
# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0
 
nginx="/usr/tengine-2.1.0/sbin/nginx"
prog=$(basename $nginx)
 
NGINX_CONF_FILE="/usr/tengine-2.1.0/conf/nginx.conf"
 
[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx
 
lockfile=/var/lock/subsys/nginx
 
make_dirs() {
   # make required directories
   user=`nginx -V 2>&1 | grep "configure arguments:" | sed ‘s/[^*]*--user=\([^ ]*\).*/\1/g‘ -`
   options=`$nginx -V 2>&1 | grep ‘configure arguments:‘`
   for opt in $options; do
       if [ `echo $opt | grep ‘.*-temp-path‘` ]; then
           value=`echo $opt | cut -d "=" -f 2`
           if [ ! -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 $NGINX_CONF_FILE
    retval=$?
    echo
    [ $retval -eq 0 ] && touch $lockfile
    return $retval
}
 
stop() {
    echo -n $"Stopping $prog: "
    killproc $prog -QUIT
    retval=$?
    echo
    [ $retval -eq 0 ] && rm -f $lockfile
    return $retval
}
 
restart() {
    configtest || return $?
    stop
    sleep 1
    start
}
 
reload() {
    configtest || return $?
    echo -n $"Reloading $prog: "
    killproc $nginx -HUP
    RETVAL=$?
    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

8.修改nginx文件的执行权限
    chmod +x nginx

9.添加该文件到系统服务中去:chkconfig --add nginx,若查看是否添加成功,则使用命令:chkconfig --list nginx
10.启动服务的命令:service nginx start

11.在conf里的nginx.conf文件里配置配置文件(注意大括号对应)

12.模块ngx_http_auth_basic_module 允许使用“HTTP基本认证”协议验证用户名和密码来限制对资源的访问。
     location / {
        auth_basic           "closed site";
        auth_basic_user_file /var/users;
     }
     Apache发行包中的htpasswd命令来创建user_file 文件
     htpasswd -c -m /var/users username
    
  autoindex 在浏览器中列出当前目录的文件索引
  autoindex  on;

时间: 2024-08-06 09:41:44

Linux下安装启动nginx的过程的相关文章

Centos | Linux 下安装启动 mysql 出现 8618 [ERROR] Aborting,查看日志:Plugin 'FEDERATED' is disabled.

1.试试启动时指定配置文件 ./bin/mysqld_safe --defaults-file=mysql.cnf 或 ./bin/mysqld_safe --defaults-file=mysql.cnf $ 2.试试修改 mysql.cnf(也可能是my.cnf) 在 [mysqld]下指定tmpdir tmpdir = youTmpdir Centos | Linux 下安装启动 mysql 出现 8618 [ERROR] Aborting,查看日志:Plugin 'FEDERATED'

linux下安装配置nginx

这里以nginx-1.13.12版本为例子 1.首先去官网下载nginx-1.13.12.tar.gz安装包并上传到linux服务器并解压缩安装包 tar -zxvf nginx-1.13.12.tar.gz 2.在安装ngxin之前我们首先要保证linux的防火墙是关闭状态 systemctl stop firewalld.service #停止firewall systemctl disable firewalld.service #禁止firewall开机启动?firewall-cmd -

linux下docker启动nginx无法访问80端口

问题: Linux安装了docker,docker启动了一个nginx容器,通过 80 端口无法正常访问 故障排查: 1.检查 nginx 容器启动的命令或者yaml文件,查看是否有跟本机端口进行绑定 启动nginx容器的时候,需要将本地的80端口(其他端口同理)跟nginx容器80端口(也可以是其他端口绑定)进行绑定,这样的话访问本地80端口才能正常跳转到nginx容器对应的端口 2.容器启动之后,运行: docker ps -a 查看容器的启动状态以及对应端口的绑定情况 3.查看linux端

详解Linux下安装配置Nginx

1. 从Nginx官网下载Nginx.目前最新的稳定版为:1.6.2. 2. 将下载下来的Nginx上传到/opt/nginx目录下.运行"tar -zxvf nginx-1.6.2.tar.gz"进行解压. 3. 切换到/opt/nginx/nginx-1.6.2目录下,运行./configure进行初始化配置.如出现下面的提示,说明该机器没有安装PCRE,而Nginx需要依赖PCRE,需要手动安装PCRE. 4. 安装完PCRE后,再次运行./configure进行初始化即可.注意

Linux下安装启动多个Mysql

网上找了N多资料,没有一个可以顺利成功的,郁闷,可能是水平有限吧...!本人经过不断的研究.测试,完整实现Linux下启动两台MySQL,而且对mysql有了更深入的了解...废话不多说,走着! 步骤如下: 一.编译安装两个mysql,步骤如下 下载Mysql ,此处以Mysql-6.0.11-alpha.tar.gz 为例 安装第一个数据库(主数据库) (红色部分为默认数据库文件路径,可改成其他如:data.var等) tar zxvf mysql-6.0.11-alpha.tar.gz cd

linux下安装redis的详细过程

先安装一些组件: yum -y install gcc gcc-c++ libstdc++-devel 下载并安装: # wget http://download.redis.io/releases/redis-2.8.19.tar.gz # tar xzf redis-2.8.19.tar.gz # cd redis-2.8.19 # make && make install 如果有报错信息: 错误1: [[email protected] redis-2.8.19]# make &am

Linux下安装python3.3.2过程

raspberry的/usr/local/src目录没有权限,可执行如下命令 [email protected]:~$ sudo chmod -R 777 /usr/local/src  (-R是对所有子文件夹都有效) 开始下载软件: cd /usr/local/src/ sudo wget http://www.python.org/ftp/python/3.3.2/Python-3.3.2.tar.bz2 发现raspberry不能联网,所以采用pc下载软件传到raspberry本地安装 将

linux下安装nginx与nginx调优

linux系统为rhel5.6,nginx版本为nginx-1.1.6.tar.gz,可以到网上下载最新的安装,由于nginx是基于很多模块实现强大的功能,所以要安装并编译其他模块软件包,这里安装的模块软件包有:agentzh-encrypted-session-nginx-module-v0.02-0-gc752861.tar.gz.chunkin-nginx-module-0.23rc2.tar.gz.google-perftools-1.8.3.tar.gz.libunwind-0.99.

Linux下安装Oracle的过程和涉及的知识点-系列5

12.命令行启动 由于我是用VM进行安装的,所以首先需要修改默认启动为命令行的方式. 使用root登录,编辑/etc/inittab文件,将d:5:initdefault:改为d:3:initdefault: 知识点6:Linux的运行级别 # 0 - 停机(千万不能把initdefault 设置为0) # 1 - 单用户模式 # s init s = init 1 # 2 - 多用户,没有 NFS # 3 - 完全多用户模式(标准的运行级) # 4 - 没有用到 # 5 - X11 多用户图形