Cho phép Apache 2.4 truy cập vào không gian làm việc


0

Tôi đang chạy Apache 2.4.6 trên openSUSE 13.1 và tôi muốn thực hiện một chút phát triển web, chủ yếu là kịch bản php. Do đó, tôi đã cài đặt các bản sao nhật thực cho các nhà phát triển php. Các tệp HTML và php tôi đặt trong thư mục bên phải như đã được hướng dẫn bởi hướng dẫn này , tức /srv/www/htdocs/là thực sự là quá trình và chính xác, ví dụ: nếu tôi đặt newfile.php trong thư mục đó, tôi sẽ nhận được đầu ra chính xác localhost/newfile.php. Bây giờ vấn đề là máy chủ không thể truy cập các tệp trong không gian làm việc. Tôi đã thử một số cách tiếp cận cho đến nay:

  1. Symlink từ /srv/www/htdocs/đến /path/to/workspace/. Điều này đã thay đổi đầu ra từ máy chủ từ "Không tìm thấy đối tượng 404" thành "403 Truy cập bị từ chối", mặc dù tôi đã cấp quyền truy cập hoàn toàn bắt đầu từ đó /.

  2. Cho phép truy cập vào thư mục bằng cách chỉnh sửa httpd.conf, như

    <Directory "/path/to/workspace/">
        Require all granted
    <Directory>
    
  3. Thiết lập máy chủ trong Eclipse bằng cách sử dụng lộ trình.

  4. Đưa một không gian làm việc mới vào /srv/www/htdocs/. Nhưng khi tôi muốn truy cập một tệp tại localhost/workspace/file.phptôi nhận được "Không tìm thấy đối tượng 404"

Tuy nhiên, không có gì cho thấy hiệu quả mong muốn. Vì tôi chỉ cần truy cập cho mục đích phát triển và mạng được bảo vệ từ bên ngoài, ngay cả cách giải quyết cũng khá dễ chấp nhận đối với tôi, mặc dù vậy, cách tốt hơn để làm điều đó, tất nhiên, sẽ tốt hơn.

Chỉnh sửa: Giải pháp

Vấn đề gây ra vấn đề đơn giản như nó đã gây tử vong. Tường lửa openSUSE đã chặn cổng 80. Bây giờ giải pháp chuyển không gian làm việc nhật thực vào /srv/www/htdocs/đang hoạt động.

Câu trả lời:


0

Cách chính xác để làm những gì bạn muốn là hầu như luôn luôn sử dụng một số loại giai đoạn triển khai.

Đối với một thiết lập hoàn toàn nội bộ hoặc thử nghiệm, đây có thể là một cái gì đó đơn giản như một kịch bản chạy rsync -a --delete ./* /srv/www/htdocs. (Chỉ định tệp nguồn bằng cách sử dụng ./* giúp giảm nguy cơ tên tệp bất thường gây ra sự cố trong quá trình sao chép.)

Sau đó, bạn có thể sửa đổi tập lệnh triển khai để thực hiện các thay đổi khác, chẳng hạn như: thực hiện bất kỳ thay đổi có thể áp dụng nào đối với các tệp cấu hình, đặt quyền sở hữu và quyền trên các tệp và thư mục, xóa những thứ không được phép có trên máy chủ web (có .gitignoreai không?), v.v.

Bằng cách này, máy chủ web có thể được cấu hình mà không có bất kỳ liên quan cụ thể nào cho nhu cầu của phía phát triển. Hãy để Eclipse có mọi thứ theo cách của nó và để Apache có mọi thứ theo cách của nó.

Không quá khó để cấu hình Eclipse để chạy một kịch bản như vậy khi "xây dựng" phần mềm, nếu bạn muốn một quy trình giải pháp một cửa.

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.