一般情况下没有这种需求,但对于强迫症患者来说,还是完整的走了一把。

  普通用户是不允许使用1024以下端口的,所以此次操作仍然需要root权限来进行配置。而且由于使用了root安装,因此nginx用户仍然需要部分root授权。

一、安装

  由于想后期维护偷懒,所以采取yum安装,这个需要用root装,因此nginx被安装到了系统的目录下面。涉及此次操作的目录及文件如下:

配置目录:/etc/nginx
配置文件:/etc/nginx/conf.d/default.conf
bin文件:/usr/sbin/nginx

二、配置相关权限(nginx用户已建好)

  1、将nginx用户加入到root组,同时修改相关目录为同组可写(chmod g+w path)。否则启动时会报没有目录权限。相关目录或文件如下:

usermod -g root nginx
chmod g+w /etc/nginx/conf.d  --此操作只为以后可以使用普通用户修改配置
chmod g+w /etc/nginx/conf.d/default.conf  --此操作只为以后可以使用普通用户修改配置
chmod g+w /var/cache/nginx  --若不赋权,则运行报无法创建目录的错

  2、修改为nginx用户添加特殊权限,具体原理请参看:Linux普通用户启动nginx

chmod u+s /usr/sbin/nginx

  3、由于运行时nginx需要访问的默认目录都是归属root用户,因此要么都做g+w赋权,要么在default.conf中修改默认路径,指向nginx用户的目录。如:

htmlroot:/usr/share/nginx/html

三、自签名ssl证书的制作,详细操作请参见:如何创建一个自签名的ssl证书(X509)

 $ openssl genrsa -des3 -out server.key     --生成私钥
$ openssl req -new -key server.key -out server.csr --生成CSR(证书签名请求),会要求输入一些信息,其中Common Name要填写域名,否则浏览器会警告
$ cp server.key server.key.org --删除私钥中的密码(可选)
$ openssl rsa -in server.key.org -out server.key --删除私钥中的密码(可选)
$ openssl x509 -req -days -in server.csr -signkey server.key -out server.crt --生成自签名证书

非root用户在80端口运行nginx的更多相关文章

  1. nginx反向代理 强制https请求 + 非root用户起80,443端口

    1. #强制使用https跳转 return 301 https://$server_name$request_uri;rewrite ^(.*)$ https://${server_name}$1 ...

  2. nginx 普通用户使用80端口启动nginx

    方法一: 依次执行如下命令 cd /usr/local/nginx/sbin/ chown root nginx chmod u+s nginx 优点是,方便简单,缺点是,既然sudo权限都不给了.这 ...

  3. 非root用户安装软件

    下面简要说一下Linux下非root用户安装软件的一般流程: 1. 获取源代码,一般是wget方式,ubuntu可以使用apt-get source来获取源代码. 2. 解压源代码,一般使用tar - ...

  4. Docker 为非root用户授权

    Docker 为非root用户授权: 当运行docker pull busybox时候,会提示sky用户无法调用docker. 那么应该把sky用户加入docker用户组,不过在添加的时候,又提示了如 ...

  5. Centos6.3 下使用 Tomcat-6.0.43 非root用户 jsvc模式部署 生产环境 端口80 vsftp

    一.安装JDK环境 方法一. 官方下载链接 http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260 ...

  6. linux系统非ROOT用户80端口不能启动tomcat问题的变通办法——通过Iptables端口转发

    2010-07-17 13:21:42 org.apache.tomcat.util.digester.SetPropertiesRule begin 警告: [SetPropertiesRule]{ ...

  7. 如何以非 root 用户将应用绑定到 80 端口-ssh 篇 » 社区 » Ruby China

    如何以非 root 用户将应用绑定到 80 端口-ssh 篇 » 社区 » Ruby China 如何以非 root 用户将应用绑定到 80 端口-ssh 篇

  8. 短网址资料-nginx非root用户启动-systemctl启动脚本-分割root权限

    https://www.cnblogs.com/aspnethot/articles/3492191.htmlhttps://www.cnblogs.com/aspnethot/articles/34 ...

  9. zzw原创_非root用户下安装nginx

    想自己安装nginx,又不相用到root用户. 非root用户下(本文为用户bdctool)来ngnix安装,要依赖pcre库.zlib库等, 1. 下载依赖包:下载地址 pcre(www.pcre. ...

随机推荐

  1. 【DWM1000】 code 解密5一ACHOR 第一次回家Main 函数

    instance_run(); if((instance_data[0].monitor == 1) && ((portGetTickCnt() - instance_data[0]. ...

  2. php 将两个数组进行相加 http://blog.csdn.net/lcstrive/article/details/38331487

    刚刚在网上看到一个提问. 数组Array ( [0] => 1 [1] => 2 )和数组Array ( [0] => 5 [1] => 6 ) 怎么让他们想加得出: 数组Ar ...

  3. nodejs koa2 框架中,mongoose update一条数据

    没有去看update和findOneAndUpdate的区别了,困扰了一晚上的问题,查了下官网,改成这样就好了 await model.user.findOneAndUpdate({ openIds: ...

  4. 读《31天学会CRM项目开发》记录1 - 认识软件开发

    今天闲来无事,心中又对软件开发充满了向往和憧憬.一直认为实践是检验真知的唯一标准,也是快速提升的绝密方法,是巩固基础加深基础的好去处.故在JD上搜了下软件开发,看到了这本<31天学会CRM项目开 ...

  5. 小甲鱼Python第四讲课后习题

    1while语句中,当条件为真时,它会一直循环下去,比如下面的例子,不过可以用Ctral + C来强制结束 while 'C': print("i love you") 2.观察打 ...

  6. poj3268 Silver Cow Party(两次dijkstra)

    https://vjudge.net/problem/POJ-3268 一开始floyd超时了.. 对正图定点求最短,对逆图定点求最短,得到任意点到定点的往返最短路. #include<iost ...

  7. 利用referer属性,记录百度搜索跳转参数

    从百度搜索结果跳转到指定链接前,百度会发送一些参数,可以利用referer属性,在本站访问时记录百度跳转来之前的一些参数. 利用百度跳转前参数,进行一些相关的seo优化. 目前所用到的一些参数说明如下 ...

  8. XSplit Quality, VBV-Buffer, VBV-Maxrate and Preset Settings

    XSplit uses the x264 encoder, so let's start off by saying that parameters mentioned in the title, w ...

  9. 什么是ip代理

    1.什么是代理IP(代理服务器),代理IP(代理服务器)有什么用? 代理服务器英文全称是(Proxy Server),也叫做代理IP,其功能就是代理网络用户去取得网络信息.形象的说:它是网络信息的中转 ...

  10. JavaAes加密操作工具类

    package com.king.weixin.util;import java.io.UnsupportedEncodingException;import java.security.Algori ...