在DigitalOcean中为我的web应用安装HTTPS`https://XXX.XXX.XXX.XXX`没关系,但不适合`https://XXX.XXX.XXX.XXX:1234`
我学习了这些教程在DigitalOcean中为我的web应用安装HTTPS`https://XXX.XXX.XXX.XXX`没关系,但不适合`https://XXX.XXX.XXX.XXX:1234`,https,ssl-certificate,digital-ocean,self-signed,Https,Ssl Certificate,Digital Ocean,Self Signed,我学习了这些教程 ,没有步骤5 ,没有“(建议)修改未加密的虚拟主机文件以重定向到HTTPS”部分 我用http://XXX.XXX.XXX.XXX:1234 我现在拥有的 http://XXX.XXX.XXX.XXX:1234转到我的web应用程序。我需要SSL来访问网络摄像头 https://XXX.XXX.XXX.XXX在警告后进入Apache默认屏幕,这是预期的 https://XXX.XXX.XXX.XXX:1234转到的Chrome错误页此站点无法提供安全连接 我需要访问ht
- ,没有步骤5
- ,没有“(建议)修改未加密的虚拟主机文件以重定向到HTTPS”部分
- 我用
http://XXX.XXX.XXX.XXX:1234
转到我的web应用程序。我需要SSL来访问网络摄像头http://XXX.XXX.XXX.XXX:1234
在警告后进入Apache默认屏幕,这是预期的https://XXX.XXX.XXX.XXX
转到https://XXX.XXX.XXX.XXX:1234
的Chrome错误页此站点无法提供安全连接
https://XXX.XXX.XXX.XXX:1234
出了什么问题,我该怎么办
编辑,了解更多详细信息
- 将SSH连接到droplet中进行全新安装(Ubuntu LTS 16.04)
sshroot@xxx:xxx:xxx:xxx
adduser notalentgeek
usermod-aG sudo notalentgeek
sunotalentgeek
- 现在我在新创建的用户
上notalentgeek
- 进入“如何在Ubuntu 16.04中为Apache创建自签名SSL证书”教程
sudo openssl req-x509-nodes-days 365-newkey rsa:2048-keyout/etc/ssl/private/apache-selfsigned.key-out/etc/ssl/certs/apache selfsigned.crt
- 在形式上,我把所有的东西都称为“asd”(我头脑中任意的东西,就是这些东西)。除了“公共名称(例如服务器FQDN或您的名称)[]:”是指ip的
xxx:xxx:xxx
并等待一会儿sudo openssl dhparam-out/etc/ssl/certs/dhparam.pem 2048
sudo nano/etc/apache2/conf可用/ssl params.conf
- 复制粘贴教程中的设置(StackOverflow代码格式在这里不起作用!) 从…起 及 SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH SSLProtocol All-SSLv2-SSLv3 SSLHonorCipherOrder开启 暂时禁用预加载HST。您可以使用注释掉的标题行,其中包括 “预加载”指令,如果您理解其含义。 标头始终设置严格的传输安全性“最大年龄=63072000;包括子域;预加载” 标头始终设置严格的传输安全性“最大年龄=63072000;包括子域” 标题始终设置X帧选项拒绝 标题始终设置X-Content-Type-Options nosniff 需要Apache>=2.4 SSL压缩关闭 SSLSE:退票 SSLUS建立在 SSLStaplingCache“shmcb:日志/装订缓存(150000)” SSLOpenSSLConfCmd DHParameters“/etc/ssl/certs/dhparam.pem”
创建备份sudo cp/etc/apache2/sites available/default-ssl.conf/etc/apache2/sites available/default ssl.conf.bak
服务器管理员asd@asd.com 服务器名xxx:xxx:xxx:xxxsudo nano/etc/apache2/sites available/default ssl.conf
DocumentRoot /var/www/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined SSLEngine on SSLCertificateFile /etc/ssl/certs/apache-selfsigned.crt SSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.key <FilesMatch "\.(cgi|shtml|phtml|php)$"> SSLOptions +StdEnvVars </FilesMatch> <Directory /usr/lib/cgi-bin> SSLOptions +StdEnvVars </Directory> BrowserMatch "MSIE [2-6]" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0 </VirtualHost>
DocumentRoot/var/www/html ErrorLog${APACHE_LOG_DIR}/error.LOG CustomLog${APACHE\u LOG\u DIR}/access.LOG组合 斯伦金安 SSLCertificateFile/etc/ssl/certs/apache-selfsigned.crt SSLCertificateKeyFile/etc/ssl/private/apache-selfsigned.key 发展+标准 发展+标准 浏览器匹配“MSIE[2-6]”\ nokeepalive ssl不干净关闭\ 降级-1.0力响应-1.0
,调整防火墙。我只是把他们写的代码放在那里sudo ufw应用程序列表
sudo ufw状态
sudo ufw允许“Apache Full”
sudo ufw delete允许“Apache”
sudo ufw状态
sudo a2enmod ssl
sudo a2enmod头文件
sudoa2ensite默认ssl
sudo a2enconf ssl参数
,在我的案例中没有出现任何警告。但是,在教程中,它可能有警告。此命令返回,sudo apache2ctl configtest
语法正常
- 正如我前面提到的,测试服务器,
有效,但https://xxx.xxx.xxx.xxx
没有(5000是我的烧瓶端口)https://xxx.xxx.xxx.xxx:5000
sudo nano/etc/apache2/sites available/000 default.conf
- 添加
重定向永久“/”https://xxx.xxx.xxx.xxx:5000/“
结果是sudo apache2ctl configtest
语法正常
sudo systemctl重启apache2
- 这是我的烧瓶应用程序的启动
- 转到
,其中http://xxx.xxx.xxx.xxx:5000/
是DigitalOcean Droplet的IP,请成功访问我的web应用程序。但web应用程序需要访问网络摄像头和麦克风xxx.xxx.xxx.xxx
- 以下是其他教程
sudo apt get install libapache2 mod wsgi python dev
sudo a2enmod wsgi
cd/var/www
sudo mkdir FlaskApp
cd-FlaskApp
git克隆https://github.com/notalentgeek/my_app --深度1
cd我的应用程序
- 安装,
和pip3
。从virtualenv
运行仍然很好李>http
(格式化也不起作用!)sudo nano/etc/apache2/sites available/FlaskApp.conf