Điểm:-1

Nginx hoạt động với địa chỉ IP chứ không phải tên máy chủ

lá cờ ca

Tôi có Nginx đang chạy dưới dạng proxy ngược trước Apache Guacamole. Mọi thứ hoạt động tốt khi truy cập qua địa chỉ IP với XX.XX.XX.XX:8443. Tuy nhiên, tôi không thể truy cập qua server_name bằng "www.trainingserver1.com:8443". Đây là tệp mysite.template:

người phục vụ {
    nghe 80 default_server;
    tên máy chủ _;
    return 444 "Không có máy chủ nào hiện được cấu hình cho máy chủ được yêu cầu." ;
}

người phục vụ {
    nghe 443 ssl;
    server_name *.trainingserver1.com;

    ssl_certificate /etc/nginx/ssl/self.cert;
    ssl_certificate_key /etc/nginx/ssl/self-ssl.key;

    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    bật ssl_prefer_server_ciphers;
    ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
    ssl_ecdh_curve secp384r1;
    ssl_session_cache được chia sẻ:SSL:10m;
    tắt ssl_session_tickets;
    tắt ssl_dập ghim;
    tắt ssl_stapling_verify;
# trình giải quyết 8.8.8.8 8.8.4.4 hợp lệ=300 giây;
# trình giải quyết_thời gian chờ 5s;

    #charset koi8-r;
    #access_log /var/log/nginx/host.access.log chính;

    địa điểm / {
    proxy_pass http://guacamole:8080;
    tắt proxy_buffering;
    proxy_http_version 1.1;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Nâng cấp $http_upgrade;
    proxy_set_header Kết nối $http_connection;
    proxy_cookie_path /guacamole/ /;
    truy cập_đăng xuất;
    # cho phép tải lên dung lượng lớn (mặc định=1m)
    # 4096m = 4GByte
    client_max_body_size 4096m;
    }

    #lỗi_trang 404 /404.html;

    # chuyển hướng trang lỗi máy chủ sang trang tĩnh /50x.html
    #
    error_page 500 502 503 504 /50x.html;
    vị trí = /50x.html {
        gốc /usr/share/nginx/html;
    }
}

Đây là tệp nginx.conf:

người dùng nginx;
worker_processes 1;

error_log /var/log/nginx/error.log cảnh báo;
pid /var/run/nginx.pid;


sự kiện {
    công_nhân kết_nối 1024 ;
}


http {
    bao gồm /etc/nginx/mime.types;
    ứng dụng default_type/octet-stream;

    log_format chính '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log /var/log/nginx/access.log chính;

    gửi tệp trên;
    #tcp_nopush bật;

    keepalive_timeout 65;

    #gzip trên;

    bao gồm /etc/nginx/conf.d/*.conf;
}

Và cuối cùng đây là docker-compose.yml bắt đầu mọi thứ:

phiên bản: '3'

mạng:
  mạng guac:
    tài xế: cầu

dịch vụ:
  nước sốt bơ:
    hình ảnh: oznu/guacamole
    container_name: guacamole
    khối lượng:
      - postgres:/config
    khởi động lại: luôn luôn
    mạng:
      mạng guac:
    lộ ra:
      - 8080
    khởi động lại: luôn luôn

  nginx:
   khởi động lại: luôn luôn
   hình ảnh: nginx
   khối lượng:
   - ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro
   - ./nginx/mysite.template:/etc/nginx/conf.d/mysite.template
   - ./nginx/ssl:/etc/nginx/ssl
   cổng:
   - 8443:443
   ##   môi trường:
   ## - NGINX_HOST=nginx
   ## - NGINX_PORT=443
   liên kết:
   - nước sốt bơ
   mạng:
     mạng guac:
   # cài đặt openssl, tạo chứng chỉ tự ký và chạy nginx
   lệnh: /bin/bash -c "apt-get -y update && apt-get -y install openssl && openssl req -nodes -newkey rsa:2048 -new -x509 -keyout /etc/nginx/ssl/self-ssl. key -out /etc/nginx/ssl/self.cert -subj '/C=DE/ST=BY/L=Hintertupfing/O=Dorfwirt/OU=Theke/CN=www.createyourown.domain/emailAddress=docker@createyourown .domain' && cp -f -s /etc/nginx/conf.d/mysite.template /etc/nginx/conf.d/default.conf && nginx -g 'daemon off;'"

khối lượng:
  postgres:
    tài xế: địa phương

Chỉnh sửa:

Mọi thứ trong cấu hình Nginx hóa ra đều ổn. Đây là sự cố bản ghi DNS đơn giản. Khi bản ghi DNS đã được sửa thì máy chủ Nginx có thể truy cập được tại www.trainingserver1.com:8443.

Michael Hampton avatar
lá cờ cz
Bạn đã đăng tất cả các cấu hình của mình, nhưng bạn quên cho chúng tôi biết bạn đang gặp phải vấn đề gì. Cung cấp chi tiết cụ thể bao gồm các mục nhật ký.
djdomi avatar
lá cờ za
tôi nghĩ rằng bạn đang gặp sự cố như `server_name *.trainingserver1.com;` chứ không phải `server_name *.trainingserver1.com trainingsserver1.com;`. Điều này sẽ cho phép bạn sử dụng chính miền đó thay vì chỉ miền phụ của miền và cũng nhắc nhở , bạn muốn sử dụng proxy ngược cho 8443...
Jeremy Beale avatar
lá cờ ca
@djdomi Có vẻ như vấn đề giống nhau trong cả hai trường hợp. Tôi đã thử cả hai cách và tôi vẫn chỉ có thể truy cập máy chủ theo địa chỉ IP như XX.XX.XX.XX:8443 chứ không thể truy cập theo tên "www.trainingserver1.com:8443"
Jeremy Beale avatar
lá cờ ca
@MichaelHampton Bạn có thể tạo lại sự cố chỉ với những tệp này không? Cả 3 sẽ nằm trong cùng một thư mục. Sau đó chạy `docker-compose up -d` để bắt đầu nginx + guacamole. Cuối cùng, hãy thử truy cập máy chủ bằng địa chỉ IP hoặc server_name. Đó là nơi tôi gặp vấn đề.
lá cờ in
Thông báo lỗi thực tế mà bạn nhận được là gì? Độ phân giải tên của bạn có hoạt động không?
djdomi avatar
lá cờ za
@JeremyBeale NGINX nên biết như thế nào khi bạn KHÔNG đặt proxy ngược cho trường hợp này? và hơn nữa, để sử dụng *.trainingserver1.com, dns phải được đặt thành ký tự đại diện hoặc www.trainingserver1.com phải được đặt thành mục nhập DNS hợp lệ. - vì bạn không nói tên miền thật nên không dễ để giúp bạn - chúng tôi đang chạy ở đây trong một [Vấn đề X-And-Y](https://faq-database.de/doku.php?id=vi: vấn đề x và y)
Jeremy Beale avatar
lá cờ ca
@GeraldSchneider Thông báo thực tế từ trình duyệt web là DNS_PROBE_FINISHED_NXDOMAIN
lá cờ in
Vì vậy, bạn không có bản ghi DNS cho IP đó. Tạo một cái.
Jeremy Beale avatar
lá cờ ca
@GeraldSchneider Cảm ơn! Nó hoạt dộng bây giờ
Điểm:2
lá cờ in

Thông báo lỗi DNS_PROBE_FINISHED_NXDOMAIN cho biết rằng URL bạn đang cố truy cập không thể giải quyết được.

Bạn cần tạo bản ghi DNS cho URL đó.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.