Điểm:0

Apache, Docker, Proxy - thay đổi địa chỉ trong trình duyệt thành 127.0.0.1

lá cờ tr

Tôi có máy chủ Apache với một vài trang web.

Tôi muốn chạy trên bộ chứa docker máy chủ này với Mercure và chia sẻ nó trên Internet.

Tôi đã tìm thấy thông tin trên Internet rằng tôi cần sử dụng ProxyPass và ProxyPassReverse trong cấu hình vhost.

Cấu hình vhost của tôi:

<VirtualHost *:80>
    ServerName tomaszf.pl
    ServerAlias www.tomaszf.pl

    DocumentRoot /var/www/html/mercurytest/public

    DirectoryIndex /index.php

    <Directory /var/www/html/mercurytest/public>
        AllowOverride None
        Order Allow,Deny
        Allow from All

        FallbackResource /index.php
    </Directory>

    <FilesMatch \.php$>
        SetHandler "proxy:unix:/var/run/php/php8.0-fpm.sock|fcgi://localhost"
    </FilesMatch>

    <Directory /var/www/html/mercurytest/public/bundles>
        DirectoryIndex disabled
        FallbackResource disabled
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/tomaszf.pl.error.log
    CustomLog ${APACHE_LOG_DIR}/tomaszf.pl.log combined
 
    RewriteEngine on
    RewriteCond %{SERVER_NAME} =www.tomaszf.pl [OR]
    RewriteCond %{SERVER_NAME} =tomaszf.pl
    RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

<VirtualHost *:443>
    ServerName tomaszf.pl
    ServerAlias www.tomaszf.pl

    DocumentRoot /var/www/html/mercurytest/public

    DirectoryIndex /index.php

    <Directory /var/www/html/mercurytest/public>
        AllowOverride None
        Order Allow,Deny
        Allow from All

        FallbackResource /index.php
    </Directory>

    <FilesMatch \.php$>
        SetHandler "proxy:unix:/var/run/php/php8.0-fpm.sock|fcgi://localhost"
    </FilesMatch>

    <Directory /var/www/html/mercurytest/public/bundles>
        DirectoryIndex disabled
        FallbackResource disabled
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/tomaszf.pl.error.log
    CustomLog ${APACHE_LOG_DIR}/tomaszf.pl.log combined

    SSLCertificateFile /etc/letsencrypt/live/tomaszf.pl/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/tomaszf.pl/privkey.pem
    Include /etc/letsencrypt/options-ssl-apache.conf

    ProxyPass /mercure http://127.0.0.1:8099/
    ProxyPassReverse /mercure http://127.0.0.1:8099/
</VirtualHost>

Bộ chứa Docker được khởi chạy bằng lệnh:

docker chạy \
    -e SERVER_NAME=':80' \
    -e MERCURE_PUBLISHER_JWT_KEY='!ChangeMe!' \
    -e MERCURE_SUBSCRIBER_JWT_KEY='!ChangeMe!' \
    -p 8099:80 \
    -e CORS_ALLOWED_ORIGINS='https://tomaszf.pl' \
    -e GỠ LỖI=1 \
    -e ALLOW_ANONYMOUS=1 \
    chạy dunglas/mercure caddy -config /etc/caddy/Caddyfile.dev

Vấn đề: Khi bạn cố gắng vào trang web tomaszf.pl/mercure, địa chỉ trong trình duyệt sẽ tự động được thay đổi thành 127.0.0.1 và trang web không hoạt động.

Tôi phải thay đổi gì trong cấu hình?

Điểm:0
lá cờ vn

Tôi đã triển khai cấu hình tương tự, ngoại trừ chứng chỉ tự ký và sửa đổi tệp máy chủ của tôi thành điểm tomaszf.pl đến 127.0.9.1 và tôi là không phải được chuyển hướng ra khỏi máy chủ đó.

phản ứng cong

Điều đó chứng tỏ rằng phiên bản mới nhất của container dunglas/mercure: mới nhất từ dockerhub đang chuyển hướng chính xác. Nếu bạn gặp sự cố với điều này, hãy xác minh rằng bạn có hình ảnh mới nhất (hash c10597bdf077 cho AMD64 tại thời điểm viết).

Vấn đề khác mà bạn sắp gặp phải là mô-đun caddy chữa bệnh không làm dường như hỗ trợ phục vụ mô-đun ở bất kỳ đâu trừ thư mục gốc của Máy chủ lưu trữ (tức là tomaszf.pl chỉ có, không phải tomaszf.pl/mercure ). Đây dường như là một quyết định thiết kế dựa trên việc sử dụng /.nổi tiếng tiền tố (Tài liệu mô-đun Mercure Caddy https://caddyserver.com/docs/modules/http.handlers.mercure)

Tôi khuyên bạn nên sử dụng tên miền phụ (có lẽ mercure.tomaszf.pl) và phục vụ mô-đun từ đó, thay vào đó, tại thư mục gốc.

Đă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.