我前段代码和后端代码放在同一个服务器
前端是nginx服务器运行的,配置了https
后端是node写的,没有配置https,我后端端口3000,我请求的地址是https://接口地址,请求不到
但是我在后端也配置了https的话,两个接口端口号就相同了
www.地址.com (前端主页)
www.地址.com:3000 (后端接口)
该怎么解决,怎么两个都改为https访问
1、首先,我们根据阿里给出的教程,我们需要把下载的.key和.pem文件上传到服务器上。先找到nginx的安装目录。
这里注意下,我本来是通过:
ps -ef | grep nginx
返回结果包含安装目录
root 2662 1 0 07:12 ? 00:00:00 nginx: master process /usr/sbin/nginx
但是在后面才发现,这个只是nginx程序所在的位置,我们要找的是nginx配置文件所在的目录。在我这里是:/etc/nginx
2、在nginx目录下新建cert目录,把证书拷贝进去
1、创建cert
mkdir cert;
2、通过ftp把证书文件传上去
3、赋予权限
chmod 777 -R cert;
3、修改nginx的配置,这里注意下,https用的是443端口,而不是咱们http的80端口:
server {
listen 443;
server_name aaa.bbb.com(你的域名);
root 你的项目目录;
index index.php index.html;
ssl on;
ssl_certificate cert/214482258820159.pem;
ssl_certificate_key cert/214482258820159.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;
...
4、修改完成之后,重启nginx即可。重启之后,我们通过https://xxxx.com即可访问自己的项目。