nginx的安装与nginx降权+匹配php

安装nginx:

安装的插件的作用:

1.gcc 可以编译 C,C++,Ada,Object C和Java等语言(安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境)

2.pcre pcre-devel pcre是一个perl库,包括perl兼容的正则表达式库,nginx的http模块使用pcre来解析正则表达式,所以需要安装pcre库

3.zlib zlib-devel zlib库提供了很多种压缩和解压缩方式nginx使用zlib对http包的内容进行gzip,所以需要安装

4.openssl openssl-devel OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。

5.nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL

yum install gcc-c++

yum install -y pcre pcre-devel

yum install -y zlib zlib-devel

yum install -y openssl openssl-devel

nginx安装:

下载nginx:

wget http://nginx.org/download/nginx-1.22.1.tar.gz
​

解压:

tar -zvxf nginx-1.22.1.tar.gz
cd nginx-1.22.1

编译并指定安装位置:

./configure 默认文件夹就在/usr/local/nginx/

出现以下情况的解决办法:

1、./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.

[root@localhost nginx-1.22.1]# yum -y install pcre-devel

2、./configure: error: SSL modules require the OpenSSL library. You can either do not enable the modules, or install the OpenSSL library into the system, or build the OpenSSL library statically from the source with nginx by using --with-openssl=<path> option.

[root@localhost nginx-1.22.1]# yum -y install openssl openssl-devel

3、./configure: error: the HTTP image filter module requires the GD library. You can either do not enable the module or install the libraries.

[root@localhost nginx-1.22.1]# yum install gd gd-devel -y

使用make && make install

切换到/usr/local/nginx/sbin:

cd /usr/local/nginx/sbin

开启nginx

./nginx

nginx的命令:

nginx -s reload 修改配置后重新加载生效

nginx -s stop 快速停止

nginx nginx -s start 启动

nginx nginx -s quit 完整有序的停止

nginx nginx -v 查看nginx的版本

nginx -V 查看版本和nginx的配置选项

nginx -t -c /path/to/nginx.conf 测试nginx配置文件是否正确

nginx -s reopen 重新打开日志文件

nginx降权+匹配php:

nginx降权:使用普通用户启动Nginx(监牢模式)

  1. 为什么要让nginx服务使用普通用户

默认情况下,nginx的master进程使用的是root用户,worker进程使用的是nginx指定的普通用户,使用root用户跑nginx的master进程有两个大问题: (1)管理权限必须是root,这就使得最小化分配权限原则遇到问题 (2)使用root跑nginx服务,一旦网站出现漏洞,用户就可以很容易获得服务器的root权限

  1. 给nginx服务降权的解决方案

(1)给nginx服务降权,用inca用户跑nginx服务,给开发及运维人员设置普通账号,只要与inca同组即可管理nginx

(2)开发人员使用普通账户即可管理nginx服务及站点下的程序和日志 (3)采取项目负责制,即谁负责项目维护,出现问题就是谁负责

操作如下:创建普通用户

useradd -d /home/inca -m inca

passwd inca

我们切换到创建的普通用户尝试启动下nginx,发现失败了,我们采取措施,让普通用户也可以启动nginx

 

设置权限:

安装php php-fpm

php php-fpm

yum -y install php php-fpm php-gd php-mysql php-common php-pea

查看启动状态:

修改配置文件,找到如下图的配置代码,将注释去掉

vim conf/nginx.conf

创建index.php文件

[root@localhost html]# ls 50x.html index.html [root@localhost html]# vim index.php [root@localhost html]# [root@localhost html]# [root@localhost html]# [root@localhost html]# cat index.php

<?php phpinfo() ?>

普通用户启动nginx:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值