今天是我正式在Linux下安装nginx的第一天吧,搜索,查看,安装,这之间肯定是或多或少的遇到了很多的问题,不管是大的还是小的,都应该记录下来,或许以后还会用到,或许会帮到其他人。

首先,先说一下,我是在virtualbox上装了ubuntu13.01这个版本下安装并配置nginx、naxsi的。之前我用的是ubuntu server这个版本,但是因为下载谷歌上的某一文件所以选择了桌面版,可以复制文件并且这样可以在主机和虚拟机之间拖动方便。

那么,我以下总结的重点就不放在安装的具体过程上面了,重点放在遇到的一些问题上,并且和他们解决的方法上。

第一个问题:wget http://naxsi.googlecode.com/files/naxsi-x.xx.tar.gz在执行这一句下载naxsi源码的时候,你会发现提示的错误很有可能是连接超时。

解决方法:因为是访问谷歌的网址去下载naxsi的源码,在正常的浏览器中打开需要FQ。所以我采用的解决方法可以是先下载到你的主机系统上,再进行拖放,当然了,我用的是virtualbox,这一软件的拖放问题我尝试着解决过很多次方法,但是拖放是失败的,所以就想了另一个解决方法,使用优盘,通过读取优盘那么完成移动文件就是很简单的了。

当然,如果你使用的是vmware workstation的话,那么是支持文件的拖动的,当然,你如果能通过网站访问直接下载到的话那是最直接的也是最方便的。我这里提到的市一中更加这种的办法。

第二个问题:./configure命令执行的问题,或者说是执行命令之后的报错问题。

当时执行到./configure命令的时候是报错的。报错的内容也肯定是不存在!

解决方法:这里的错误其实很明显,有太多的人照着网上的教程在一步步的执行命令,但是有很多人不会注意到,其实这里本身需要注意的就是一个路径的问题,对,没有错,就是路径。这里的路径需要是你的解压文件所在的路径,也就是说之nginx和naxsi所在的位置,并且在执行./configure这条语句的时候,需要在nginx的解压之后的生成的文件夹之下。如图:

在这个目录下执行该语句的话会直接成功的。成功之后部分截图如图:

第三个问题:这是紧跟着上一步之后的下一条命令我就遇到的问题,就是./nginx(这是可执行的命令)这一命令。

当时还是一直就在上一步操作命令执行的目录下(nginx-1.7.9)执行的。报错!!!!!

解决过程:当时遇到这个问题,想的就是是不是这个命令是错的,然后我就把./去掉,只是输入了nginx(可执行命令)这一命令,依然报错!!!!怎么办???那么接下来,又进行了搜索相关的帖子,可以使用nginx -t这个命令来看一下是不是nginx已经成功,但是弹出来一个选择安装的界面:如下

当时想了想,我需要的不就是nginx-naxsi吗?所以我挺果断的选择输入安装nginx-naxsi的命令(apt-get install nginx-naxsi)。等待一大堆的安装过程结束之后,我直接选择nginx这一命令执行,执行成功了,除了高兴,还剩下什么,我以为成功了,嗯,就是这样,但是领导的一句话说到了点子上,如果选择安装一下这个就可以直接启动nginx这么简单的话,那么我们之前执行的configure命令还有什么意义呢?我先使用进程命令(ps -ef | grep nginx)如下图:

所以,当即需要做的是需要找到之前执行configure命令时候生成的nginx文件,因为./nginx这一命令是绝对会执行成功的,而不是简简单单的nginx这一命令来执行,所以应该会在某个特定的目录下存在着这个nginx文件,也就是必然的,我在另一个目录下(objs目录)找到了nginx这个文件。如下图:

接下来我输入了运行nginx的命令,即./nginx,但是结果失败了:

这是因为之前已经开启过一次了,我们只需要结束进程就好了,一切看起来是似乎是so easy。如下是结束进程的过程:

之后只是要执行./nginx这一命令就好了,运行成功并查看进程:

我们可以对比一下两次运行nginx的截图:

前一次运行结果:

后一次运行结果:

我们轻易可以发现,自己编译生成的nginx,默认worker只有一个,而网上下载的nginx,自动生成会有四个worker,据说,windows版的nginx,就算是启动了4个worker,也只有一个起作用。

还有一个问题也很重要,就是在你打开127.0.0.1访问的时候会报错,显示会是403 forbidden,这是权限的问题,需要你对文件进行提权

个人觉得是自己在弄,所以直接把握所用到的那个文件提到最高读写权限,当然了,因人而异,我的提权命令是:chmod -R 777 /home(home是我进行所有操作的文件夹,你可以具体到某以文件,也可以把权限降低到775或者其他。)

至此,今天所有的问题都差不多就是这么多,其实这样的一个过程似乎是很简单的,但是这中间会遇到挺多的大大小小的问题,我们看着很烦,但是说起来总结一下,最主要的还是路径的问题吧,不管是命令需要的路径,还是生成的文件所存放的路径,都是需要注意的。我知道这应该不算是今天的收获或者是总结吧,但是总是花了一些时间来整理的,或多或少是值得的。

再附上一个应该是官网的安装教程吧,有很多帖子的都是大同小异,只是系统的区别:https://code.google.com/p/naxsi/wiki/Howto#Installing_nginx_+_naxsi

