今天在配置nginx的https访问上遇到一个小问题
当我配置完conf文件之后 使用nginx -s reload重启nginx之后使用https访问域名发现被拒绝访问
当时我想被拒绝访问可能是端口没有打开,于是去安全组件中查看,发现443端口是打开
当我在网上查看了大量的资料都没有提及该问题的和解决方式,我只能自己动手排除问题。
首先我将配置文件删得只剩监听443端口的sever 再次重启发现还是只能通过80端口访问,这时我产生了一个疑问。既然不是443端口没有打开,那么是不是nginx没有监听443端口
于是我查看了下端口监听情况 netstat -lntp
[root@izuf6hb0c8pq4vuut4nc2zz conf]# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN 2589/./redis-server
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 16884/java
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 14313/nginx: master
tcp 0 0 0.0.0.0:4369 0.0.0.0:* LISTEN 4962/epmd
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 2169/sshd
tcp 0 0 0.0.0.0:8443 0.0.0.0:* LISTEN 16884/java
tcp6 0 0 :::3306 :::* LISTEN 876/mysqld
tcp6 0 0 :::6379 :::* LISTEN 2589/./redis-server
tcp6 0 0 :::4369 :::* LISTEN 4962/epmd
tcp6 0 0 :::33060 :::* LISTEN 876/mysqld
发现nginx果然没有监听443端口 于是我将该master进程kill掉再次运行
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
再次查看端口监听情况
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 2169/sshd
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 19884/nginx: master
tcp 0 0 0.0.0.0:8443 0.0.0.0:* LISTEN 16884/java
发现在监听443端口
再次https访问域名成功
在此记录一下
今天在配置nginx的https访问上遇到一个小问题当我配置完conf文件之后 使用nginx -s reload重启nginx之后使用https访问域名发现被拒绝访问当时我想被拒绝访问可能是端口没有打开,于是去安全组件中查看,发现443端口是打开当我在网上查看了大量的资料都没有提及该问题的和解决方式,我只能自己动手排除问题。首先我将配置文件删得只剩监听443端口的sever 再次重启发现...
在nginx–>cert目录中建一个ssl目录,将上面的所有文件拷贝到ssl目录中
二、修改nginx.conf文件
在nginx.conf的http{}中填下如下内容
server {
listen 443;
server_name www.httpstest.com;
ssl on;
root html;
index index.html index.htm;
#这里的.pem/.key文件替换成自己对应的文件名
ssl_certificate cert/xxxx
基本架构是硬负载(ReadWhere)+ 软负载(Nginx)+ Tomcat集群,现在的问题是SSl证书要配置在哪里,直接配置在硬负载上?还是分别配置在Nginx和Tomcat上?还是其他的配置方法呢?
首先在硬负载上配置放弃了,然后通过在网上查找资料,发现可以只在Nginx上配置证书,就是说Nginx接入使用Https,而Nginx与Tomcat之间使用Http进行衔接,这样就游了一个整体思路。
关于SSL证书
关于SSL证书这里简单进行介绍,也是因为项目需要,进
1_root_bundle.crt;
2_domainname.com.key。
注:这三个证书文件都在文件夹for Nginx.zip中,例:1_root_bundle.crt是根证书链(公钥),2_ domainname.com.key为私钥。
(其中:证书公钥、私钥文件一般以您的域名命名;证书后缀名crt和cer的性质是一样的)。
二、Nginx证书代码修改
1.打开Nginx安装目录下conf目录中的nginx.conf文件,阿里云服务器在/alidata/server/ngin
我买了服务器、域名、和申请的证书。什么都配置好之后,但是https 无法正常访问。http 可以正常访问。
详细问题地址:
腾讯云配置了ssl 证书,浏览器却无法访问?
这个问题折磨了我整整两天,我将nginx 配置换了一遍有一遍,确认配置是没有错的,都是从安装指导上copy 下来的。并且telnet 443 端口也可以通。所以觉得没有问题。
然后怀疑是证书的问题,...
分享下我是如何一步步在Nginx上配置SSL的。首先,确保安装了OpenSSL库,并且安装Nginx时使用了–with-http_ssl_module参数。
初学者或者菜鸟建议使用LNMP进行一键安装。
生成证书:进入要生成证书的目录cd /usr/local/nginx/conf
使用openssl创建创建服务器私钥,输入相应提示的信息
代码如下:openssl genrsa -des3 -out server.key 1024
创建证书签名请求(Certificate Signing Request (CSR))
代码如下:openssl req -new -key server.ke
server_name xxx.xxx.cn;
ssl_certificate ssl/server.pem;
ssl_certificate_key ssl/server.key;
......
在启用新的域名的时候,只需要另启一个server配置文件,丢在vhosts目录下
1、下载ssl证书,里面有XXX.pem,XXX.key两个文件
2、找到nginx的nginx.conf文件,我的是自动安装的一般在、/etc/nginx/nginx.conf里面。
3、打开nginx.conf文件,找到以下代码
server {
listen 443 ssl;
server_name
openssl req -new -newkey rsa:2048 -nodes -keyout example.com.key -out example.com.csr
该命令会为example.com生成一个2048位RSA密钥,并生成一个名为example.com.csr的证书签名请求文件,其中包含将用于生成证书的信息。
2. 购买/颁发SSL证书。
如果我们需要向第三方购买/颁发证书,则需要完成所有必需的步骤,并最终获得SSL证书。
3. 将证书和私钥文件上传到服务器。
将生成的证书和私钥文件上传到之前提到的路径/etc/ssl/private中。
4. 配置Nginx以支持SSL访问。
在Nginx配置文件中添加以下行:
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/ssl/private/example.com.crt;
ssl_certificate_key /etc/ssl/private/example.com.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
该配置将监听SSL端口443,指定服务器的名称以及SSL证书和私钥的路径。
5. 重启Nginx。
最后,重新启动Nginx服务以使更改生效。
这些步骤应该使我们能够在Linux服务器上启用SSL访问,并获得有效的SSL数字证书。
Could not get JDBC Connection; nested exception is java.sql.SQLException: Unknown initial character
14911
CSDN-Ada助手:
linux服务器nginx配置ssl证书 监听443端口之后访问不到 以及使用reload没有改变监听端口的问题
KY Studio:
关于nginx 配置的location 映射 获取资源404问题
蘭のテ一マ:
关于nginx 配置的location 映射 获取资源404问题
MoozLee_lcl:
关于nginx 配置的location 映射 获取资源404问题
森林茂密溪水如流: