【nginx】手动安装及ssl配置

nginx安装及配置

    • 安装
      • 安装依赖
      • 安装nginx
    • 配置
      • 注意事项
      • 测试
      • 注意事项
    • 配置ssl(https)
      • 步骤
      • 测试

推荐!!!另一种安装方式:linux在线安装nginx

安装

安装依赖

yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

安装nginx

//切到该文件夹
cd /usr/local/src
//下载tar包,若无法下载 http://nginx.org/下载后传到服务器
wget http://nginx.org/download/nginx-1.13.7.tar.gz
//解压
tar -xvf nginx-1.13.7.tar.g
//切到文件夹
cd  nginx-1.13.7
//执行命令
./configure
//执行make命令
make
//执行make install命令
make install
//切到安装好的位置
cd /usr/local/ngnix/sbin
//启动
./nginx
//查看进程命令
ps -ef | grep nginx
  • 成功后如图所示

在这里插入图片描述

  • 可以将路径增加到/etc/profile文件,这样即可在全局使用nginx命令,而不用切换到 /usr/local/ngnix/sbin
    !改好后关掉再打开即可生效
    红框内为新增内容nginx

配置

主要配置在/usr/local/nginx/conf目录下的nginx.conf文件,如下图所示

  1. 最好修改一下端口
  2. 修改root为放自己项目的地址
  3. 重新加载配置 nginx -s reload
  4. 重新启动 nginx -s reopen

【nginx】手动安装及ssl配置_第1张图片

注意事项

  • location下的root为相对位置,root地址+location后的‘/’组成完整的地址 -->..../demo/
  • 如果像我一样将项目放在root文件夹下,会出现403权限问题,需要修改该文件第一行的#user nobody去掉注释并修改为为user root

测试

比如使用vue打包完成,将dist文件夹内的所有内容放到root对应的地址。
打开浏览器,输入http:ip(服务器地址):[修改的端口号]

注意事项

在nginx.conf文件内复制多个server配置,修改端口listen和项目地址location,然后重新加载配置nginx -s reload和重启 nginx -s reopen注意一定要在服务器上确保端口已开,否则配置正确也无法访问成功

配置ssl(https)

如果你还需要配置ssl,不用重新安装nginx

步骤

1.可以从阿里云购买证书,并下载XX.pem和XX.key文件
2.在配置目录/usr/local/nginx/conf下新建文件夹cert,并将XX.pem和XX.key文件放入
【nginx】手动安装及ssl配置_第2张图片
3.在修改nginx.conf之前和重新加载和启动之前,一定要先进行安装with-http_ssl_module模块,否则会报nginx:[emerg]unknown directive ssl错误
安装with-http_ssl_module模块需要先切换到安装目录cd /usr/local/src/nginx-1.13.7

  • 添加ssl模块

  • ./configure --with-http_ssl_module

  • 编译,一定不要用make install

  • make

  • 把编译好的文件替换之前的,可先备份一下原来的文件

  • cp /usr/local/nginx/sbin/nginx /usr/local/nginx

  • 新的 nginx 覆盖旧的,询问是否覆盖时输入y,此步骤若有错误可试一下nginx -s quit

  • cp objs/nginx /usr/local/nginx/sbin/nginx

  • 查看一下是否安装成功

  • ./usr/local/nginx/sbin/nginx -t

  • nginx -s quit过,记得切换到cd usr/local/nginx/sbin重启

  • ./nginx

  • 修改nginx.conf配置

 server {
       listen       443;
       server_name  a.b.com; // 这里就是之前注册证书时的域名
       ssl on;
       root html;
       index index.html index.htm;

       ssl_certificate      cert/刚刚复制的文件名称.pem;
       ssl_certificate_key  cert/刚刚复制的文件名称.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;
       }
    }
  • 重新加载配置
  • nginx -s reload
  • 重启
  • nginx -s reopen

测试

浏览器打开a.b.com,看到欢迎界面,表示配置成功
若要修改成自己的项目,则修改nginx.conf文件server 443的 location
【nginx】手动安装及ssl配置_第3张图片

你可能感兴趣的:(运维,nginx安装配置,前端项目部署)