我的第一篇——nginx+naxsi总结篇1的更多相关文章

  1. nginx——内存池篇

    nginx--内存池篇 一.内存池概述 内存池是在真正使用内存之前,预先申请分配一定数量的.大小相等(一般情况下)的内存块留作备用.当有新的内存需求时,就从内存池中分出一部分内存块,若内存块不够再继续 ...

  2. 我的第二篇--nginx安装问题之路径问题

    这几天还是一直在搭建nginx,并且要在nginx的基础之上配置naxsi(WAF防火墙)并使它生效,但是随之而来的问题也会有很多,也许因为我是个新手,所以遇到的问题要多,不解的问题也要很多,不知道又 ...

  3. 初识nginx——内存池篇

    初识nginx——内存池篇 为了自身使用的方便,Nginx封装了很多有用的数据结构,比如ngx_str_t ,ngx_array_t, ngx_pool_t 等等,对于内存池,nginx设计的十分精炼 ...

  4. 解剖Nginx·自动脚本篇(5)编译器相关主脚本

    在 Nginx 的自动脚本中,auto/cc目录下的所有脚本都是用于编译器相关配置使用的.Nginx的出色跨平台性(Linux.Darwin.Solaris.Win32 等)就有这些脚本的贡献.该目录 ...

  5. dedecms调用文章列表第一篇和下面几篇不同的方法

    {dede:arclist row=1 orderby=pubdate infolen=60 limit=0,1} <li class="dot1"><img s ...

  6. 我、实战nginx+naxsi(WAF)之一

    差不多,一个星期多的时间都过去了.但是还是感觉时间过的太快,总是不禁的让人长叹一声,关于nginx和(naxsi)WAF这个问题,也算是只走出了第一步,在遇到了各种乱七八糟的错误之后总算是想要静下心来 ...

  7. 经典sql-获取当前文章的上一篇和下一篇

    我们在做资讯类的网站的时候,肯定会有这么一个需求,就是在资讯内容页的下方需要给出上一篇和下一篇资讯的链接.上次我一同事兼好友兼室友就遇到了这么一个需求,一开始我们都把问题想复杂了,先取的是符合条件的资 ...

  8. mysql的优化_第十一篇(查询计划篇)

    Mysql优化(出自官方文档) - 第十一篇(查询计划篇) 目录 Mysql优化(出自官方文档) - 第十一篇(查询计划篇) 1 EXPLAIN Output Format EXPLAIN Join ...

  9. PHP实现上一篇、下一篇

    //php实现上一篇.下一篇 获取当前浏览文章id $id = isset($_GET[ ? intval($_GET['id']) : ""; 下一篇文章 $query = my ...

随机推荐

  1. 【译】 AWK教程指南 9读取命令行上的参数

    大部分的应用程序都允许使用者在命令之后增加一些选择性的参数.执行awk时这些参数大部分用于指定数据文件文件名,有时希望在程序中能从命令行上得到一些其它用途的数据.本小节中将叙述如何在awk程序中取用这 ...

  2. 【译】 AWK教程指南 5AWK中的数组

    awk程序中允许使用字符串当做数组的下标(index).利用这个特色十分有助于资料统计工作.(使用字符串当下标的数组称为Associative Array) 首先建立一个数据文件,并取名为 reg.d ...

  3. bzoj 3932 [CQOI2015]任务查询系统(主席树)

    Description 最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分. 超级计算机中的任务用三元组(Si,Ei,Pi)描述,(Si,Ei,Pi)表示任务从第Si ...

  4. 将Sublime Text 2搭建成一个好用的IDE

    将Sublime Text 2搭建成一个好用的IDE 说起编辑器,可能大部分人要推荐的是Vim和Emacs,本人用过Vim,功能确实强大,但是不是很习惯,之前一直有朋友推荐SUblime Text 2 ...

  5. 【Linux】多睡/少睡一小时!冬夏令时全解析

    多伦多2016年11月6日凌晨2点开始起时间调回一小时,时间到凌晨2点时自动跳回到1点,大家可以多睡一小时(或者多一小时写essay的时间)~ 多伦多2017年3月12日凌晨2点开始时间拨快一小时时间 ...

  6. c# 泛型List的定义、作用、用法

    定义:List<T>类表示可通过索引访问的对象的强类型列表,提供用于对列表进行搜索.排序和操作的方法. 作用: 泛型最常见的用途是泛型集合 我们在创建列表类时,列表项的数据类型可能是int ...

  7. 了解CSS/CSS3原生变量var

    一.变量是个好东西 在任何语言中,变量的有一点作用都是一样的,那就是可以降低维护成本,附带还有更高性能,文件更高压缩率的好处. 随着CSS预编译工具Sass/Less/Stylus的关注和逐渐流行,C ...

  8. MyBatis简介与配置MyBatis+Spring+MySql

    MyBatis学习 之 一.MyBatis简介与配置MyBatis+Spring+MySql MyBatis学习 之 二.SQL语句映射文件(1)resultMap MyBatis学习 之 二.SQL ...

  9. Codeforces Round #321 (Div. 2) E. Kefa and Watch 线段树hash

    E. Kefa and Watch Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/580/prob ...

  10. iOS 10 升级后无法真机测试 Could not find Developer Disk Image

    ---2016年9月20日更新 iOS 升级到10之后,你会发现无法进行真机测试了.这种情况我在iOS 8.4 .9.3更新的时候也遇到过.原因是Xcode 的DeviceSupport里面缺少了iO ...