1.安装所有 http功能

./configure --user=www-data --group=www-data --with-http_ssl_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module --with-http_image_filter_module --with-http_geoip_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_stub_status_module

错误:

./configure: error: the HTTP image filter module requires the GD library.

./configure: error: the GeoIP module requires the GeoIP library

1.1 安装 GeoIP (区分大小写)

yum install GeoI GeoIP-data GeoIP-devel

完毕以后,还需要到MaxMind去下一个GeoCityLite,待会php程序要用到。

下载地址是:http://geolite.maxmind.com/downl ... /GeoLiteCity.dat.gz
下载完毕以后,将压缩包解压出数据库的.dat文件,并把文件重命名为GeoIPCity.dat,然后移动到GeoIP的数据文件夹下。
使用 whereis GeoIP查看位置在 /usr/share
 
gzip -d GeoLiteCity.dat.gz
mv GeoLiteCity.dat /usr/share/GeoIP/GeoIPCity.dat
参考:
 

1.2 安装gd

yum install gd-devel

参考:http://www.cnblogs.com/tintin1926/archive/2012/07/11/2586624.html

1.3帐号用户配置

--user=www-data --group=www-data 表示帐号和用户, 这两个应该都是已经存在的, 若不存在则在配置晚Nginx后需要添加这两个帐号或者修改 nginx.conf配置为user nobody, 详细见 4.1

至此,configure 成功

2. make

没有出现错误提示;成功。

出现 make[1]: Leaving directory `/home/gxw/Downloads/nginx-1.6.0'

3. make install

没出先错误提示, 成功。

安装路径为:/usr/local/nginx/

出现

[root@localhost nginx-1.6.0]# make install
make[1]: Leaving directory `/home/gxw/Downloads/nginx-1.6.0'

4 安装后运行出现的错误:

4.1 [root@localhost sbin]# ./nginx
nginx: [emerg] getpwnam("www-data") failed

原因: 没有创建www这个用户

解决:

4.1.1 添加www用户组和用户www,如下命令:

#/usr/sbin/groupadd -f www
#/usr/sbin/useradd -g www www
4.2.1 更改设置:
http://www.iitshare.com/install-nginx-nginx-emerg-getpwnam-www-failed-error.html
 在nginx.conf中
把user nobody的注释去掉既可 
或者
nobody 更改为已有帐号:gxw
[root@localhost conf]# cd /usr/local/nginx/conf
[root@localhost conf]# vim nginx.conf
第1行: # user  nobody;  去掉注释即删除#
改为: user  nobody;
 
4.2 nginx.conf错误
[emerg] invalid number of arguments in "user" directive in /usr/local/nginx/conf/nginx.conf:4
发现: /usr/local/nginx/conf/nginx.conf 文件中
第3行, user nobody 少了; 结尾。
user nobody;
   

添加; 后,测试成功。显示为:

[root@localhost sbin]# ./nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

4.3 普通用户 gxw无法启动nginx

4.3.1 出现错误:

  [gxw@localhost sbin]$ ./nginx
nginx: [alert] could not open error log file: open() "/usr/local/nginx/logs/error.log" failed (13: Permission denied)
2014/07/01 21:12:13 [warn] 4882#0: the "user" directive makes sense only if the master process runs with super-user privileges, ignored in /usr/local/nginx/conf/nginx.conf:2
2014/07/01 21:12:13 [emerg] 4882#0: open() "/usr/local/nginx/logs/access.log" failed (13: Permission denied)
原因是:默认情况下linux的1024以下端口是只有root用户才有权限占用

而gxw:gxw属于gxw组布局被root权限。

并且Log文件也是root权限。gxw也不具备。

4.3.2解决:

方法一:采用了该方法

所有用户都可以运行(因为是755权限,文件所有者:root,组所有者:root)

chown root:root nginx

chmod 755 nginx

chmod u+s nginx

 

方法二:

仅 root 用户和 reistlin 用户可以运行(因为是750权限,文件所有者:root,组所有者:www)

chown root:www nginx

chmod 750 nginx

chmod u+s nginx

5. 成功运行

进入:/usr/local/nginx/sbin/

[root@localhost sbin]# ./nginx    开启Nginx

打开浏览器输入:127.0.0.1

显示页面:

6. 使用命令

/usr/local/nginx/nginx -V  查看版本 和 配置信息(编译前的 --with-** 配置)

