`
sundful
  • 浏览: 1251040 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Ubuntu下安装nginx

 
阅读更多

1)、下载

  sudo wget http://nginx.org/download/nginx-1.2.2.tar.gz

2)、解压

  sudo  tar -xzvf nginx-1.2.2.tar.gz

3)、进入相关目录进行以下操作

./configure

make  

sudo make install

  如果你运气好的话,一切ok,不过...........哈哈。Ubuntu默认的策略是什么库都不装,依赖的库都需要自已手工安装搞定。 一般都会出错的,那么我们来看看可能出现的问题。

4)、常见问题解决办法

  缺少pcre library 

./configure: error: the HTTP rewrite module requires the PCRE library. You can either disable the module by using --without-http_rewrite_module option, or install the PCRE library into the system, or build the PCRE library statically from the source with nginx by using --with-pcre=<path> option. 

  解决方法:下载安装pcre-8.31解决问题,解压后对pcre进行如下操作

sudo wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.31.tar.gz
sudo  tar -xzvf pcre-8.31.tar.gz
cd /usr/local/src/pcre-8.31
./configure  
make  
sudo make install

  运气好一次通过,运气不好,make pcre时会出错

  缺少gcc-c++和libtool,也就是c++编译包

复制代码
libtool: compile: unrecognized option `-DHAVE_CONFIG_H' 
libtool: compile: Try `libtool --help' for more information. 
make[1]: *** [pcrecpp.lo] Error 1 
make[1]: Leaving directory `/usr/local/src//pcre-8.31' 
make: *** [all] Error 2root@wolfdog-virtual-machine:~/work/pcre-8.12$ libtool -help -DHAVE_CONFIG_H 
The program 'libtool' is currently not installed.  You can install it by typing: 
sudo apt-get install libtool 
复制代码

  解决方法:需要先安装libtool和gcc-c++

sudo apt-get install libtool 
sudo apt-get install gcc-c++

  大爷啊~~~这时候可能又会报错啊,坑爹啊~~~

  缺少openssl库

./configure: error: the HTTP cache module requires md5 functions 
from OpenSSL library.  You can either disable the module by using 
--without-http-cache option, or install the OpenSSL library into the system, 
or build the OpenSSL library statically from the source with nginx by using 
--with-http_ssl_module --with-openssl=<path> options. 

  缺少zlib库

./configure: error: the HTTP gzip module requires the zlib library. 
You can either disable the module by using --without-http_gzip_module 
option, or install the zlib library into the system, or build the zlib library 
statically from the source with nginx by using --with-zlib=<path> option. 

  解决办法:少什么就安装什么呗。

sudo apt-get install openssl libssl-dev libperl-dev 

  4)、解决了以上问题,编译nginx就没啥问题了。下面安装。(附加安装插件的方法)

  先下载插件并解压

sudo wget https://github.com/agentzh/echo-nginx-module/tarball/v0.40rc1 -O echo-nginx-module.tar.gz
sudo wget https://nodeload.github.com/agentzh/memc-nginx-module/tarball/v0.13rc3 -O memc-nginx-module.tar.gz
sudo  tar -xzvf echo-nginx-module.tar.gz
sudo  tar -xzvf memc-nginx-module.tar.gz

  进入nginx目录cd nginx-1.2.2/,执行以下命令

复制代码
./configure --user=www-data --group=www-data --with-debug --with-http_gzip_static_module --with-http_ssl_module --with-pcre=../pcre-8.31/ --with-http_perl_module  --with-perl=/usr/bin/perl --with-http_stub_status_module --with-http_realip_module \
    --prefix=/usr/local/nginx \
    --add-module=../agentzh-echo-nginx-module-9259898/ \
    --add-module=../agentzh-memc-nginx-module-4007350/ \

注:前面一段是一些编译参数,后面add-module是添加模块
make -j2
make install
复制代码

  大爷的,又可能报错。没有nginx,logs目录访问权限

[alert]: could not open error log file: open() "/usr/local/nginx/logs/error.log" failed (13: Permission denied) 
2011/03/21 06:09:33 [emerg] 24855#0: mkdir() "/usr/local/nginx/client_body_temp" failed (13: Permission denied) 

  解决办法:

sudo chmod a+rwx -R logs  
sudo chmod a+rwx -R /usr/local/nginx  

  现在,差不多没问题了。

  可以进入/usr/local/nginx/sbin/执行以下命令看是否成功:

  nginx -v

5)、nginx自启动

