V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  programV2  ›  全部回复第 60 页 / 共 75 页
回复总数  1491
1 ... 56  57  58  59  60  61  62  63  64  65 ... 75  
@alect 请问 docker 版本链接可以分享下吗? 谢谢
@miyuki
@Nangle
@gamexg
@Love4Taylor
@tayuo
@dndx 大佬们, 请问为什么我访问 http://example.com/ 会自动 301 跳转到 https://www.example.com/
, 但是加个 s 访问 https://example.com/ 却不会跳转 , 试了多台电脑排除本地原因, 谢谢!

我用 Cloudflare CDN ,开了 full ssl,
Nginx conf 部分设置如下

server {
server_name example.com;
return 301 https://www.$server_name$request_uri;
}

server {
listen 443;
ssl on;
ssl_certificate /etc/ssl/com.pem;
ssl_certificate_key /etc/ssl/com.key;

server_name www.example.com;
root /var/www/html;
2020-02-26 00:50:54 +08:00
回复了 zfish 创建的主题 程序员 SEO 的未来在哪里?(分享一段失败的 SEO 项目经历)
@opengps
@zfish
@pango
@zfish 大佬们请问你这截图是在 https://search.google.com/search-console/ 这里看的吗?
@Love4Taylor 谢谢 觉得奇怪, 因我刚部署完成的时候看到的"颁发给"字段是我的域名, 并且有效期 15 年, 前几天重启了下服务器之后就变成只显示 sni cloudflaressl com 的证书
@tayuo 谢谢
@dndx ![捕获 c.PNG]( https://i.loli.net/2020/02/25/R5qsvKijd69Zlah.png) 这是截图 谢谢
@dndx 使用的 CLOUDFLARE CDN, 并且服务器也是用 cloudflare Origin CA 15 年免费证书,
之前已经上传启用证书成功, web 端也显示颁发给 我的域名, 但是前几天重启了下服务器之后就变成只显示 sni
cloudflaressl com 的证书 , 并且 客户端看到的免费证书也没有我的域名
使用的 CLOUDFLARE CDN, 并且服务器也是用 cloudflare Origin CA 15 年免费证书,
之前已经上传启用证书成功, web 端也显示颁发给 www.xxx.com, 但是前几天重启了服务器之后就变成只显示 sni.cloudflaressl.com 的证书 , 有 V 友碰到这种情况的吗, 谢谢
@sleepm V 友您好有两个疑惑想向您请教:
我 docker-compose.yml 设置 nginx 容器
ports:
- 80:80
-443:443

发现主机上监听的只有 IPV6 的端口,
root@abc:~# netstat -tnlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:42303 0.0.0.0:* LISTEN 2835/containerd

tcp6 0 0 :::443 :::* LISTEN 2483/docker-proxy

tcp6 0 0 :::80 :::* LISTEN 2471/docker-proxy

疑惑:
1. 我进 nginx 容器内执行 netstat -tnlp, 发现 ipv4 的 80 和 443 都在监听,
但是我在 nginx.conf 配置文件中只设置 listen 443;为什么还会监听 80 的端口呢?? 是因为上面的 docker-compose.yml 中已经开启所以没法在 nginx.conf 配置中关闭 80 端口吗?

2.我用 v4 地址还可以访问主机网站, 据V友讲是内核默认会把 v4 过来的地址转换成特殊的 v6 地址, 但是我 nginx 容器内只监听 v4 的地址,那是不是说系统还得把这个特殊的 v6 地址再次转换成 v4 地址才能与容器内的 nginx 服务通信?
@sleepm 谢谢🙏, 我上面手抖写錯了,drupal 容器=php 容器(镜像是 drupal + php); 好的,我只要改 php 容器内的 www-data 用户 uid
@dndx 抱歉,请问你说的" listen [::]:443 "是监听 V6 的 443 端口吗?" listen 443 本来就是两个都监听的"意思是 v4 和 v6 的 443 都监听 ?

但我的问题是 nginx.conf 配置文件中只设置了 listen 443;为什么还会监听 80 的端口呢???
@merryfreespace @gefranks
@sleepm
@sleepm 非常感谢几位热心 V 友🙏🙏

我 docker-compose.yml 部分设置如下
version: "3"
services:
nginx:
image: nginx:$NGINX_TAG
container_name: "${PROJECT_NAME}_nginx"
ports:
- $NGINX_PORTA
volumes:
- "./drupal/web:/var/www/html"
- "./drupal/logs/nginx:/var/log/nginx"
- "./drupal/nginx/nginx.conf:/etc/nginx/conf.d/default.conf"
- "./drupal/ssl:/etc/ssl"
depends_on:
- php

drupal:
image: drupal:$DRUPAL_TAG
container_name: "${PROJECT_NAME}_drupal"
volumes:
- "./drupal/web:/var/www/html"
- "./drupal/mysql:/var/lib/mysql"
restart: always
depends_on:
- mysql


之前安装网站时赶时间运行了 chmod -R 777, 现在想把主机上挂载的网站源码文件夹./drupal/web 的 owner 改为 www-data 用户, 我进 nginx 容器发现没有 www-data 这个用户名,请问 nginx 服务访问 /drupal/web 用的是哪个用户名?



P.S. 我 主机建了 3 个 docker 容器:Nginx,Drupal, MySQL, 其中 Nginx 和 Drupal 容器都是挂载到 ./drupal/web , 这样我是不是需要同时改这两个容器的 uid gid? 我现在在主机新建普通用户 foo: useradd -m -s -u 2005 -g 2005 foo , 还要分别进这两个容器执行下列命令吗? 但 nginx 容器发现没有 www-data 这个用户名

usermod -u 2005 www-data
groupmod -g 2005 www-data
find / -user 82 -exec chown -h www-data {} \;
find / -group 82 -exec chgrp -h www-data {} \;
@programV2 抱歉,是不是我的表达有问题? 你就的`listen [::]:443`不是监听 V6 的 443 端口吗? 但我的问题是 nginx.conf 配置文件中只设置 listen 443;为什么还会监听 80 的端口呢???
1 ... 56  57  58  59  60  61  62  63  64  65 ... 75  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1640 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 35ms · UTC 16:29 · PVG 00:29 · LAX 09:29 · JFK 12:29
Developed with CodeLauncher
♥ Do have faith in what you're doing.