2015-05-18 16 views
5

Tôi đang cố gắng thiết lập httpd.conf để có thể chạy một số dự án laravel trong thư mục con mà không phải cập nhật httpd.conf của tôi cho từng dự án.Thiết lập một số dự án Laravel 5 trong thư mục con

Ví dụ,

Tôi muốn để có thể đạt 127.0.0.1/my_projects trang web của tôi và có một vài động thư mục con đó sẽ khởi động ứng dụng cụ thể của tôi mà không chỉnh sửa httpd.conf. Điều này có thể đạt được không?

+0

Tại sao bạn không bật 'Tùy chọn + Chỉ mục'? – sitilge

Trả lời

0

Bạn có thể thực hiện việc này bằng cách tạo thư mục 'my_projects' bên trong thư mục công cộng của bạn (public, public_html, v.v.).

Ví dụ bạn có thể đặt các dự án Laravel1 và Laravel2 vào thư mục 'my_projects', sau đó bạn có thể truy cập các dự án của mình bằng cách nhập '127.0.0.1/my_projects/Laravel1' và '127.0.0.1/my_projects/Laravel2'.

1

Bạn có thể đạt được điều này bằng cách sử dụng VirtualDocumentRoot.

Trong trường hợp của bạn, bạn có thể thiết lập một tên miền phụ phát triển để truy cập trang web của mình.

<VirtualHost *:80> 
    ServerName testsites.localhost.com 
    ServerAlias *.test.localhost.com 
    VirtualDocumentRoot /var/www/dev/%1/public 
</VirtualHost> 

Bây giờ nếu bạn truy cập http://project1.test.localhost.com nó sẽ chỉ cho bạn /var/www/dev/project1/public, http://project2.test.localhost.com sẽ trỏ đến /var/www/dev/project2/public và vv

Để làm việc này, bạn cũng đã cho phép các mô-đun virtual_host_alias

LoadModule vhost_alias_module modules/mod_vhost_alias.so 

Lưu ý rằng bạn phải đặt các mục nhập trong số /etc/hosts cho các tên miền phụ của bạn và hướng chúng được giải quyết theo 127.0.0.1.

127.0.0.1 project1.test.localhost.com 
127.0.0.1 project2.test.localhost.com 

Nếu bạn không muốn viết một entry cho mỗi bạn tên miền phụ trong các tập tin host bạn có thể xem xét để thiết lập một máy chủ đơn giản DNS, nơi bạn có thể ký tự đại diện tất cả các bạn tên miền phụ *.test.localhost.com và yêu cầu họ giải quyết thành 127.0.0.1

Bạn có thể đọc thêm về máy chủ ảo động here.

0

Bạn sẽ cần phải chính cấp 2 thư mục cho mỗi tiểu dự án một cho thư mục công cộng và khác cho ứng dụng laravel.

Ví dụ: bạn muốn chạy một số ứng dụng laravel bên trong 127.0.0.1/my_projects. Bạn cần phải đặt các cá thể laravel khác nhau (ngoại trừ thư mục chung) trong thư mục gốc, hãy gọi các ứng dụng này là laravel1, laravel2, laravel3, v.v.

Bây giờ cho mỗi dự án bạn muốn theo 127.0.0.1/my_projects tạo thư mục con dưới này, di chuyển nội dung của thư mục chung của ứng dụng laravel tương ứng trong thư mục con này và chỉnh sửa tệp index.php để tải tệp bootstrap.php thích hợp. tức là tạo đường dẫn đến "../../laravel1/" hoặc "../../laravel2/", v.v.

Hãy cho tôi biết nếu bạn có bất kỳ câu hỏi nào. Sẽ rất vui khi được giúp đỡ.

Các vấn đề liên quan