编辑启动脚本:

sudo vim /etc/init.d/nginx
复制代码
#! /bin/bash
#
# nginx      Start up the nginx server daemon
#
# chkconfig: 2345 55 25
# Description: starts and stops the nginx web server
#
### BEGIN INIT INFO
# Provides:          nginx
# Required-Start:    $all
# Required-Stop:     $all
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Description:       starts and stops the nginx web server
### END INIT INFO
 
# To install:
#   copy this file to /etc/init.d/nginx
#   shell> chkconfig --add nginx (RedHat)
#   shell> update-rc.d -f nginx defaults (debian)
 
# To uninstall:
#   shell> chkconfig --del nginx (RedHat)
#   shell> update-rc.d -f nginx remove
 
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
NAME=nginx
DAEMON=/usr/local/nginx/sbin/$NAME
CONFIGFILE=/usr/local/nginx/conf/$NAME.conf
PIDFILE=/usr/local/nginx/logs/$NAME.pid
ULIMIT=10240
 
set -e
[ -x "$DAEMON" ] || exit 0
 
do_start() {
    echo "Starting $NAME ..."
    ulimit -SHn $ULIMIT
    $DAEMON -c $CONFIGFILE
}
 
do_stop() {
    echo "Shutting down $NAME ..."
    kill -15 `cat $PIDFILE`
}
 
do_reload() {
    echo "Reloading $NAME ..."
    kill -HUP `cat $PIDFILE`
}
 
case "$1" in
    start)
        [ ! -f "$PIDFILE" ] && do_start || echo "nginx already running"
    echo -e ".\ndone"
        ;;
    stop)
        [ -f "$PIDFILE" ] && do_stop || echo "nginx not running"
    echo -e ".\ndone"
        ;;
    restart)
        [ -f "$PIDFILE" ] && do_stop || echo "nginx not running"
        do_start
    echo -e ".\ndone"
        ;;
    reload)
        [ -f "$PIDFILE" ] && do_reload || echo "nginx not running"
    echo -e ".\ndone"
        ;;
    *)
    N=/etc/init.d/$NAME
    echo "Usage: $N {start|stop|restart|reload}" >&2
    exit 1
    ;;
esac
exit 0
复制代码

  红色部分,根据自己的路径修改。

6)、常用命令

重启nginx:service nginx restart

启动:service nginx start

关闭:service nginx stop

7)、linux常用命令

tar(z-用 gzip 对存档压缩或解压;x-从存档展开文件;v-详细显示处理的文件;f-指定存档或设备) 
tar –zxvf nginx-0.8.54.tar.gz 


ip查看 
ifconfig 

编译 
make 

安装编译好的源码包 
make install 

编辑文件 
sudo gedit  /etc/profile 

修改根限:chmod说明(u:与文件属主拥有一样的权限[a:所有人];+:增加权限;rwx:可读可写可执行) 
-R:递归所有目录和文件 
sudo chmod a+rwx -R logs 

检查是库是否安装成功 
dpkg --list|grep openssl 

下载安装库 
sudo apt-get install libtool 

检查服务启动是否正常 
ps -ef|grep 

查找openssl安装路径 
whereis openssl 

更新源 
sudo apt-get update 

更新已安装的包 
sudo apt-get upgrade

分享到:
评论

