Cài đặt Apache
Ta cài đặt apache với lệnh sau
$ sudo apt-get install apache2
Trong bài này ta sẽ dùng methode PUT của HTTP do đó ta cần dùng đến WebDAV. Ta kích hoạt việc dùng module này trong Apache với lệnh sau :
$ sudo a2enmod dav $ sudo a2enmod dav_fs
Cấu hình cho Apache
Ta tạo tập tin toanhttp.conf tại /etc/apache2/sites-available
$ sudo vi /etc/apache2/sites-available/toanhttp.conf
Nội dung của tập tin toanhttp.conf như sau :
<VirtualHost *:9015>
DocumentRoot /home/toan/toanhttp
<Directory />
Options FollowSymLinks
AllowOverride All
Require all granted
DAV On
</Directory>
<Directory /home/toan/toanhttp/ >
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
Require all granted
</Directory>
LogLevel debug
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Cấu hình này cho phép mọi người truy cập bằng giao thức http vào mọi thông tin lưu tại /home/toan/toanhttp
Để ý thấy "DAV On" ở đây cho biết là ta kích hoạt sử dụng WebDAV
Thêm cổng 9015 vào tập tin ports.conf
$ sudo vi /etc/apache2/ports.conf
Thêm cổng này vào cuối tập tin ports.conf như sau :
Listen 9015
Thêm cấu hình toanhttp.conf vào Apache với lệnh sau và khởi động lại Apache để cập nhật cấu hình mới này như sau :
$ sudo a2ensite toanhttp.conf $ sudo service apache2 stop $ sudo service apache2 start
Kiểm tra việc cài đặt Apache sau khi cấu hình cho nó
Trong một trình duyệt web, ta kiểm tra xem cấu hình này đã được Apache cập nhật chưa bằng cách truy cập địa chỉ URL sau :
http://localhost:9015/
Ta có thể xem các methode được cung cấp tại địa chỉ trên với cấu hình này của Apache bằng lệnh sau
$ curl -i -X OPTIONS "http://localhost:9015"
Như đã thấy ở trên ta đã kích hoạt WebDAV trong Apache để sử dụng methode PUT, dưới đây là một truy vấn http PUT để tải lên tập tin có tên testhttp.txt vào thư mục gốc của site tức
$ curl -X PUT -T "testhttp.txt" "http://localhost:9015"
Cấu hình Apache với BASIC Authentication
Để phát sinh mật khẩu cho Apache ta cài đặt module sau :
$ sudo apt-get install apache2-utils
Sau đó tạo tập tin mật khẩu ".htpasswd" và thêm người dùng đầu tiên có tên "toanwebdav" với mật khẩu của nó với lệnh :
$ htpasswd -c /etc/apache2/.htpasswd toanwebdav
Để thêm người dùng tiếp theo có tên "toan" ta dùng lệnh sau :
$ htpasswd /etc/apache2/.htpasswd toan
Ta tạo một tập tin cấu hình toanwebdav.conf cho Apache dùng BASIC Authentication như sau :
$ sudo vi /etc/apache2/sites-available/toanwebdav.conf
Nội dung của tập tin toanwebdav.conf
<VirtualHost *:9016>
DocumentRoot /home/toan/toanwebdav
<Directory />
Options FollowSymLinks
AllowOverride All
Require all granted
DAV On
AuthType Basic
AuthName "webdav - Authentication required"
AuthUserFile /etc/apache2/.htpasswd
Require valid-user
</Directory>
<Directory /home/toan/toanwebdav / >
Options Indexes FollowSymLinks MultiViews
AllowOverride None
</Directory>
LogLevel debug
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Tương tự như trên, ta sẽ :
Thêm cổng 9016 vào tập tin ports.conf
$ sudo vi /etc/apache2/ports.conf
Thêm cổng này vào cuối tập tin ports.conf như sau :
Listen 9016
Thêm cấu hình toanwebdav.conf vào Apache với lệnh sau và khởi động lại Apache để cập nhật cấu hình mới này như sau :
$ sudo a2ensite toanwebdav.conf $ sudo service apache2 stop $ sudo service apache2 start
Trong một trình duyệt web, ta kiểm tra xem cấu hình này đã được Apache cập nhật chưa bằng cách truy cập địa chỉ URL sau :
http://localhost:9016/
Khi truy cập vào địa chỉ trên ta phải cung cấp tên người dùng (toanwebdav chẳng hạn) và mật khẩu mà ta vừa định nghĩa trong tập tin .htpasswd ở trên.