10/10/2018, 10:32

Sử dụng Virtual host

Mình đang xài Apache để làm webserver.

Cấu hình Apache đến thư mục web là: D:www

Cấu hình host của window (C:WindowsSystem32Driversetchosts) để trỏ vào 127.0.0.1 là http://localhost.

Khi mình tạo một project (D:wwwproject)thì phải truy cập từ trình duyệt: http://localhost/project.

Do có một số yêu cầu đặc biệt nên mình muốn rút gọn URL trên thành http://project thì làm thế nào? (thư mục chứa web vẫn là D:wwwproject).
tphuy10 viết 12:46 ngày 10/10/2018
Chịu khó google trước khi hỏi bạn nhé!
Code:
http://www.google.com.vn/#hl=vi&source=hp&q=apache+virtual+host+example&aq=1&aqi=g2&aql=&oq=apache+virtual+host&gs_rfai=&fp=e6aa583e5ef1fe9f
vnpress viết 12:48 ngày 10/10/2018
@tphuy10:
Mình hỏi rất thiện chí, và ví dụ cũng đã nêu ra rõ ràng. Nhưng hình như bạn trả lời không được thiện chí lắm. Mình đoán rằng bạn chỉ đọc title rồi vội vàng post câu trả lời. Nếu bạn không muốn giúp đỡ, vui lòng đừng trả lời như vậy.
@tphuy10:
Về các từ khóa bạn đưa ra không giúp mình giải quyết được vấn đề. Việc cấu hình Virtual Host của Apache mình cũng đã làm nhưng vẫn không được. Mình nghĩ chắc cái này có liên quan đến DNS chăng. Bạn nào biết một giải pháp đồng bộ vui lòng chỉ giúp.

Mình đã G cả ngày nhưng không có kết quả mới post bài. Đến hôm nay cũng vẫn còn G nhưng vận không tìm được cách giải quyết. Cũng có thể là mình không tìm được "từ khóa" phù hợp để search. Bạn nào biết cách giải quyết hoặc tìm được link hướng dẫn vui lòng post cụ thể giúp mình.

Cảm ơn các bạn nhiều.
ngoc_viet08 viết 12:41 ngày 10/10/2018
1 . vào đây:
C:\Windows\System32\drivers\etc
mở file host

nếu có thì sửa , chưa thì thêm hàng ( project là tên của project )

127.0.0.1 project

save lại

2. chắc chắn bạn xài wamp , xamp thì để port là 80 .
ờ wamp thì :
tìm file httpd.conf tìm dòng Listen 80 , nếu vậy thì ok . còn nếu Listen 81 hay gì khác thì sửa về lại .

3.mở trình duyệt chạy http://project/

url này sẽ dẫn tới url http://localhost/

url http://project/project/ sẽ dẫn tới project của bạn .

bạn cần tìm cách chỉnh folder mà url http://localhost/ trỏ tới là folder project thay vì folder www như ban đầu .

try thử coi
longvnit viết 12:44 ngày 10/10/2018
Hướng dẫn ở đây: http://httpd.apache.org/docs/1.3/vhosts/examples.html
Và bạn phải phân giải được domain bạn tạo trỏ về IP Máy nhé.
tphuy10 viết 12:42 ngày 10/10/2018
:| Mình rất thiện chí mới gửi lại cái link mình đã google thành công. Trên localhost của mình có chia một số thư mục, ví dụ thư mục F:/webserver/www/j mình dùng để đặt các project về Joomla -> gõ lên trình duyệt là http://jhost
Và thư mục đặt các project về drupal: F:/webserver/d -> gõ lên trình duyệt là http://dhost. Bạn ko nên nói quá lời như vậy làm mất tình cảm. Nếu bạn google rồi mà không làm được cũng nên nói thì mình mới biết để không trả lời như vậy!
Bạn hiểu ý mình nói chứ!
vnpress viết 12:33 ngày 10/10/2018
Được gửi bởi ngoc_viet08
1 . vào đây:
C:\Windows\System32\drivers\etc
mở file host

nếu có thì sửa , chưa thì thêm hàng ( project là tên của project )

127.0.0.1 project

save lại

2. chắc chắn bạn xài wamp , xamp thì để port là 80 .
ờ wamp thì :
tìm file httpd.conf tìm dòng Listen 80 , nếu vậy thì ok . còn nếu Listen 81 hay gì khác thì sửa về lại .

3.mở trình duyệt chạy http://project/

url này sẽ dẫn tới url http://localhost/

url http://project/project/ sẽ dẫn tới project của bạn .

