进入你要安装的目录 一般是/usr/local/
wget https://nginx.org/download/nginx-1.24.0.tar.gz
解压安装包:使用以下命令解压下载的Nginx安装包:
tar -zxvf nginx-1.24.0.tar.gz
-
在编译和安装Nginx之前,确保您的系统上已安装了必要的编译工具和依赖项。可以使用以下命令安装一些常见的依赖项:
sudo yum install gcc make openssl-devel pcre-devel zlib-devel
进入解压后的目录 也是就是nginx-1.24.0目录中执行命令
cd nginx-1.24.0
./configure
make
-
安装Nginx:编译完成后,运行以下命令来安装Nginx:
sudo make install
启动动Nginx:使用以下命令启动Ngin
/usr/local/nginx/sbin/nginx
您可以使用/usr/local/nginx/sbin/nginx -s stop来停止Nginx
/usr/local/nginx/sbin/nginx -s reload来重新加载配置。
验证安装:验证Nginx是否成功安装,您可以通过访问服务器的公共IP地址或域名来检查Nginx的欢迎页面
使用https ssl证书
先去腾讯或者阿里申请免费证书或者购买一个b并下载Nginx文件
先去解压的目录执行命令 ,也就是nginx-1.24.0 这个目录 不然会提示没有configure
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
make
在替换原有的nginx,需要先停掉原来的nginx程序,或者直接ps -elf | grep nginx查到相关程序,直接kill -9掉。
cp ./objs/nginx /usr/local/nginx/sbin/
进入nginx下面,所有生效的nginx配置在这里
里要注意,做完操作后,nginx本来的安装位置的你写的配置文件会到usr/local/nginx下面,你原先解压的nginx会失效
原有解压位置的不生效
而且在usr/local下也会生成一部分文件,不用管
-
下载申请好的证书文件
-
把 key 和crt的文件放到Nginx 根目录,也可以直接放到nginx/conf 目录下
-
在当前目录打开nginx配置文件
server {
#SSL 默认访问端口号为 443
listen 443 ssl;
#请填写绑定证书的域名
server_name cloud.tencent.com;
#请填写证书文件的相对路径或绝对路径
ssl_certificate cloud.tencent.com_bundle.crt;
#请填写私钥文件的相对路径或绝对路径
ssl_certificate_key cloud.tencent.com.key;
ssl_session_timeout 5m;
#请按照以下协议配置
ssl_protocols TLSv1.2 TLSv1.3;
#请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location / {
#网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
#例如,您的网站主页在 Nginx 服务器的 /etc/www 目录下,则请修改 root 后面的 html 为 /etc/www。
root html;
index index.html index.htm;
}
}
执行命令验证配置文件
nginx -t
通过命令重载
nginx -s reload
HTTP 自动跳转 HTTPS 的安全配置(可选
server {
#SSL 默认访问端口号为 443
listen 443 ssl;
#请填写绑定证书的域名
server_name cloud.tencent.com;
#请填写证书文件的相对路径或绝对路径
ssl_certificate cloud.tencent.com_bundle.crt;
#请填写私钥文件的相对路径或绝对路径
ssl_certificate_key cloud.tencent.com.key;
ssl_session_timeout 5m;
#请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
#请按照以下协议配置
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
location / {
#网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
#例如,您的网站主页在 Nginx 服务器的 /etc/www 目录下,则请修改 root 后面的 html 为 /etc/www。
root html;
index index.html index.htm;
}
}
server {
listen 80;
#请填写绑定证书的域名
server_name cloud.tencent.com;
#把http的域名请求转成https
return 301 https://$host$request_uri;
}
再以此执行命令
nginx -t
nginx -s reload
如果浏览器地址栏显示安全锁标识,则说明证书安装成功。如下图所示:
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/a8001509305c435ebf8c88a0ab40f22e.png)
vue react单页面应用刷新后 显示404
添加这个
location / {
try_files $uri /index.html;
}
完整配置如下 执行后记得 ./nginx -t和./nginx -s reload 就可以了
server {
#SSL 默认访问端口号为 443
listen 443 ssl;
#请填写绑定证书的域名
server_name lingyaoba.com;
#请填写证书文件的相对路径或绝对路径
ssl_certificate lingyaoba.com_bundle.crt;
#请填写私钥文件的相对路径或绝对路径
ssl_certificate_key lingyaoba.com.key;
ssl_session_timeout 5m;
#请按照以下协议配置
ssl_protocols TLSv1.2 TLSv1.3;
#请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
# location / {
#网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
#例如,您的网站主页在 Nginx 服务器的 /etc/www 目录下,则请修改 root 后面的 html 为 /etc/www。
root html;
# index admin/index.html admin/index.htm;
#index index.html index.htm;
#}
location / {
try_files $uri /index.html;
}
}