centos7配置Nginx

Posted wormflesh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centos7配置Nginx相关的知识,希望对你有一定的参考价值。

配置nginx


一、配置 EPEL源

sudo yum install -y epel-release
sudo yum -y update

二、安装Nginx

sudo yum install -y nginx

默认的网站目录为: /usr/share/nginx/html

默认的配置文件为:/etc/nginx/nginx.conf

自定义配置文件目录为: /etc/nginx/conf.d/


三、操作Nginx

#启动 Nginx
systemctl start nginx
#停止Nginx
systemctl stop nginx
#重启Nginx
systemctl restart nginx
#查看Nginx状态
systemctl status nginx
#启用开机启动Nginx
systemctl enable nginx
#禁用开机启动Nginx
systemctl disable nginx

四、Https 安装ssl证书

文件内容

  • 1_cloud.tencent.com_bundle.crt 证书文件
  • 2_cloud.tencent.com.key 私钥文件

1、拷贝证书到nginx

​ 将已获取到的 1_cloud.tencent.com_bundle.crt 证书文件和 2_cloud.tencent.com.key 私钥文件从本地目录拷贝到 Nginx 服务器的 /usr/local/nginx/conf 目录(此处为 Nginx 默认安装目录,请根据实际情况操作)

2、编辑测试文件

vim /usr/local/nginx/conf/nginx.conf 
server {
    #SSL 访问端口号为 443
    listen 443 ssl; 
 #填写绑定证书的域名
    server_name cloud.tencent.com; 
 #证书文件名称
    ssl_certificate 1_cloud.tencent.com_bundle.crt; 
 #私钥文件名称
    ssl_certificate_key 2_cloud.tencent.com.key; 
    ssl_session_timeout 5m;
 #请按照以下协议配置
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 
 #请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; 
    ssl_prefer_server_ciphers on;
    location / {
    #网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
        root html; 
        index  index.html index.htm;
    }
}

验证配置文件问题(在 Nginx 根目录下)。

./sbin/nginx -t

3、HTTP 自动跳转 HTTPS 的安全配置

​ Nginx 支持 rewrite 功能。若您在编译时没有去掉 pcre,您可在 HTTP 的 server 中增加 return 301 https://$host$request_uri;,即可将默认80端口的请求重定向为 HTTPS。修改如下内容:

server {
listen 443 ssl;
#填写绑定证书的域名
server_name cloud.tencent.com; 
#证书文件名称
ssl_certificate  1_cloud.tencent.com_bundle.crt; 
#私钥文件名称
ssl_certificate_key 2_cloud.tencent.com.key; 
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
   #网站主页路径。此路径仅供参考,具体请您按照实际目录操作。  
   root html;
  index index.html index.htm;
}
}
server {
listen 80;
#填写绑定证书的域名
server_name cloud.tencent.com; 
#把http的域名请求转成https
return 301 https://$host$request_uri; 
}

五、测试

报错

修改 /usr/share/nginx/html中文件,访问报403错误


解决方法

打开配置文件 /etc/nginx/nginx.conf

user nginx改为user root

以上是关于centos7配置Nginx的主要内容,如果未能解决你的问题,请参考以下文章

linux学习:Nginx--常见功能配置片段与优化-06

Nginx——Nginx启动报错Job for nginx.service failed because the control process exited with error code(代码片段

CentOS7安装及配置Nginx服务

centos7配置Nginx

Nginx——Nginx的默认配置语法(Centos7通过yum方式安装)

centos7下keepalived+nginx配置