Nó sẽ không hoạt động với cách tiếp cận bạn đang thực hiện. Bạn đang nhầm ghi chú phát hành của chi nhánh 1.x với chi nhánh 2.x.
trong chi nhánh 1.x, có thể. Ghi chú phát hành là đủ và họ đã làm việc cho tôi.
Đối với chi nhánh 2.1+, vui lòng tham khảo nhận xét của @ Christina. Hỗ trợ đã được thêm vào 2.1 và chuỗi thảo luận cung cấp chi tiết.
Trích dẫn trả lời James Roper của
Trong chế độ dev, nó rất dễ dàng, chỉ cần:
JAVA_OPTS = -Dhttps.port = 9443 chơi chạy
Play sẽ tạo ra một khóa bí mật và tự chứng chỉ đã ký, trong đó rõ ràng là trình duyệt của bạn sẽ gặp phải cảnh báo màu đỏ lớn. Nó sẽ sử dụng lại đã tạo chứng chỉ tự ký cho mỗi lần chạy tiếp theo của Play, do đó bạn chỉ gặp lỗi trình duyệt một lần. Rõ ràng là chứng chỉ tự ký này có lẽ không phải là thứ bạn muốn trong sản xuất . Một điều quan trọng cần lưu ý là việc tạo chứng chỉ tự ký sẽ chỉ hoạt động trên các JVM sử dụng các thư viện bảo mật mặt trời (ví dụ: Oracle và OpenJDK, nhưng đáng chú ý nhất là IBM J9). Trên các JVM không sử dụng chúng, bạn sẽ nhận được NoClassDefFoundError khi cố gắng tạo chứng chỉ.
Trong sản phẩm (và cấu hình này cũng áp dụng cho dev), bạn định cấu hình nhiều giống như cách bạn định cấu hình SSL thông thường trong Java, qua thuộc tính của hệ thống. Dưới đây là một bản tóm tắt:
https.port - Cổng nên được sử dụng
https.keystore - Đường dẫn đến keystore chứa khóa riêng và giấy chứng nhận, nếu không muốn nói cung cấp tạo ra một keystore cho bạn
https.keyStoreType - Chìa khóa loại cửa hàng, mặc định là "JKS"
https.keyStorePassword - Các mật khẩu, mặc định là ""
https.keyStoreAlgorithm - cửa hàng thuật toán quan trọng, mặc định là các thuật toán nền tảng mặc định
https.trustStore - Tính năng này chưa được thực hiện đầy đủ, hiện nay nó sẽ luôn luôn sử dụng các cửa hàng tin tưởng JDK cho việc xác minh chứng chỉ phía khách hàng (mà bạn lon tất nhiên cấu hình cho dù bạn cung cấp giá trị cho số này hay không, trừ khi bạn chỉ định "noCA", trong trường hợp này, nó sẽ sử dụng một kho lưu trữ ủy thác tất cả chứng chỉ không có xác thực hoặc xác minh, . xác minh chứng chỉ phụ.
Đối với 2,0 chi nhánh, bạn cần phải đặt máy chủ khác trước mặt chơi tức là một trong hai apache/nginx/khác mà lắng nghe trên https và chuyển các yêu cầu để chơi trong http.
Hướng dẫn để thiết lập một máy chủ front-end có sẵn tại http://www.playframework.org/documentation/2.0.1/HTTPServer
Vì vậy, chạy máy chủ chơi của bạn trên một cổng. Yêu cầu apache forward từ domain.com đến 127.0.0.1:9443.
mẫu apache cấu hình
<VirtualHost *:443>
ServerAdmin [email protected]
ServerName example.com
ServerAlias *.example.com
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/ssl_access.log combined
ProxyPreserveHost On
# ProxyPass /excluded !
ProxyPass/http://127.0.0.1:9000/
ProxyPassReverse/http://127.0.0.1:9000/
# SSL Engine Switch:
# Enable/Disable SSL for this virtual host.
SSLEngine on
# A self-signed (snakeoil) certificate can be created by installing
# the ssl-cert package. See
# /usr/share/doc/apache2.2-common/README.Debian.gz for more info.
# If both key and certificate are stored in the same file, only the
# SSLCertificateFile directive is needed.
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
# Certificate Authority (CA):
# Set the CA certificate verification path where to find CA
# certificates for client authentication or alternatively one
<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
# MSIE 7 and newer should be able to use keepalive
BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown
</VirtualHost>
Hy vọng nó giúp.
Điều gì không hiệu quả? Vui lòng cung cấp thêm thông tin như stacktraces và tệp cấu hình của bạn. Ngoài ra bạn đã đọc tài liệu cho Play 1 và bạn đang cố gắng định cấu hình SSL cho Play 2, vì vậy, bạn đã đọc sai tài liệu –
@ Li-o Tôi đã cập nhật thêm thông tin. Bạn có tài liệu cập nhật cho Play2 về cấu hình https không? Bạn có thể chia sẻ điều đó với tôi không ~? Cảm ơn rất nhiều ~ – Chris