CentOS 6.5 Nginx 配置的更多相关文章

  1. CentOS 7 安装 Nginx 配置反向代理

    Linux使用Nginx Yum存储库上安装Nginx,适用于Red Hat Enterprise Linux和CentOS系统. 1.添加设置Nginx Yum存储库 在CentOS中首次安装Ngi ...

  2. centos 6.9 +nginx 配置GIT HTTPS服务器(证书采用自签名)

    第一部分原通过SSH访问的GIT服务器迁移 1.把原服务器GIT资源库目录完成复制至新的服务器 2.安装GIT服务器 新的服务器 创建用户 useradd git password git 下载GIT ...

  3. 在CentOS上安装Nginx配置HTTPS并设置系统服务和开机启动(最全教程)

    友情提示:全部配完大约需要20分钟,本教程配合 xshell 和 xftp 使用更佳. 系统配置:CentOS 7.5 本教程 摘繁华 版权所有. 操作按键 常用按键: 复制操作:Shift+Ins ...

  4. centos下使用nginx 配置websocket,https升级wss协议

    服务端代码/***/ // 服务端代码 var express = require('express'); var app = express(); var path = require('path' ...

  5. 【CentOS 7】nginx配置web服务器

    1,安装过程 [root@VM_1_14_centos ~]# cd /data/ [root@VM_1_14_centos data]# wget http://nginx.org/download ...

  6. 一些NGINX配置

    一些nginx配置 使用独立目录, 然后include具体配置 gzip on for multi processers static file cache proxy pass 静态目录 or 文件 ...

  7. CentOS 6.5安装配置LNMP服务器(Nginx+PHP+MySQL)

    CentOS 6.5安装配置LNMP服务器(Nginx+PHP+MySQL) 一.准备篇: /etc/init.d/iptables stop #关闭防火墙 关闭SELINUX vi /etc/sel ...

  8. CentOS 6.6 nginx PHP 配置

    /************************************************************************* * CentOS 6.6 nginx PHP 配置 ...

  9. CentOS 6.5安装配置Nginx

    Ubuntu下安装nginx,直接apt-get install nginx就行了,很方便. 但是今天装了CentOS6.5,直接yum install nginx不行,要先处理下源,下面是安装完整流 ...

随机推荐

  1. C++11中自定义range

    python中的range功能非常好用 for i in range(100): print(i) 现在利用C++11的基于范围的for循环特性实现C++中的range功能 class range { ...

  2. C#操作access和SQL server数据库代码实例

    在C#的学习中,操作数据库是比较常用的技术,而access和sql server 数据库的操作却有着不同.那么,有哪些不同呢? 首先,需要引用不同的类.因为有着不同的数据引擎. access:usin ...

  3. 写一个js向左滑动删除 交互特效的插件——Html5 touchmove

    需求描述 需要实现类似QQ中对联系人的操作:向左滑动,滑出删除按钮.滑动超过一半时松开则自动滑到底,不到一半时松开则返回原处. 纯js实现 使用了h5的touchmove等事件,以及用js动态改变cs ...

  4. Python中操作mysql的pymysql模块详解

    Python中操作mysql的pymysql模块详解 前言 pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同.但目前pymysql支持python3.x而后者不支持 ...

  5. 解决自定义Shiro.Realm扩展类不能用注解(@Resource或@Autowire)自动装配的问题

    问题产生原因:加载Realm时其他Spring配置文件(xml)尚未加载,导致注入失败. 解决方法:编写一个设置类把注入工作提前完成. package com.xkt.shiro import org ...

  6. Python模块之"prettytable"

    Python模块之"prettytable" 摘要: Python通过prettytable模块可以将输出内容如表格方式整齐的输出.(对于用Python操作数据库会经常用到) 1. ...

  7. Xcode7下模拟器输入文本无法显示系统键盘的解决办法

    xcode7下的ios模拟器输入内容无法系统键盘,只能用电脑键盘输入内容,这样可能会对调试带来麻烦. 其实xcode7下的ios模拟器默认只能使用一种,要么是模拟器系统键盘,要么就是是电脑键盘.设置方 ...

  8. 简单的ADO.NET连接数据小样例

    ADO.NET连接数据库的样例如下: using System; using System.Collections.Generic; using System.ComponentModel; usin ...

  9. Date、Calender类及日期和字符串转换

    Calendar是一个抽象类,抽象类java.util.Calendar 不可以通过new来获取一个实例,可以通过类方法getinstance()获取此类型的一个通用的对象 ①用法: Calendar ...

  10. git pull push 不用输入用户名和密码的方法

    1.在计算机的安装盘下找到 '用户' 这个文件夹打开. 2.找到'用户' 文件夹下面你当前的用户. 3.新建'.gitconfig' 文件 4. [user] email =  name = [pus ...