Cài đặt webserver NginX với CentOS 5.3,5.x ...
Nói qua về NginX: nginX là một http server và Mail Proxy server được viết ra bởi Igor Sysoev, người Nga,nginx là một trong số web servers sử dụng rộng rãi nhất thế giới: Apache, nginX, IIS...
1. Cài đặt pcre
2. Cài đặt pcre-devel
Mã:
|
yum install pcre-devel |
3. Cài đặt zlib
4. Cài đặt zlib-devel
Mã:
|
yum install zlib-devel |
5. Cài đặt openssl
6. Cài đặt openssl-devel
Mã:
|
yum install openssl-devel |
7. Bước quan trọng nhất, cài đặt nginX, nhưng cũng dễ dàng, đầu tiên bạn down source của nginX về
7.1 Giải nén
Mã:
|
tar xzvf nginx-0.6.32.tar.gz |
7.2 Compile
chuyển tới thư mục nginx-0.6.32 vừa giải nén xong
tiếp theo
Mã:
|
./configure --sbin-path=/sbin/nginx --conf-path=/usr/local/nginx/nginx.conf --pid-path=/usr/local/nginx/nginx.pid --with-http_ssl_module --with-md5=auto/lib/md5 --with-sha1=auto/lib/sha1 |
Câu lệnh trên chỉ trên 1 dòng, giải thích 1 chút:
--sbin-path=prefix: prefix ở đây là đường dẫn tới process chính của nginx
--conf-path=prefix: prefix ở đây là đường dẫn tới thư mục chứa file cấu hình chính của nginx
--pid-path=prefix: prefix là đường dẫn đến file process id của nginx
--with-module: tương tự như enable khi bạn compile apache, khi compile đi theo with module nào thì module đó được kích hoạt.
Chạy xong thì bạn đã có một webserver rồi đấy.
8. Cấu hình cho nginx:
Để ý ở trên file cấu hình của nginx nằm trong đường dẫn /usr/local/nginx/nginx.conf, để sửa đổi bạn có thể dùng vi, nano, gedit, dùng gedit cho dễ
vi /usr/local/nginx/nginx.conf
file cấu hình nguyên thủy của nginx có dạng như thế này:
Mã:
|
#user nobody;
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] $request '
# '"$status" $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
# another virtual host using mix of IP-, name-, and port-based configuration
#
#server {
# listen 8000;
# listen somename:8080;
# server_name somename alias another.alias;
# location / {
# root html;
# index index.html index.htm;
# }
#}
#HTTPS server
#server {
# listen 443;
# server_name localhost;
# ssl on;
# ssl_certificate cert.pem;
# ssl_certificate_key cert.key;
# ssl_session_timeout 5m;
# ssl_protocols SSLv2 SSLv3 TLSv1;
# ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
# ssl_prefer_server_ciphers on;
# location / {
# root html;
# index index.html index.htm;
# }
#}
} |
Mặc định webroot và các file cấu hình của nginx được lưu ở
/usr/local/nginx/
về mặc security thì thay đổi cái gì mặc định luôn là môt cách để attacker khó thâm nhập vào hệ thống của ta hơn, vì vậy....bạn thích move nhưng file cấu hình này đi đâu là quyền của bạn, nginX có một điểm hay ho là ta khơi động nó cùng với một file cấu hình nhất định, có nghĩa là sao? Có nghĩa là ta hoàn toàn có thể tạo ra nhiều file nginx.conf lưu ở nhiều nơi và mỗi lần start ta chạy với biến -c đường dẫn tới file cấu hình cụ thể đó. Như đã nói ở trên, việc bạn thay đổi đường dẫn của các file mime.types, nginx.pid, hay log, webroot, là tùy ở bạn, nhưng move đi đâu thì nhớ là lưu lại trong file nginx.conf đường dẫn tới file đã move là được, nên cái này bạn có thể tùy biến, không càn phải hướng dẫn bạn cũng có thể làm được.
Các thông số cụ thể về pid, worker_process, worker_connections tôi sẽ đi vào bài sau, vì bài này vừa viết vừa cài nên cũng chưa tìm hiểu nhiều 4.
9. Chạy nginX:
lúc đầu mò mãi không ra, vì không chịu đọc kĩ hướng dẫn sử dụng trc khi dùng, nhưng rồi cũng tìm ra:
Mã:
|
/sbin/nginx -c /usr/local/nginx/nginx.conf |
nếu bạn di chuyển file cấu hình đi nơi khác, thì thay đổi đường dẫn cho phù hợp.
10. Stop nginx:
Mã:
|
$ killall -u $USER -v -i nginx |
11. Chay nginx luc Server startup
Xem cac dich vu dang chay
Mã:
|
# chkconfig –add nginx |
Thanh Tung