Apache là một phần mềm Web server được cung cấp bởi tập đoàn Apache Group. Đây là một Web server được hỗ trợ để chạy chủ yếu trên UNIX va LINUX và rất được phổ biến bởi tính chặt chẽ, uyển chuyển và linh hoạt. Hiện nay Apache là một Web server đang quản lý hơn 50% số Web site đang có trên thế giới.
2. Tổ chức Web site:
Trước khi bắt đầu xây dựng một Web site, người sử dụng có thể muốn tìm hiểu tổ chức của nó. Khi có nhiều hơn các khả năng suy nghĩ về các cách tổ chức cấu trúc một Web site, người sử dụng có thể suy nghĩ về nó như một viễn cảnh đi lại. Trong những suy nghĩ thêm của nó về khía cạnh này, sẽ nảy sinh ra những câu hỏi: Người sử dụng có thể làm gì để dễ dàng giữ gìn Web site của mình? Các quy ước nào sẽ làm đơn giản Web site của họ?
3. Cài đặt Apache trên Windows:
Chạy file Apache.msi đã tải Apache về, người sử dụng sẽ phải nhập các thông tin sau:
- Có hay không việc chạy Apache cho tất cả mọi người sử dụng (như một dịch vụ) hoặc cài đặt Apache để chạy trên một cửa sổ giao tiếp khi chọn shortcut khởi động Apache.
- Tên Server, tên miền và tài khoản email của người quản trị.
- Tên thư mục để cài Apache vào (mặc định là C:\Program Files\Apache Group\Apache mặc dù người sử dụng có thể thay đổi sang một thư mục bất kỳ mà họ muốn)
- Kiểu cài đặt. Chức năng “Complete” sẽ cài đặt mọi thứ, bao gồm cả mã nguồn nếu người sử dụng đã tải về gói –srm.msi. Chọn cài đặt “Custom” nếu không muốn chọn cài đặt tài liệu hoặc mã nguồn từ gói cài đặt này.
Trong suốt quá trình cài đặt Apache sẽ cấu hình các file trong thư mục conf cho thư mục lựa chọn cài đặt của người sử dụng, tuy nhiên nếu bất kỳ những file nào trong thư mục này đã tồn tại chúng sẽ không bị chép chồng lên.
Sau khi cài đặt xong, người sử dụng sẽ phải sửa đổi các file cấu hình trong thư mục conf. Những file này sẽ được cấu hình trong suốt quá trình cài đặt để sẵn sàng cho Apache chạy từ thư mục mà họ đã cài đặt vào với các tài liệu phục vụ từ thư mục con htdocs. Có rất nhiều chức năng trước khi bắt đầu thực sự sử dụng Apache. Tuy nhiên, để việc khởi động nhanh chóng các file này nên làm việc theo các cài đặt mặc định.
Nếu người sử dụng tháo cài đặt Apache khỏi hệ thống, các cấu hình và các file log sẽ không được gỡ ra. Người sử dụng phải sẽ cần phải xóa các cây thư mục đã cài đặt (mặc định là C:\Program File\Apache Group\Apache) nếu người sử dụng không muốn giữ các cấu hình của họ và các file Web khác. Từ khi fie httpd.conf đã được cấu hình để sử dụng Apache, người sử dụng cũng phải phải gỡ bỏ nó và các file khác mà đã được tạo cũng như bất kỳ các file log nào mà Apache đã tạo.
4. Chạy Apache trên Windows:
a) Chạy như một dịch vụ: Đây là các tốt nhất nếu muốn Apache tự động khởi động khi khởi động máy và giữ Apache vẫn chạy khi đã log-off.
Để khởi động Apache như một dịch vụ, trước hết cần phải cài đặt Apache như một dịch vụ. Nhiều dịch vụ Apache có thể được cài đặt với mỗi tên và cấu hình khác
nhau. Để cài đặt một dịch vụ Apache mặc định có tên “Apache”. Chọn “Install a Sevice for All User” khi bắt đầu bung gói cài đặt Apache. Sau khi cài xong có thể khởi động dịch vụ Apache bằng cách mở cửa sổ Service, chọn Apache, nhắp chuột vào Start, Apache sẽ bắt đầu chạy, ẩn trên màn hình. Sau đó có thể ngừng Apache bằng cách nhắp chuột vào Stop. Có một lựa chọn khác để sử dụng dịch vụ Apache từ các dòng lệnh sau tại cửa sổ giao tiếp:
Net start Apache Net Stop Apache
Sau khi khởi động Apache, người sử dụng có thể kiểm tra nó bằng cách sử dụng thủ tục như sau để chạy trên cửa sổ giao tiếp:
Apache –n “service name”
Để chắc chắn việc đang sử dụng các dịch vụ được cấu hình mặc định của Apache. Có nhiều dịch vụ khác của Apache được cài đặt và chạy như một dịch vụ. Các dòng lệnh sau sẽ khởi động, khởi động lại, Tắt và Ngừng các dịch vụ:
- Apache –n “service name” –k start. - Apache –n “service name” –k restart. - Apache –n “service name” –k shutdown. - Apache –n “service name” –k stop.
Ký hiệu chuyển đảo –n để chỉ các dịch vụ Apache mặc định, còn khi không có –n mà chỉ có –k dòng lệnh sẽ chỉ định rằng Apache đang chạy trên một cửa sổ giao tiếp, trường hợp này chỉ yêu cầu đối với các tên dịch vụ của Apache có chứa khoảng trắng.
Ngoài ra để Stop Apache trên cửa sổ giao tiếp còn có thể ấn tổ hợp phím Ctrl + C hoặc Ctrl + Break.
b) Chạy Apache trên cửa sổ giao tiếp:
Một khi đóng cửa sổ giao tiếp sẽ kết thúc việc chạy Apache.
Tại biểu tượng Start menu và trình Windows NT Service Manager có thể cung cấp một giao diện đơn giản để quản trị Apache. Nhưng dễ dàng nhất để làm việc là từ dòng lệnh.
Khi làm việc với Apache điều quan trọng nhất là việc tìm các file cấu hình. Người sử dụng có thể chỉ ra file cấu hình bằng hai cách (dùng các dòng lệnh):
* -f chỉ đến đường dẫn một file cấu hình: apache –f c:\myserver\conf\my.conf apache –f test\test.conf
* -n đường dẫn đến một file cấu hình của một dịch vụ Apache đã được cài đặt. apache –n “service name”
Trong các trường hợp trên, Server Root phải được thiết lập trong file cấu hình. Nếu người sử dụng chỉ ra một tên file cấu hình với –n và –f. Apache sẽ sử dụng tên file được biên dịch ở trong server, thường là “conf/httpd.conf”. Gọi đến Apache với ký hiệu chuyển đảo –v sẽ hiển thị các giá trị đã đánh nhãn SERVER-CONFIG- FILE. Apache sẽ quyết định ServerRoot của nó bằng các cách sau:
- Một chỉ thị SeverRoot qua ký hiệu chuyển đảo –c. - Ký hiệu chuyển đảo –d trên dòng lệnh.
- Thư mục đang làm việc hiện thời.
- SeverRoot được biên dịch bên trong server.
SeverRoot được biên dịch bên trong server thường là “/apache”. Nếu gọi đến Apache với ký hiệu chuyển đảo –v sẽ hiển thị các giá trị được đánh nhãn giống như là của “HTTPD Root”.
Khi gọi đến Apache từ trình đơn Start. Apache thường bỏ qua các thông số vì thế sử dụng khoá registry là một kỹ thuật vẫn được ưa thích hơn cho Apache.
Trong quá trình cài đặt, một khóa registry sẽ được tạo, ví dụ:
HKEY_Local_machine\Sofware\ApacheGroup\Apache\1.3.13\ServerRoot
Khóa này được biên dịch vào trong server và có thể cho phép kiểm tra các phiên bản mới mà không tác động đến phiên bản hiện thời. Dĩ nhiên, phải chắc rằng không cài đè phiên bản mới lên phiên bản cũ trong hệ thống file.
Giá trị của khóa này là thư mục “ServerRoot” chứa trong thư mục Conf. Khi Apache khởi động, nó sẽ đọc file httpd.conf từ thư mục này. Nếu thư mục này chứa chỉ thị ServerRoot mà nó khác với thư mục đang tồn tại trong khóa registry, Apache sẽ quên khóa registry và sử dụng thư mục được thiết lập trong file cấu hình. Nếu người sử dụng chép một thư mục Apache hay các file cấu hình đến một nơi khác, nó sẽ vẫn còn cho đến khi cập nhật lại thư mục ServerRoot trong file httpd.conf đến một nơi khác.
Để chạy Apache từ dòng lệnh như một ứng dụng giao tiếp, sử dụng dòng lệnh: apache
Apache sẽ được bắt đầu và sẽ vẫn chạy cho đến khi người sử dụng nhấn tổ hợp phím Ctrl – C.
apache –t
Lệnh này được sử dụng để thay đổi các file cấu hình khi Apache vẫn còn đang chạy. Người sử dụng có thể tạo ra các thay đổi, xác nhận việc thay đổi là tốt bằng lệnh “apache –t”, sau đó khởi động lại Apache với “apache –k restart”. Apache sẽ đọc lại các file cấu hình cho phép thực hiện bất kỳ một tiến trình nào để hoàn thành mà không xảy ra gián đoạn. Bất kỳ một yêu cầu nào cũng sẽ được phục vụ với việc sử dụng cấu hình mới.
5. Kiểm tra Apache trên Windows:
Chạy Command Prompt danh sách Program của trình đơn Start.
Chọn thư mục đã cài đặt Apache vào và gõ lệnh apache và đọc các thông báo lỗi (nếu có). Sau đó xem lại file error.log cho các cấu hình bị thiết lập sai. Nếu người sử dụng chấp nhận mặc định khi cài đặt Apache, các dòng lệnh sẽ là:
c:
cd "\program files\apache group\apache" apache
Wait for Apache to exit, or press Ctrl+C more <logs\error.log
Sau khi xem file error.log người sử dụng sẽ thấy một vài vấn đề bị lỗi và họ có thể sửa chữa và khởi động lại một lần nữa.
Sau khi khởi động, Apache sẽ chạy (như ở cửa sổ giao tiếp hoặc như một dịch vụ) và sẽ bắt đầu lắng nghe ở cổng 80, trừ phi người sử dụng thay đổi Port, Listen hoặc BindAddress (trong file cấu hình). Hãy thực hiện kết nối đến server và truy cập trang Web mặc định bằng cách mở trình duyệt và nhập vào URL sau:
http://localhost/
Trình duyệt sẽ trả lại một trang Welcome và một liên kết đến sổ hướng dẫn Apache như sau:
Nếu không người sử dụng sẽ nhận được một thông báo lỗi, có thể xem lại file error.log trong thư mục log. Nếu máy tính không nối mạng, họ có thể sử dụng URL sau đây:
http://127.0.0.1/
Một khi các cài đặt cơ sở đang làm việc, người sử dụng phải cấu hình các thuộc tính của nó bằng cách sửa đổi nội dung các file trong thư mục conf.
6. Virtual Host:
Vitual Host là một sức mạnh thật sự của Apache. Virtual Host cho phép Apache Web Server chạy cùng lúc nhiều Web site. Apache là một HHTP server đầu tiên cung cấp các hỗ trợ cho việc xây dựng một virtual site. Trong khi các server của NCSA và các server khác cũng cung cấp sự hỗ trợ virtual site nhưng Apache cung cấp một khả năng thi hành tốt hơn và có nhiều điểm đặc trưng hơn các server khác. Chỉ mới nhìn qua, dường như sự thuận lợi chính của virtual site là chỉ để tô điểm, nó cho phép nhiều Web site được đánh địa chỉ tên miền của nó trên các máy đơn đã được chia xẻ. Tuy nhiên sự thuận lợi của nó nhiều kết quả rõ ràng nằm trong cách quản trị Web site và cách những máy khác sử dụng nó. Một Virtual host thường được tạo ra nhằm mục đích như sau:
- Khách hàng có thể dễ dàng truy cập các Web site của mình trên các server cho thuê. Từ khi người thuê server có thể sử dụng tên miền của chính mình, các địa chỉ có khuynh hướng ngắn đi. Điều này đã giúp đỡ việc đưa ra tính chuyên nghiệp đồng
nhất trên thế giới. Những người sử dụng thích nhớ những địa chỉ ngắn hơn từ khi tên miền có một vài sự thích hợp với tên của các tập đoàn công ty.
- Rút gọn tối đa các máy tính và phần cứng mạng, nhiều site tốc độ chậm có thể nằm ở tại một máy đơn, điều này làm giảm bớt giá thành của việc đưa một site lên mạng.
- Giảm bớt giá thành về con người kết hợp với các hệ thống quản trị. Thay cho việc quản lý và cấu hình một server chuyên dụng cho các tên miền. Một Web server chỉ cần duy trì vài file cấu hình và một số các box. Điều này sẽ dẫn đến việc giảm một số hệ thống cần để duy tu nó, như vậy việc duy trì một mảng sẽ đơn giản hơn và ít tốn kém hơn.
Bởi vì hầu hết các Web site khi tạo ra đều không đủ đường truyền lưu thông để sử dụng hết các tài nguyên trên một máy đơn, điều đó là sự khát khao từ một người quản trị cá nhân cho phép một server đơn giản trên mạng và chạy như nhiều máy khác nhau thay vì dành cho phần cứng và tiền bạc để mỗi site được đưa lên, một vài server cấu hình các lệnh để đưa ra các kết quả như nhau: một virtual site. Bởi vì phí tổn để cài đặt một server có thể chia xẻ cho nhiều site, thời gian để cấu hình và quản lý Web site được giảm đi rất nhiều.
Virtual host đã đem lại một khía cạnh chắc chắn của việc tạo ra một trang Web di động. Khi một site là ảo, nó dễ dàng di chuyển đến một Web server khác trong cùng một mạng hoặc ở một nơi nào khác. Đây chính là vấn đề của việc chuyển chỗ các trang HTML của các site đến một máy mới và điều chỉnh các thông tin DNS (Domain Name Server) của site đưa lên một server mới. Để việc thích nghi với DNS được cập nhật, đơn giản chỉ cần tạo ra sự đổi hướng trên server cũ . Điều này
cho phép sự lưu thông được trôi chảy mà không có sự sai sót, đó là một vấn đề quan trọng với các site đang lớn mạnh đang được lưu thông để tạo ra kinh doanh.
Về mặt lịch sử, khi người sử dụng muốn một site đang host sử dụng tên miền của họ, sự lựa chọn có thể được là mua hoặc thuê một máy tính và dùng nó để cấu hình như một Web server. Phải chịu các phí tổn để tiêu tốn cho việc quản lý server này. Các phí tổn này dễ thường là rất lớn, việc này đã thúc đẩy các nhà cung cấp dịch vụ Internet (ISP) thêm vào các cách để hỗ trợ nhiều Web site trên một host, điều này dẫn đến một vài giải pháp gần đây, chẳng hạn như Home Page Approach.
Home Page Approach tạo ra một địa chỉ giống như: http://www.isp.dom/~name.
Home Page Approach là một cách thích hợp để phục vụ các trang người dùng cục bộ. Nhưng khi dùng nó để phục vụ cung cấp thông tin lớn và đang được truy cập thường xuyên bởi một số lớn người sử dụng thì việc này sẽ tạo ra một địa chỉ tồi mà rất khó nhớ, tên nhạp vào dài, dễ xảy ra sai sót phía người sử dụng và trông không được chuyên nghiệp lắm.
Xây dựng một virtual host:
Các phạm vi liên quan của virtual host, virtual site và multihomed server thông thường được sử dụng thay thế cho nhau. Để dễ hiễu hơn, chỉ cần suy nghĩ chúng như sau:
Để tạo một virtual site, thì cần phải cấu hình một virtual host, để virtual host làm việc cần phải tạo một mutihomed server, như vậy rõ ràng là có sự khác nhau giữa chúng.
Một máy tính multihomed là môt máy tính có thể trả lời cùng một lúc đến nhiều địa chỉ IP. Một máy tính mày có thể được truy cập bởi nhiều tên (chẳng hạn như www.mailhost.foo.com và www.foo.com) mà nó thi hành cho các địa chỉ IP như nhau không thể là một máy tính Multihomed.
Việc đặt bí danh, một khả năng cung cấp bởi DNS trong một bảng ghi tài nguyên CNAME , hoặc liệt kê các tên máy tính trên etc/host/file đằng sau các địa chỉ IP thì chỉ tiện lợi cho người sử dụng đang truy cập vào một tài nguyên trên mạng. Thông thường người ta mất nhiều thời gian để nhớ tên, và một vài tên chẳng hạn như WWW hoặc FTP thì là tiêu chuẩn đặc trưng cho các máy tính mà nó đưa lên mạng các dịch vụ với tên tương tự. Người sử dụng chỉ cần nhớ tên miền nơi các tài nguyên nơi các tài nguyên đó sử dụng tên truyền thống (chẳng hạn www.aple.com, www.mailhost.com hoặc ftp.aple.com ) Một máy Multihomed cần nhiều hơn thế, nó phải trả lời cho cùng lúc hai hoặc nhiều địa chỉ IP chẳng hạn địa chỉ IP 1.2.3.4 là địa chỉ được ấn định bởi mạng làm việc Internet của người sử dụng cung cấp khi họ sign up với chúng.
7 .Virtual site:
Virtual site là một Web site mà nó cùng nằm trên một server với các Web site khác. Mỗi Web site thì được truy cập bằng tên của chúng và chia xẻ tất cả tài nguyên phần cứng với các virtual site khác. Mặc dù tất các yêu cầu đều được trả lời bằng