2008-09-03 29 views
16

Tôi đang chạy MAMP cục bộ trên máy tính xách tay của mình và tôi muốn thử nghiệm nhiều nhất có thể tại địa phương. Thật không may, kể từ khi tôi làm việc trên công cụ thương mại điện tử (PHP), tôi thường buộc ssl trong hầu hết các hình thức thanh toán và nó chỉ thất bại trên máy tính xách tay của tôi. Có cấu hình dễ dàng nào mà tôi có thể bị thiếu để cho phép "https" chạy dưới MAMP không? Xin lưu ý, tôi biết rằng tôi có thể định cấu hình Apache bằng tay, biên dịch lại PHP, v.v. nhưng tôi chỉ tự hỏi liệu có một cách dễ dàng hơn cho một lập trình viên lười biếng hay không.Kiểm tra các tệp HTTPS bằng MAMP

Cảm ơn

+2

Cập nhật cho MAMP v2 http://soundsplausible.com/2012/01/14/enable-https-in-mamp-2-0-5/ –

+0

Hướng dẫn định cấu hình MAMP 3.0.5 cho SSL tại đây: http://stackoverflow.com/a/25468843/149097 – Robert

Trả lời

10

LƯU Ý: startssl không còn được hỗ trợ sau khi phiên bản 2+ của MAMP. Bạn phải cập nhật các tệp cấu hình (httpd.conf) để bật ssl.

Bạn có thể sửa đổi phiên bản MAMP miễn phí để bật ssl theo mặc định rất dễ dàng. Một khi bạn đã thiết lập tất cả các phần SSL của apache và có nó làm việc để gọi apachectl startssl hoạt động, chỉ cần chỉnh sửa các tập tin

/Applications/MAMP/startApache.sh 

trong trình soạn thảo văn bản yêu thích của bạn và thay đổi bắt đầu lập luận để startssl và bạn sẽ có trình khởi chạy MAMP bắt đầu apache trong chế độ ssl cho bạn.

2

Hiện không có vẻ là một cách dễ dàng hơn, unless you're willing to buy MAMP Pro.

Theo như tôi biết, cách duy nhất để sử dụng SSL với MAMP là configure mod_ssl for Apache. mod_ssl được đóng gói với MAMP và tôi thấy cấu hình khá đơn giản. Lưu ý rằng có thể bạn sẽ phải bắt đầu Apache từ dòng lệnh để sử dụng nó:

/Applications/MAMP/bin/apache2/bin$ ./apachectl stop 
/Applications/MAMP/bin/apache2/bin$ sudo ./apachectl startssl 
+0

Liên kết đầu tiên đã chết, bạn có thể sửa hoặc xóa. Cảm ơn. – Kev

22

Đầu tiên, sao chép/Ứng dụng/MAMP.

mở /Applications/MAMP/conf/apache/httpd.conf
Bên dưới dòng
# LoadModule foo_module modules/mod_foo.so
bạn thêm
LoadModule ssl_module modules/mod_ssl.so
Hủy bỏ tất cả các dòng <IfDefine SSL> cũng như </IfDefine SSL>.

mở /Applications/MAMP/conf/apache/ssl.conf
Remove tất cả các dòng <IfDefine SSL> cũng như </IfDefine SSL>.
Tìm dòng định SSLCertificateFileSSLCertificateKeyFile, đặt nó vào
SSLCertificateFile /Applications/MAMP/conf/apache/ssl/server.crt SSLCertificateKeyFile /Applications/MAMP/conf/apache/ssl/server.key

Tạo mới thư mục/Applications/MAMP/conf/apache/ssl
Drop vào nhà ga một điều hướng đến thư mục mới
cd /Applications/MAMP/conf/apache/ssl
Tạo khóa riêng, cung cấp mật khẩu
openssl genrsa -des3 -out server.key 1024
Xóa mật khẩu
cp server.key server-pw.key
openssl rsa -in server-pw.key -out server.key
Tạo một yêu cầu ký giấy chứng nhận, nhấn để đổi lấy giá trị mặc định
openssl req -new -key server.key -out server.csr
Tạo một giấy chứng nhận
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

Khởi động lại máy chủ của bạn. Nếu bạn gặp bất kỳ sự cố nào, hãy kiểm tra tệp nhật ký hệ thống. Lần đầu tiên bạn truy cập https://localhost/, bạn sẽ được yêu cầu chấp nhận chứng chỉ.

+0

Điều này làm việc trên MAMP 3.0.7.3 với một số sửa đổi. –

Các vấn đề liên quan