Xuất / Triển khai trang web / trang Drupal thành tĩnh? (không có bộ nhớ cache)


12

Tôi tự hỏi nếu có một mô-đun hiện có có thể giúp đỡ trong chủ đề. Tôi không tìm kiếm một mô-đun bộ đệm (như Boost hoặc Varnish), nhưng là một cách để xuất toàn bộ trang web của tôi (hoặc chỉ một số trang nhất định) thành tĩnh. Ý tưởng là tôi muốn máy chủ web của tôi sẽ rất đơn giản và nhẹ nhàng và sẽ chỉ phục vụ các tệp tĩnh (html / css / js) - không có cơ sở dữ liệu về sản xuất, không có công cụ php sẽ được cài đặt trên máy chủ. Tất cả công cụ Drupal sẽ ở trên một máy chủ khác, việc xuất sẽ được thực hiện mỗi lần thêm / chỉnh sửa / thay đổi nút hoặc dạng xem và một tập hợp các tệp html mới sẽ được tạo trong cấu trúc thư mục. Các tệp này sau đó sẽ được sao chép vào trang sản xuất sẽ phục vụ luôn và chỉ các tệp tĩnh, không có .htaccess sẽ kiểm tra các yêu cầu nếu tệp tồn tại, v.v.

Có một mô-đun cho điều đó, hoặc một cách giải quyết mà điều này có thể đạt được với Drupal?

Cảm ơn

Câu trả lời:



2

Có một mô-đun Drupal 7 mới cung cấp chức năng này là Trình tạo tĩnh

Máy phát tĩnh:

Mô-đun tĩnh tạo một bản sao hoàn chỉnh của trang web của bạn ở dạng html bao gồm tất cả js, css, hình ảnh và các tài sản khác. Điều này sau đó có thể được chuyển để chạy trang web từ một máy chủ web đơn giản mà không cần PHP, MySQL hoặc memcache.

Những lợi ích:

  • Hiệu suất: Không có PHP, Mysql, v.v. trên trang web công khai. Tất cả mọi thứ là một tệp tĩnh nên nó được phục vụ rất nhanh.
  • Bảo mật: Phiên bản tĩnh của trang web không có cơ sở dữ liệu, tài khoản người dùng hoặc bất kỳ hình thức tương tác người dùng nào khác (ngoại trừ tích hợp bên thứ 3) nên an toàn hơn nhiều.
  • Độ tin cậy: Hầu hết các điểm thất bại thông thường đã biến mất. PHP, MySQL, memcache, véc ni, v.v. không còn là một phần của trang web tĩnh.

Hạn chế:

Do thực tế là không có cơ sở dữ liệu hoặc PHP đằng sau trang web, bất kỳ chức năng nào yêu cầu nó không thể được sử dụng. Thư viện phần 3 có thể điền vào hầu hết các chức năng cần thiết.

Một số phần không thể sử dụng là:

  • Không có bộ lọc lượt xem
  • Bình luận Drupal
  • Tìm kiếm Drupal.
  • Không có hình thức drupal.
  • Không có ngữ cảnh (không phải mô-đun) - có nghĩa là bạn không thể thay đổi nội dung trang dựa trên người dùng trừ khi bạn làm điều đó trong javascript.
  • Không có cuộc gọi lại ajax (ngoại trừ các yêu cầu GET được tạo trước)

Máy chủ DO hoạt động miễn là chúng được chuyển qua hook_pre process_pager.


1

GNU wget là một ứng dụng khách WWW có thể tải xuống các trang trên trang web của bạn và lưu trữ chúng cục bộ. Sử dụng -rtùy chọn để tải xuống các trang đệ quy (tức là theo liên kết đến các trang trên cùng một trang được tìm thấy trên trang hiện tại). Nó cũng có thể chuyển đổi URL tuyệt đối thành URL tương đối (sử dụng -ktùy chọn).


Vâng, tôi biết tùy chọn wget, theo cách đó thậm chí còn có ứng dụng khách WWW tốt hơn được gọi là HTTrack . Tôi tự hỏi liệu có một tính năng tích hợp nào cho Drupal có thể thêm một loại nút trong mỗi trang sẽ xuất trang sang phiên bản tĩnh không, v.v ... Cảm ơn
Maor Barazany

0

Tôi đang tìm kiếm một cái gì đó tương tự. Tôi đã tìm kiếm các mô-đun và tìm thấy các tùy chọn sau, nhưng chưa xem xét một trong số chúng:

Chúng tôi muốn sử dụng S3 hoặc một tệp tĩnh khác phục vụ dịch vụ CDN cho trang web của chúng tôi, vì vậy có thể một cái gì đó giống như sau sẽ hữu ích:

Một suy nghĩ khác là có thể tận dụng một khung bộ nhớ đệm như boost và thêm một cái gì đó để đẩy các tệp vào sản xuất khi nó lưu trữ chúng.


0

Bạn có thể sử dụng mô-đun Wget Tĩnh - Tạo HTML và Lưu vào FTP / Webdav , chính xác là những gì bạn muốn. Nguyên vẹn, tôi cũng đã triển khai kiến ​​trúc giống như bạn đã thảo luận ở trên.

Bạn có thể chọn nội dung để tạo HTML tĩnh, cũng có thể bỏ qua bằng các tham số truy vấn. Sau đó, phần thứ hai đến nơi bạn thực hiện việc tạo html tĩnh bằng ứng dụng WGET. Mô-đun tĩnh Wget này gần như bao gồm tất cả các tùy chọn cần thiết cho việc tạo dữ liệu tĩnh.

Không chỉ điều này, cuối cùng bên cạnh việc tải xuống html tĩnh đã tạo, bạn có tùy chọn lưu nó vào máy chủ FTP hoặc Máy chủ Webdav , một lần nữa hỗ trợ Xác thực hai yếu tố.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.