Tôi đang chạy hai máy chủ Node.js trên phiên bản Ubuntu EC2 đang nghe trên hai cổng khác nhau...
Ở phía trước, tôi có một máy chủ Apache hoạt động như một proxy để hướng khách hàng đến đúng ứng dụng dựa trên đường dẫn URL của họ.Tôi đang cố gắng để Apache hướng khách hàng tới http://127.0.0.1:1337/admin bất cứ khi nào họ đi đến đường dẫn /admin URL. Tuy nhiên, bất cứ khi nào tôi đến đó, trình duyệt sẽ đưa ra các lỗi sau.
ĐƯỢC http://myserver.com/admin/runtime~main.f9af2365.js net::ERR_ABORTED 404 (Không tìm thấy)
ĐƯỢC http://myserver.com/admin/main.2e76d653.js net::ERR_ABORTED 404 (Không tìm thấy)
Có vẻ như máy chủ không thể định vị tệp bản dựng cần thiết để chạy ứng dụng. Tuy nhiên, nếu tôi đi thẳng vào đường dẫn http://myserver:1337/admin thì nó hoạt động hoàn toàn tốt. Điều này dường như cho tôi biết rằng sự cố liên quan đến máy chủ proxy của tôi, tôi chỉ không chắc nó có thể là gì.
Chuyển proxy đến http://127.0.0.1:8080/ hoạt động hoàn toàn tốt.
Đây là tệp /etc/Apache2/sites-available/000-default.conf của tôi.
<VirtualHost *:80>
ServerName myserver.com
ServerAlias myserver.com
ProxyPreserveHost On
ProxyPass /admin http://127.0.0.1:1337/admin/
ProxyPassReverse /admin http://127.0.0.1:1337/admin/
ProxyPass / http://127.0.0.1:8080/
ProxyPassReverse / http://127.0.0.1:8080/
ErrorLog ${APACHE_LOG_DIR}/efh-app-web_error.log
# Possible values include: debug, info, notice, warn, error, crit,
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/efh-app-web_access.log combined
</VirtualHost>
Tôi đã thử nhiều hướng dẫn và diễn đàn khác nhau về các vấn đề tương tự như vấn đề này tuy nhiên dường như không có hướng dẫn nào giải quyết được vấn đề của tôi. Tôi còn khá mới đối với việc phát triển web và cấu hình máy chủ nên tôi xin lỗi nếu thiếu chi tiết. Vui lòng cho tôi biết nếu bạn cần thêm thông tin.