Setup LAMP Server
bằng cách biên dịch từ các gói riêng
biệt
CentOS 5.1
Apache 2.2.9
PHP 5.2.6
MySQL 5.0.51b
NỘI DUNG
Cài đặt hệ điều hành và cài đặt
bổ sung thêm các thư viện
Download các gói cài
Biên dịch MySQL
Biên dịch và cấu hình Apache và
PHP
Cài đặt hệ điều hành và cài đặt
bổ sung thêm các thư viện
Sử dụng bản phân phối CentOS 5.1
Cài đặt các gói ở mức tối thiểu
Cập nhật cho hệ điều hành và cài đặt thêm các thư
viện hỗ trợ cho quá trình biên dịch
Cài đặt hệ điều hành và cài đặt
bổ sung thêm các thư viện
Cập nhật hệ điều hành:
yum update
Bổ sung các thư viện:
yum install gcc gcc-c++
openssl bzip2 unzip zip ncurses-
devel zlib-devel openssl-devel
libxml2-devel curl-devel
libjpeg-devel libpng-devel
freetype-devel mhash-devel
libmcrypt libmcrypt-devel libpng-
devel
Download các gói cài
Apache:
/>2.2.9.tar.bz2
PHP:
/>5.2.6.tar.bz2
MySQL:
/>s/MySQL-5.0/mysql-5.0.51b.tar.gz
Biên dịch MySQL
Tạo Group và User dành riêng cho MySQL
groupadd mysql
useradd -g mysql mysql
Xả nén bộ cài
tar -vxzf mysql-5.0.51b.tar.gz
Biên dịch MySQL
cd mysql-5.0.51b
Xem các lựa chọn thêm khi biên dịch:
./configure –help | less
Các lệnh cần dùng để biên dịch:
Biên dịch MySQL
./configure \
prefix=/usr/local/mysql \
localstatedir=/usr/local/mysql/data \
with-unix-soket-path=/usr/local/data \
disable-maintainer-mode \
with-mysqld-user=mysql \
enable-large-files-without-debug \
without-comment \
without-bench
make
make install
Biên dịch MySQL
Tạo thư mục chứa database:
mkdir /usr/local/mysql/data
Chạy Script tạo mẫu database
./scripts/mysql_install_db
Gán quyền đọc ghi và thực thi trong thư mục chứa
database:
chown -R root:mysql /usr/local/mysql
chown -R mysql:mysql /usr/local/mysql/data
Biên dịch MySQL
Tạo file cấu hình cho MySQL
cp ./support-files/my-medium.cnf /etc/my.cnf
chown root:sys /etc/my.cnf
chmod 644 /etc/my.cnf
Đăng ký các thư viện, dịch vụ và tạo script cho
MySQL tự động chạy
echo "/usr/local/mysql/lib/mysql" >>
/etc/ld.so.conf
ldconfig
Biên dịch MySQL
cp ./support-files/mysql.server
/etc/rc.d/init.d/mysql
chmod +x /etc/rc.d/init.d/mysql
chkconfig mysql on
cd /usr/local/mysql/bin/
for file in *; do ln -s /usr/local/mysql/bin/
$file /usr/bin/$file;
done
Khởi động MySQL
service mysql start
Biên dịch MySQL
Kiểm tra MySQL:
mysqladmin version
Đổi password mặc định của MySQL:
mysqladmin -u root password “new-password”
Biên dịch MySQL
Kiểm tra lại mật khẩu:
Biên dịch và cấu hình Apache và
PHP
Xả nén các bộ cài:
tar -vxjf httpd-2.2.9.tar.bz2
tar -vxjf php-5.2.6.tar.bz2
Biên dịch Apache:
cd httpd-2.2.9
Biên dịch Apache với các thư viện động và các
module cần thiết
Biên dịch Apache
./configure \
prefix=/usr/local/apache2 \
enable-shared=max \
enable-unique-id \
enable-rewrite \
enable-dav \
enable-dav-lock \
enable-logio \
enable-headers \
enable-ssl \
enable-vhost-alias \
enable-suexec \
enable-deflate \
enable-module=so
make & make install
Biên dịch PHP
./configure prefix=/usr/local/php with-
apxs2=/usr/local/apache2/bin/apxs with-
curl=/usr/lib with-gd enable-inline-
optimization disable-debug enable-gd-native-
ttf with-ttf with-gettext with-jpeg-
dir=/usr/lib with-freetype-dir=/usr/lib
with-kerberos with-openssl with-mcrypt
with-mhash with-mysql=/usr with-pear
with-png-dir=/usr/lib with-zlib with-zlib-
dir=/usr/lib enable-zip enable-bcmath
enable-calendar enable-ftp enable-magic-
quotes enable-sockets enable-mbstring
enable-wddx=shared enable-xml with-
regex=system
Biên dịch PHP
make
make install
Tạo file cấu hình cho PHP
cp php.ini-dist /usr/local/php/lib/php.ini
Cấu hình Apache và PHP
Tạo các liên kết nhanh cho các file cấu hình:
ln -s /usr/local/php/lib/php.ini
/etc/php.ini
ln -s /usr/local/apache2/conf/httpd.conf
/etc/httpd.conf
Cấu hình Apache dịch được các file PHP:
Sửa file httpd.conf
vi /etc/httpd.conf
Cấu hình Apache và PHP
Tìm đến dòng:
AddType application/x-gzip .gz .tgz
Thêm vào dòng:
AddType application/x-httpd-php .php
Tìm đến đoạn:
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
Thay bằng:
Cấu hình Apache và PHP
<IfModule dir_module>
DirectoryIndex index.php index.htm
index.php3 index.html
</IfModule>
Đăng ký các thư viện của Apache và PHP:
echo "/usr/local/apache2/lib/" >>
/etc/ld.so.conf
ldconfig
cd /usr/local/apache2/bin/
for file in *; do ln -s
/usr/local/apache2/bin/$file /usr/bin/$file;
done
Cấu hình Apache và PHP
cd /usr/local/php/bin/
for file in *; do ln -s /usr/local/php/bin/
$file /usr/bin/$file;
done
Tạo Script chạy tự động cho apache:
ln -s /usr/local/apache2/bin/apachectl
/etc/rc.d/init.d/httpd
chmod +x /etc/rc.d/init.d/httpd
ln -s /etc/rc.d/init.d/httpd
/etc/rc.d/rc3.d/S90httpd
Bật Apache và thử nghiệm
Bật Apache
service httpd start
Kiểm tra:
vi /usr/local/apache2/htdocs/phpinfo.php
<?php
phpinfo();
?>
Tại máy khác trong mạng gõ
http://ipserver/phpinfo.php
CHÚ Ý
Các gói chúng ta cài đặt ở đây là mới
nhất.
Đây mới chỉ là cấu hình cơ bản nhất cho
một LAMP Server.
KẾT LUẬN
Việc cài đặt này sẽ khó khăn đối với những ai
mới bắt đầu tìm hiểu về hệ điều hành Linux.
Khi cài đặt như trong bài chúng ta sẽ có được
một server mà chỉ chạy những cái ta cần do đó
tính bảo mật tương đối cao.
Hiện tại để hoàn thiện thêm thì cần tìm hiểu thêm
các module đã có trong bài để có thể chạy được
một LAMP Server mạnh và bảo mật.
THANK YOU!!!