Cách định cấu hình D7 để các tệp được tải lên một máy chủ khác


9

Trong Drupal 7, đường dẫn mặc định để tải lên được đặt trong các tùy chọn hệ thống Tệp trong đường dẫn hệ thống tệp Công khai. Có thể chỉ định một máy chủ khác trong đường dẫn này? Tôi có một trang web Drupal 7 mà chúng tôi đang phát triển sẽ có khoảng 20k tệp và tôi muốn đặt chúng trên một máy chủ khác với máy chủ web. Nếu không thể chỉ định một máy chủ khác với bất kỳ mô-đun đóng góp nào của người dùng có thể xử lý việc này?


Bạn đã hoàn thành nhiệm vụ này.
Cindrella

Bất kỳ mô-đun liên quan đến điều này?
Dushyant Joshi

Câu trả lời:


8

Tôi làm một cái gì đó rất giống nhau. Nếu bạn đang chạy cơ sở hạ tầng có khả năng cấu hình này, tôi khuyên bạn nên cung cấp chia sẻ trên máy chủ tệp của mình (Linux hoặc Windows Server) và chỉ gắn nó vào đường dẫn tệp công khai của Drupal, bất cứ nơi nào thư mục chung dành cho trường cụ thể đó.

Ví dụ: lấy cấu hình Samba sau (được tìm thấy trong /etc/samba/smb.conf nếu bạn chạy máy chủ tệp dựa trên Linux). Điều này xuất hiện ở phần cuối của tệp sau tất cả các tùy chọn cấu hình khác:

[data]
    comment = Data directory
    browseable = yes
    writable = yes
    valid users = "@DOMAIN\Domain Admins"
    path = /data
    create mask = 0664
    force create mode = 0664

Các valid users cú pháp có nói "cho phép nhóm này của người sử dụng" để truy cập vào phần này. Trong trường hợp này, chúng tôi đang sử dụng PAM để kết nối máy chủ tệp của chúng tôi với Active Directory và nhóm cụ thể này được cung cấp khi bạn kết nối hai máy chủ.

Trên máy chủ web của bạn, bất cứ điều gì đang lưu trữ trang web Drupal của bạn, hãy điều hướng đến thư mục tệp công khai. Nói trường cụ thể bạn cần để làm cho các tệp có sẵn là công khai: // field_with_20k_files /. Bạn sẽ chạy một lệnh mount tương tự như vậy:

sudo mount -t cifs -o user=domainadministrator,uid=domainadministrator,gid=apache //fileserver/data /path/to/field_with_20k_files

Tôi đã gidthiết lập bất cứ quy trình nào đang chạy máy chủ web để nó có quyền truy cập vào thư mục đó. Nhiều khả năng bạn sẽ muốn đảm bảo rằng dịch vụ web đã đọc và ghi quyền truy cập vào máy chủ web thực sự có khả năng tải lên các tệp.


Tất cả các câu trả lời đều tốt nhưng vì chúng tôi có quyền kiểm soát cơ sở hạ tầng, câu trả lời này là dễ nhất và đơn giản nhất theo quan điểm của Drupal để thực hiện vì chúng tôi không phải cài đặt bất kỳ mô-đun mới nào. Chúng tôi đang ở trong môi trường Windows nhưng cảm ơn vì các bước cực kỳ chi tiết được cung cấp!
John81

Trong trường hợp đó, về cơ bản bạn có thể bỏ qua cấu hình Samba và chỉ cần chạy lệnh mount trực tiếp bằng tên người dùng và mật khẩu có thiết lập quyền Windows phù hợp. Hãy cho tôi biết nếu bạn có bất kỳ câu hỏi.
Lester Peabody

Tôi đang cố gắng để làm điều này, nhưng tôi có vấn đề. Trung tâm dịch vụ của tôi đã có thể gắn máy chủ Windows, nhưng chúng tôi không biết phải đi đâu từ đó. Tôi đã cố gắng sử dụng / mount_file_path làm thư mục tệp công khai, nhưng tôi gặp một lỗi mà nó không tồn tại và không thể được tạo.
nmillin

5

Ngoài ra một tùy chọn tuyệt vời sẽ là API lưu trữ . Đây là một trích dẫn về nó (từ trang dự án của mô-đun):

... Là một khung công tác cấp thấp để lưu trữ và phục vụ tệp được quản lý. Mô-đun và tất cả các chức năng cốt lõi sẽ vẫn không tin vào các mô-đun khác để cung cấp chức năng cấp thấp này. Các mô hình con được hoan nghênh để cho phép API lưu trữ tương tác với các mô đun được đóng góp khác, nhưng sẽ không bao giờ có câu lệnh phụ thuộc [] trong tệp Storage.info trừ khi cần thiết cho chức năng cấp thấp của mô-đun này.

Nó có các tính năng sau:

  • Kiến trúc có thể cắm - nó có thể được mở rộng để làm việc với bất kỳ dịch vụ lưu trữ nào.
  • Dự phòng - nó có thể được cấu hình để lưu trữ các tệp của bạn trong nhiều dịch vụ và thay đổi tức thời cái nào đang phục vụ. Điều này có nghĩa là trang web của bạn sẽ không bị dịch vụ gặp sự cố .
  • API kiểm soát truy cập - có thể được sử dụng cho thương mại điện tử.
  • Chống trùng lặp - khi các tệp giống hệt nhau được lưu trữ trong cùng một vùng chứa, chỉ một trường hợp sẽ được tạo. Điều này tiết kiệm băng thông và lưu trữ.
  • Tích hợp trường tệp và hình ảnh - kích hoạt mô đun con "cầu lõi".
  • Mô-đun kiểm toán - so sánh một bản kê khai của các tệp với những gì được ghi trong cơ sở dữ liệu để đảm bảo rằng bản ghi là chính xác.

4

Hai mô-đun cũng có thể giúp ích trong lĩnh vực này là CDN (được sử dụng bởi nhiều trang web lớn, bao gồm economist.com) và Amazon S3 (cụ thể để sử dụng Amazon S3 thay vì hệ thống tệp cục bộ).

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.