相关推荐

    UBUNTU安装nginx

    "Ubuntu安装nginx详解" 在本文中,我们将详细介绍如何在Ubuntu系统中安装nginx服务器。nginx是一个流行的开源Web服务器软件,广泛应用于生产环境中。本文将指导您一步一步地安装nginx,并对其进行基本配置。 一、...

    ubuntu20.04无网dpkg安装nginx.zip

    在Ubuntu 20.04系统中,如果你的网络连接不可用,但仍然需要安装Nginx web服务器,可以使用dpkg命令来手动安装软件包。`dpkg`是Debian包管理器,用于处理.deb格式的软件包,它是Ubuntu的基础。在没有网络的情况下,...

    ubuntu 1804 nginx 离线安装包

    在Ubuntu 18.04系统中安装Nginx服务器是一项常见的任务,特别是在无互联网连接的环境下,离线安装显得尤为重要。本资源提供了一个适用于这种场景的解决方案,它包括了Ubuntu 18.04环境下Nginx的离线安装包。这个离线...

    ubuntu20.04离线无网dpkg安装nginx按完整的deb包

    在本场景中,我们将关注如何在没有网络连接的情况下,使用`dpkg`工具安装Nginx服务器,以及可能需要的编译工具如GCC和Make。 首先,`dpkg`是Debian和基于Debian的系统(包括Ubuntu)中的包管理器,它允许用户安装、...

    ubuntu安装nginx+fastdfs.zip

    ubuntu离线部署nginx+fastdfs软件包 autoconf-latest.tar.gz automake-1.15.tar.gz fastdfs-5.11.tar.gz fastdfs-nginx-module-1.20.tar.gz libfastcommon-1.0.38.tar.gz m4-1.4.18.tar.gz openssl-1.1.0j.tar.gz ...

    Ubuntu下nginx1.6和sticky1.1安装配置资料 包

    在“Ubuntu14.04.2下nginx1.6和sticky1.1模块的安装与简单配置文档_huitoukest.doc”中,应该详细记录了以上步骤,供后续参考。最后,记得在生产环境中定期更新Nginx到最新稳定版本,以获取安全更新和新特性。

    ubuntu 20.04 离线安装Nginx(nginx-full-1.18.0)及相关依赖

    在Ubuntu 20.04系统中离线安装Nginx是一个相对复杂的过程,因为通常我们依赖于apt-get在线更新和安装软件。然而,在没有网络连接或者需要在隔离环境中部署时,就需要通过手动方式来完成。这个过程涉及到下载Nginx的...

    ubuntu nginx-1.24.0开源包

    nginx-1.24.0开源包,需要解压到ubuntu系统后,cd到目录后,先后执行./configure,make,make install,其中configure可以配置更详细的指令,make如果提示没有需要安装

    ubuntu安装Nginx1.8

    在Ubuntu系统上安装Nginx 1.8是一项常见的任务,尤其对于那些希望搭建Web服务器或者需要一个高性能的反向代理服务器的用户来说。Nginx以其轻量级、高并发处理能力而闻名,1.8版本是其稳定且广泛使用的版本之一。下面...

    ubuntu下编译安装nginx

    在Ubuntu系统上编译安装Nginx是一项技术性较强的任务,尤其当我们要为Nginx添加特定功能,如FLV(Flash Video)流媒体支持时。以下是对这一过程的详细阐述: 首先,我们需要确保系统已经安装了必要的依赖库。对于...

    0437-极智开发-解读ubuntu安装nginx

    0437_极智开发_解读ubuntu安装nginx

    0272-极智开发-解读ubuntu安装nginx

    0272_极智开发_解读ubuntu安装nginx

    ubuntu自动安装nginx php脚本

    ubuntu自动安装nginx php脚本ubuntu自动安装nginx php脚本

    Ubuntu12.04 nginx python uwsgi Django安装步骤

    Ubuntu 12.04 下安装 Nginx、Python、uWSGI 和 Django 的步骤 在本文中,我们将介绍如何在 Ubuntu 12.04 环境下安装 Nginx、Python、uWSGI 和 Django。这些技术栈组合是非常流行的 Web 应用程序开发环境。 一、...

    nginx超全离线安装包(ubuntu系统)

    可以直接将nginx文件夹中所有deb文件拷贝在/var/cache/apt/archives中,离线安装,依据提示再安装其他,安装其他的时候可能会有嵌套依赖安装,安装指令sudo dpkg -i *.deb,安装过程都相同,安装后删除/var/cache/...

    ubuntu安装Nginx(转)

    在Ubuntu系统上安装Nginx是一项常见的任务,尤其对于那些需要搭建Web服务器或者进行网站部署的用户来说。Nginx是一款高性能的HTTP和反向代理服务器,以其稳定性、高并发处理能力和低内存消耗而著名。下面我们将详细...

    Nginx Linux_ubuntu离线安装包

    由于服务器位于内网环境且无法访问互联网,需要离线安装nginx,ubuntu18.04离线安装软件也并不复杂,只是需要较大的耐心去搜集所需的包,不过大家不用担心,我已经为大家准备好了。 PCRE(Perl Compatible Regular ...

    ubuntu开机自启动nginx服务

    ubuntu开机自启动nginx服务

    ubunt下安装nginx web服务器

    Ubuntu 下安装 Nginx Web 服务器 Nginx 是一个流行的开源 Web 服务器软件,可以运行在多种操作系统上,包括 Ubuntu。本文将手把手指导您在 Ubuntu 下安装 Nginx Web 服务器,包括安装前提、Nginx 源码下载、目录...

Global site tag (gtag.js) - Google Analytics