Biên dịch Apache trên Windows:

Một phần của tài liệu đồ án tốt nghiệp tìm hiểu về các web server thông dụng (Trang 30 - 33)

CC TARGET CFLAGS SBINDIR

10.Biên dịch Apache trên Windows:

Để biên dịch Apache địi hỏi Microsoft Visual C++ 5.0 hoặc 6.0 phải được cài đặt sẵn sàng. Nĩ cĩ thể được cài đặt với các cơng cụ dịng lệnh hoặc với mơi trường Viual Studio. Tham khảo sách hướng dẫn C++ để xác định cách cài đặt chúng. Đặc biệt nhất là nhận thấy file vcvars32.bat từ thư mục Program

Files/DevStudio/VC/bin và và file setenv.bat từ Platform SDK được yêu cầu để

chuẩn bị các cơng cụ dịng lệnh cho việc sử dụng dịng lệnh. Để cài đặt Apache với file Makefile.win hoặc dự án Install.Bin trong Visual Studio IDE, tiện ích awk cũng được yêu cầu.

Đầu tiên bản phải cài đặt awk.exe ở nơi nĩ cĩ thể được tìm thấy trong đường dẫn và mơi trường DevStudio nếu dự định sử dụng IDE, cĩ nhiều phiên bản của awk sẵn cĩ trên Windows. Cách dễ nhất là cài đặt bằng cái cĩ sẵn được tải xuống từ

http://cm.bell-labs.com/cm/cs/who/bwk/awk95.exe và nên lưu nĩ với tên

awk.exe hơn là awk95.exe.

Sau đĩ bung gĩi Apache đưa vào trong một thư mục thích hợp, mở cửa sổ dịng lệnh và thay đổi thư mục con src của Apache. Các tài liệu chính cung cấp cho các file tạo Apache được chứa trong file Makefile.win. Để biên dịch Apache trên Windows chỉ cần sử dụng các dịng lệnh:

nmake /f Makefile.win _apacher (release build) nmake /f Makefile.win _apached (debug build)

Nếu được một thơng báo lỗi kiểu như "the name specified is not recognized..."

thì phải chạy file vevas32.bat trước: bằng dịng lệnh sau:

"C:\Program Files\DevStudio\VC\Bin\VCVARS32.BAT"

(cần phải sửa đổi dịng lệnh này nếu VC được cài ở nơi khác) Sau đĩ chạy nmake một lần nữa.

Apache cũng cĩ thể được biên dịch với mơi trường Visual Studio

development của VC++. Để đơn giản tiến trình này một vùng làm việc Visual

Studio, Apachedsw (được cung cấp trong thư mục src) đưa ra danh sách lối vào của các dự án working.dsb được yêu cầu để hồn thành Apache (binary

release). Nĩ cung cấp các phần phụ thuộc giữa các tiến trình. Nĩ bao gồm cả

các phần phụ thuộc giữa các dự án để đảm bảo rằng chúng được cài đặt theo một trật tự thích hợp. InstallBin là một dự án cao cấp mà nĩ sẽ cài đặt tất cả các dự án, và cài đặt các file biên dịch vào nơi thích hợp của nĩ.

Các nhân dự án .dsp được cài đặt bởi Apache.dsw và makefile.win là:

os\win32\ApacheOS.dsp os\win32\Win9xConHook.dsp regex\regex.dsp

ap\ap.dsp

lib\expat-lite\xmltok.dsp

lib\expat-lite\xmlparse.dsp yêu cầu xmltok lib\sdbm.dsp

main\gen_uri_delims.dsp main\gen_test_char.dsp

ApacheCore.dsp yêu cầu tất cả các file ở trên

Apache.dsp yêu cầu ApacheCore

Trong phần thêm vào, thư mục con os/win32 chứa các file dự án cho các mơ đun chức năng, tất cả chúng đều yêu cầu ApacheCore.

os\win32\mod_auth_anon.dsp

os\win32\mod_auth_dbm.dsp cũng yêu cầu sdbm

os\win32\mod_auth_digest.dsp os\win32\mod_cern_meta.dsp os\win32\mod_digest.dsp os\win32\mod_expires.dsp

os\win32\mod_headers.dsp os\win32\mod_info.dsp os\win32\mod_mime_magic.dsp os\win32\mod_proxy.dsp os\win32\mod_rewrite.dsp os\win32\mod_speling.dsp os\win32\mod_status.dsp os\win32\mod_unique_id.dsp os\win32\mod_usertrack.dsp os\win32\mod_vhost_alias.dsp

Thư mục support chứa các file dự án cho các chương trình được thêm vào mà nĩ khơng nằm trong phần Apache đang chạy nhưng nĩ được sử dụng bởi người quản trị để duy trì password và các file log. (adsbygoogle = window.adsbygoogle || []).push({});

support\htdigest.dsp support\htpasswd.dsp support\logresolve.dsp support\rotatelogs.dsp

Một khi Apache đã biên dịch nĩ cần được cài đặt trong thư mục gốc server của nĩ, mặc định là /Apache trên đĩa cứng đang sử dụng.

Để tự động cài đặt các file vào trong thư mục c:/ServerRoot, sử dụng lệnh

nmake:

nmake /f Makefile.win installr INSTDIR=c:\ServerRoot (for release build) nmake /f Makefile.win installd INSTDIR=c:\ServerRoot (for debug build)

Đối số c:\ServerRoot để cho INTSDIR nhận các thư mục cài đặt (nĩ cĩ thể được bỏ qua nếu Apache được cài đặt trong thư mục \Apache)

Quá trình cài đặt sẽ diễn ra như sau:

c:\ServerRoot\Apache.exe – Chương trình Apache

c:\ServerRoot\ApacheCore.dll - Apache runtime [shared libary]

c:\ServerRoot\Win9xConHook.dll - Win9x console fixups [shared library] c:\ServerRoot\xmlparse.dll – phân tích cú pháp XML [shared library] c:\ServerRoot\xmltok.dll - XML token engine [shared library]

c:\ServerRoot\bin\*.exe – Các chương trình quản trị c:\ServerRoot\cgi-bin – Ví dụ CGI scripts

c:\ServerRoot\conf – Thư mục chứa các file cấu hình. c:\ServerRoot\icons - Icons for FancyIndexing

c:\ServerRoot\include\*.h – Các file header củaApache c:\ServerRoot\htdocs - Site Welcome index.html

c:\ServerRoot\htdocs\manual – Tài liệu Apache. c:\ServerRoot\lib – Các file tài liệu động.

c:\ServerRoot\libexec – Thư viện liên kết động. c:\ServerRoot\logs – Thư mục rỗng logging.

c:\ServerRoot\modules\mod_*.dll – Các mơ đun nạp Apache.

CHƯƠNG II

Một phần của tài liệu đồ án tốt nghiệp tìm hiểu về các web server thông dụng (Trang 30 - 33)