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

  普通用户是不允许使用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. Python贪婪算法

    贪婪算法 每步均选择局部的最优解,重复此过程,最终即得到全局的最优解 简而言之就是每步都采用最优解 优点: 简单易行 缺点: 并非在所有情况下都奏效 经典的问题: 背包问题 集合覆盖问题 贪婪算法下的 ...

  2. 开源评测系统hustoj-代码解读

    非常感谢zhblue贡献了这么美丽的代码 为了开发适合自己学校的oj,努力研读代码中,不断的百度,调试,测试 对ubutun,linux的各种文件系统,进程系统,c编程都学习了不少 给大家分享下,希望 ...

  3. PAT-A1004. Counting Leaves (30)

    根据家谱树从根结点开始输出每一层的叶子结点数量.使用BFS来解决.因为不会重复访问结点,所以不需要vis数组来标记是否访问过该结点. //#include "stdafx.h" # ...

  4. pygame-KidsCanCode系列jumpy-part13-改进跳跃

    这节研究下跳跃如何做得更自然,先看看之前的跳跃有什么问题,我们把settings.py里的初始化参数调整下: # starting platform # PLATFORM_LIST = [(5, HE ...

  5. [原创]AndroBugs_Framework Android漏洞扫描器介绍

    [原创]AndroBugs_Framework Android漏洞扫描器介绍 1 AndroBugs_Framework Android 漏洞扫描器简介 一款高效的Android漏洞扫描器,可以帮助开 ...

  6. TOML简介 (转) TOML的由来

    TOML的由来 配置文件的使用由来已久,从.ini.XML.JSON.YAML再到TOML,语言的表达能力越来越强,同时书写便捷性也在不断提升. TOML是前GitHub CEO, Tom Prest ...

  7. 使用mkbootfs制作ramdisk根文件系统

    span::selection, .CodeMirror-line > span > span::selection { background: #d7d4f0; }.CodeMirror ...

  8. Oralce sql (+) 补充

    Oracle  外连接 (1)左外连接 (左边的表不加限制)       (2)右外连接(右边的表不加限制)       (3)全外连接(左右两表都不加限制) 外连接(Outer Join) oute ...

  9. nginx配置实例

    user root root; worker_processes ; #error_log logs/error.log; #error_log logs/error.log notice; #err ...

  10. Could not load file or assembly 'System.Web.Mvc, Version=5.2.3.0...

    一.在Mvc 发布时出现如下错误: Could not load file or assembly 'System.Web.Mvc, Version=5.2.3.0... 出现错误的原因是 Mvc版本 ...