bạn cần tìm cách chỉnh folder mà url http://localhost/ trỏ tới là folder project thay vì folder www như ban đầu .

try thử coi
Mình đã chuyển file host của Win, nhưng nó chỉ trỏ đến thư mục D:\\www, không chỉnh để trỏ đến D:\\www\project được; vì ngoài project ra còn có D:\\www\project1, D:\\www\project2 nữa.

[=========> Bổ sung bài viết <=========]

Được gửi bởi longvnit
Hướng dẫn ở đây: http://httpd.apache.org/docs/1.3/vhosts/examples.html
Và bạn phải phân giải được domain bạn tạo trỏ về IP Máy nhé.
Mình đã cấu hình virtual host của Apache rồi. Vấn đề của mình chính là cái "phân giải' này. Mình nghĩ có liên quan đến DNS của domain. Nhưng mà mình đang muốn test trên localhost, không phải trên môi trường mạng LAN, hay internet. Bạn nào có giải pháp đồng bộ chỉ giúp.
Mình chỉ học lập trình nên mấy cái này không biết. Đang muốn thực tập XMLRPC, nhưng nhà không có internet, lâu lâu mới tìm chỗ online 1 lần. Không giả lập domain khác không test được.

[=========> Bổ sung bài viết <=========]

Được gửi bởi tphuy10
:| Mình rất thiện chí mới gửi lại cái link mình đã google thành công. Trên localhost của mình có chia một số thư mục, ví dụ thư mục F:/webserver/www/j mình dùng để đặt các project về Joomla -> gõ lên trình duyệt là http://jhost
Và thư mục đặt các project về drupal: F:/webserver/d -> gõ lên trình duyệt là http://dhost. Bạn ko nên nói quá lời như vậy làm mất tình cảm. Nếu bạn google rồi mà không làm được cũng nên nói thì mình mới biết để không trả lời như vậy!
Bạn hiểu ý mình nói chứ!
Xin lỗi về bài Reply trước. Bạn vui lòng cho mình các link cụ thể đã giúp bạn làm được không? (không phải từ khóa G, mình đã "săm soi" cái đống từ khóa bạn đưa nhưng không tìm được, có lẽ tại mình... "ngu" quá). Hoặc bạn có thể vui lòng viết 1 bài hướng dẫn giúp.

Thanks1
. . viết 12:39 ngày 10/10/2018
Tôi đã hướng trả lời 1 bài rất đầy đủ về nó ở đây:

http://freecodevn.com/for@um/showthread.php?t=88104

Chúng ta có thể tóm tắt lại như sau:

Hiện mình đang xài XAMPP 1.7.3 on Windows XP

Trường hợp:
Tôi có thể truy cập localhost (C:/xampp/htdocs) bằng địa chỉ http://localhost
Tôi muốn thêm 1 virtual Host http://abc.com sẽ truy cập vào thư mục C:/abc

1. Tạo thư mục C:/abc

2. Mở tập tin C:\WINDOWS\system32\drivers\etc\hosts thêm 1 dòng in đậm phía dưới.
Code:
127.0.0.1       localhost
127.0.0.1	abc.com
3. Cấp quyền truy cập cho C:/abc bằng cách thêm những dòng dước vào nơi thích hợp trong file httpd.conf của Apache. Nếu dùng XAMPP trên Windows thì cụ thể nên thêm vào file C:\xampp\apache\conf\extra\httpd-xampp.conf. Đặt những dòng dưới vào vị trí thích hợp... ví dụ như phía dưới phần cấp quyền của phpMyAdmin...
Code:
    <Directory "C:/abc">
        AllowOverride All
        Options All
        Order deny,allow
        Allow from All
    </Directory>
4. Cuối cùng tìm nơi đặt code cofig Virtual Hosts của Apache và thêm vào code phía dưới. Nếu dùng XAMPP thì nên thêm vào C:\xampp\apache\conf\extra\httpd-vhosts.conf để dễ quản lý.
Code:
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin admin@localhost
DocumentRoot "C:/xampp/htdocs"
ServerName localhost
</VirtualHost>

NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin admin@abc.com
DocumentRoot "C:/abc"
ServerName abc.com
ServerAlias abc.com
</VirtualHost>
Đừng quên restart lại service của Apache trươc sau khi hoàn thành. Nếu có lỗi xảy ra trong quá trình restart thì có thể bạn đã sai bước nào đó rồi. :P
vnpress viết 12:43 ngày 10/10/2018
Cảm ơn bạn nhiều!

Mình làm được rồi.
Bài liên quan
0