Có cách nào để bao gồm các cài đặt cấu hình trong Apache dựa trên một thư mục tồn tại không? Về cơ bản tôi có một ổ cứng di động mà tôi vận chuyển giữa công việc và nhà có một số thứ tôi đang phát triển trên đó. Tôi chỉ muốn cấu hình Apache tải một máy chủ ảo cụ thể nếu thư mục tồn tại.Có cách nào để kiểm tra xem một thư mục có tồn tại trong các tệp cấu hình Apache không?
Trả lời
Không, dường như không có cách nào trực tiếp để thực hiện việc này.
Điều duy nhất mà có thể là giải pháp là chỉ thị IfDefine
. Bạn có thể xác định định nghĩa bằng cách sử dụng tham số -d
khi máy chủ được khởi động.
Đối số tên thông số là xác định như được đưa ra trên dòng lệnh httpd qua
-Dparameter-
, tại thời điểm máy chủ được bắt đầu.
Bạn có thể kiểm tra sự tồn tại của thư mục trong tập tin batch hoặc bash và đặt thông số -d
tương ứng.
Cho dù đó là một tùy chọn, sẽ phụ thuộc vào cách máy chủ của bạn được khởi động từ ổ cứng di động.
Tôi đã đưa ra một giải pháp dường như hoạt động với Linux và OS X, và nó có bản lề trên "điểm gắn kết". Nó có thể có khả năng cạnh tranh với nó trong Windows, nhưng bạn có lẽ sẽ phải sáng tạo với FUSE và/hoặc Cygwin.
Nếu bạn tạo thư mục trống trong thư mục chính, chẳng hạn như "/ Users/username/ExtraVhosts", bạn có thể thêm chỉ thị apache vào "Include/Users/username/ExtraVhosts/*".
Sau đó, khi bạn lắp ổ USB, bạn có thể lắp vào đâu đó và sau đó sử dụng điểm gắn kết "liên kết" để liên kết chéo thư mục ExtraVhosts với một thư mục trên thiết bị di động.
Một OS X Ví dụ:
- Tôi có một ổ USB gọi là 'Cherrybomb'
- Khi tôi chèn nó, nó luôn luôn được gắn kết vào/Volumes/Cherrybomb
- sau đó tôi có thể sử dụng bindfs (cổng sudo cài đặt bindfs) để mount một thư mục con của nó, như vậy:
- sudo bindfs/Volumes/Cherrybomb/Dự án/vhosts/Users/tên người dùng/ExtraVhosts
- Sau đó, tôi có thể khởi động lại apache để đọc trong cấu hình Cập nhật:
- sudo/opt/local/apache2/bin/apachectl restart
Vào thời điểm đó, nó chỉ là một vấn đề của mục thêm trong/etc/hosts cho bí danh máy chủ để được chọn.
Tương đương với Linux sẽ sử dụng tham số "--bind" của lệnh gắn kết.
Một lưu ý: Điều này khiến việc tháo gỡ ổ đĩa USB trở nên khó khăn vì nó luôn được apache đánh dấu là "đang sử dụng".Dưới đây là một thủ tục loại bỏ:
- file Đóng tất cả các mở và các buổi thiết bị đầu cuối đang sử dụng ổ đĩa (hiện tại-làm việc-thư mục trong thiết bị đầu cuối có thể gây ra các vấn đề unmount)
- Dừng apache: sudo/opt/local/apache2/bin/apachectl dừng
- umount/Users/tên người dùng/ExtraVhosts
Sau đó, bạn có thể gỡ bỏ nó bằng đồ thị hoặc bằng tay (umount/Volumes/Cherrybomb).
Nếu công việc và máy gia đình gắn kết ổ đĩa với các vị trí khác nhau, bạn có thể có nhiều thư mục vhosts - home_vhost, work_vhost, v.v. - và sử dụng trong bước ràng buộc.
Tôi hy vọng điều này sẽ giúp ai đó ra ngoài :)
Nếu bạn trỏ apache đến điểm gắn kết chỉ thì không có vấn đề gì. Chỉ cần không trỏ chỉ thị Directory đến các thư mục trong ổ đĩa.
ví dụ: nếu bạn gắn/dev/somedisk/mnt/somevhost, thư mục /mnt/somevhost sẽ ở đó cho dù bạn có gắn ổ đĩa và apache sẽ bắt đầu hay không. Apache không quan tâm nếu thư mục trống vì vậy <Directory "/mnt/somevhost"/>
sẽ không khiến máy chủ không khởi động nếu ổ đĩa không được gắn kết.
Làm việc với UNIX không chống lại :-p Giải pháp này phải đủ để phát triển.
- 1. Cách kiểm tra xem tệp có tồn tại trong một thư mục không?
- 2. Cách kiểm tra xem tệp có tồn tại trong một thư mục trong thẻ sd
- 3. Cách kiểm tra xem thư mục chứa tệp có tồn tại không?
- 4. Cách kiểm tra xem tệp có tồn tại trong makefile
- 5. Kiểm tra xem một thư mục có tồn tại (và tạo thư mục) trong Qt, C++
- 6. kiểm tra xem tệp có tồn tại trong một thư mục cụ thể
- 7. Kiểm tra xem tệp có tồn tại trong Yii
- 8. Làm cách nào để kiểm tra xem tệp có tồn tại trong Perl không?
- 9. PHP kiểm tra xem tệp có tồn tại và không phải là thư mục
- 10. Kiểm tra xem tệp có tồn tại trong ksh
- 11. C cách nhanh hơn để kiểm tra xem thư mục có tồn tại không
- 12. Làm cách nào để kiểm tra xem biến có tồn tại trong cấu trúc ColdFusion không?
- 13. Kiểm tra xem một thư mục có tồn tại hay không
- 14. Kiểm tra xem một thư mục có tồn tại trong một thư mục hay không và tạo chúng bằng C#
- 15. kiểm tra xem hình ảnh có tồn tại không php
- 16. Cách kiểm tra xem tệp có tồn tại từ url
- 17. Làm cách nào để tránh EXC_BAD_ACCESS khi kiểm tra xem các thư mục có tồn tại không?
- 18. Làm cách nào để kiểm tra xem một phần tử có tồn tại trong một Tập hợp các mục không?
- 19. Làm cách nào để kiểm tra xem chuỗi có tồn tại trong tệp có vỏ Bash không?
- 20. Làm cách nào để kiểm tra xem tệp có tồn tại bằng Emacs Lisp không?
- 21. Có cách nào thích hợp để kiểm tra sự tồn tại của tệp/thư mục trong Java không?
- 22. Kiểm tra xem thư mục không có tệp nào, nhưng thư mục này có thể chứa các thư mục con
- 23. RavenDb kiểm tra xem chỉ mục có tồn tại
- 24. Cách kiểm tra thư mục tồn tại hoặc không có trong linux.?
- 25. Cách kiểm tra thư mục để kiểm tra xem tệp mới có được thêm vào không?
- 26. php: kiểm tra xem đường dẫn có tồn tại không?
- 27. jQuery: Kiểm tra xem hình ảnh có tồn tại
- 28. Làm cách nào để kiểm tra xem một trường có tồn tại hay không trong MongoDB?
- 29. Cách kiểm tra xem một tệp cụ thể có tồn tại trong thư mục hay bất kỳ thư mục con nào của nó không?
- 30. Kiểm tra xem bảng có tồn tại