Archive

Archive for the ‘Web Server’ Category

Gõ không www chuyển thành có www với htaccess

Một số cấu hình nhanh với htaccess

Gõ tên miền & chuyển tên miền có www

Ví dụ: khi bạn gõ lên trình duyệt panpic.vn thì website sẽ chuyển qua http://www.panpic.vn

Cấu hình htaccess


RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

Ngược lại gõ http://www.panpic.vn chuyển về không có www


RewriteEngine On
RewriteCond %{HTTP_HOST} !^your-domain\.com$ [NC]
RewriteRule ^(.*)$ http://your-domain.com/$1 [R=301,L]

Chúc các bạn thành công

nhantam
thiết kế web Panpic

Amazon cloud hosting and xftp

Có thể gọi tiêu đề bằng: Dung Xftp đăng nhập vào hosting cloud của Amazon.

Hiện tại hosting cloud của Amazon khá phổ biến, thậm chí Amazon còn cho phép tạo VPS miễn phí một năm, trên các diền đàn IT có rất nhiều bài hướng dẫn các bạn tạo VPS miễn phí.

Hosting cloud phổ biến ở Mỹ, Châu Âu & Một số nước châu Á như Japan & Singapore. Khi làm việc với các khách hàng nước ngoài các bạn thường gặp một chút khó khăn thao tác với hosting’s Amazon cloud, cụ thể là việc upload & download file từ Amazon cloud, vì Cloud của Amazon chứng thực tài khoản bằng Public key, khác rất nhiều so với chứng thực bằng User & password như các hosting share.

Có rất nhiều cách để quản lý Amazon cloud cũng như download & upload file, hôm nay nhantam giới thiệu một cách cơ bản dùng Xftp giống như các tool FTP phổ biến khác.

Bước 1: Download Xftp
Có rất nhiều nguần để download, nhưng nhantam download từ link sau: http://www.thinstallsoft.com/xftp-portable/

Bước 2: Cài đặt Xftp
…..

Bước 3: Làm việc với Xftp (đăng nhập Amazon cloud)
mở Xftp / File / New

Xftp manager Amazon Cloud

Xftp manager Amazon Cloud

Tham số:
Name: các bạn đặt tên bất kỳ, hoặc đặt theo tên miền, ở đây tên miền của tôi là http://www.panpic.com.vn
Host: nhập chuỗi hosting, khi đăng ký Amazon cung cấp
Protocal: chọn SFTP
Port Number: 22

Login
các bạn chọn User authentication agent
Method: Public Key
Username: do Amazon cung cấp

User Key: nhập chuột Browse chọn chuỗi chứng thực Public key do Amazon cung cấp, chuỗi này có phần đuôi mở rộng là .pem

Nhấp chuột OK

Lúc này các bạn có thể nhìn thấy giao diện đồ họa của Xftp & các file trên hosting của Amazon cloud như khi dùng các tool FTP thông thương

nhantam
Web design & Developer in Ho Chi Minh (Vietnam)

 

 

Các lệnh cơ bản thường dùng của linux

1. Các lệnh hệ thống
exit: thoát khỏi cửa sổ dòng lệnh.
logout: tương tự exit.
reboot: khởi động lại hệ thống.
halt: tắt máy.
startx: khởi động chế độ xwindows từ cửa sổ terminal.
mount: gắn hệ thống tập tin từ một thiết bị lưu trữ vào cây thư mục chính.
unmount: ngược với lệnh mount.
/usr/bin/system-config-securitylevel-tui: Cấu hình tường lửa và SELinux

2. Lệnh xem thông tin thường dùng
cat /proc/cpuinfo: Tìm chi tiết kỹ thuật của CPU
cat /proc/meminfo: Bộ nhớ và trang đổi thông tin
lspci: Xem thông tin mainboard
uname -r: Xem hạt nhân phiên bản
gcc -v: Compiler phiên bản nào tôi đã cài đặt.
/sbin/ifconfig: Xem các địa chỉ IP của bạn.
netstat: xem tất cả các kết nối.
lsmod: Những gì được nạp module hạt nhân
last: xem những ai đã login vào hệ thống
df: Xem dung lượng ổ đĩa cứng
free -m: xem dung lượng sử dụng bộ nhớ
netstat -an |grep :80 |wc -l: xem có bao nhiêu kết nối đến cổng 80

3. Các lệnh thao tác trên tập tin
ls: lấy danh sách tất cả các file và thư mục trong thư mục hiện hành.
pwd: xuất đường dẫn của thư mục làm việc.
cd: thay đổi thư mục làm việc đến một thư mục mới.
mkdir: tạo thư mục mới.
rmdir: xoá thư mục rỗng.
cp: copy một hay nhiều tập tin đến thư mục mới.
mv: đổi tên hay di chuyển tập tin, thư mục.
rm: xóa tập tin.
wc: đếm số dòng, số kí tự… trong tập tin.
touch: tạo một tập tin.
cat: xem nội dung tập tin.
vi: khởi động trình soạn thảo văn bản vi.
df: kiểm tra dung lượng đĩa.
du: xem dung lượng đĩa đã dùng cho một số tập tin nhất định
Ví dụ: Xem dung lượng của một thư mục:  du -hs /folder/
tar -cvzpf archive.tgz /home/example/public_html/folder: nén một thư mục
tar -tzf backup.tar.gz: liệt kê file nén gz
tar -xvf archive.tar: giải nén một file tar
unzip file.zip: giải nén file .zip
wget: download một file.
chown user:user folder/ -R: Đổi owner cho toàn bộ thư mục vào file.
tail 100 log.log: Xem 100 dòng cuối cùng của file log.log.

4. Các lệnh khi làm việc trên terminal
clear: xoá trắng cửa sổ dòng lệnh.
date: xem ngày, giờ hệ thống.
find /usr/share/zoneinfo/ | grep -i pst: xem các múi giờ.
ln -f -s /usr/share/zoneinfo/Asia/Ho_Chi_Minh /etc/localtime: Đổi múi giờ máy chủ về múi giờ Việt Nam
date -s “1 Oct 2009 18:00:00”: Chỉnh giờ
cal: xem lịch hệ thống.
5. Lệnh quản lí hệ thống
rpm: kiểm tra gói đã cài đặt hay chưa, hoặc cài đặt một gói, hoặc sử dụng để gỡ bỏ một gói.
ps: kiểm tra hệ thống tiến trình đang chạy.
kill: dừng tiến trình khi tiến trình bị treo. Chỉ có người dùng super-user mới có thể dừng tất cả các tiến trình còn người dùng bình thường chỉ có thể dừng tiến trình mà mình tạo ra.
top: hiển thị sự hoạt động của các tiến trình, đặc biệt là thông tin về tài nguyên hệ thống và việc sử dụng các tài nguyên đó của từng tiến trình.
pstree: hiển thị tất cả các tiến trình dưới dạng cây.
sleep: cho hệ thống ngừng hoạt động trong một khoảng thời gian.
useradd: tạo một người dùng mới.
groupadd: tạo một nhóm người dùng mới.
passwd: thay đổi password cho người dùng.
userdel: xoá người dùng đã tạo.
groupdel: xoá nhóm người dùng đã tạo.
gpasswd: thay đổi password của một nhóm người dùng.
su: cho phép đăng nhập với tư cách người dùng khác.
groups: hiển thị nhóm của user hiện tại.
who: cho biết ai đang đăng nhập hệ thống.
w: tương tự như lệnh who.
man: xem hướng dẫn về dòng lệnh như cú pháp, các tham số…
Lưu ý: hệ điều hành Linux phân biệt chữ hoa và chữ thường.

Nguần sưu tầm

PHP Developer
nhantam

Lighttpd optimization with mod expire to controls the expire http header

Lighttpd comes with mod_expire which controls the Expire header in the Response Header of HTTP/1.0 messages. It is useful to set it for static files which should be cached aggressively like images, stylesheets or similar.

Step 1:
# vi /etc/lighttpd/modules.conf
bạn khai báo modules tải mode_expire khi chạy như hình sau:
lighttpd performance

và bỏ dấu # để khai bái với modules là nap mod_expire như hình sau:
lighttpd optimization

Step 2:
# vi /etc/lighttpd/conf.d/expire.conf
Bạn cache một số thư mục ít cập nhật như css, js, images,..vv
như ví dụ sau:

lighttpd mod expire

sau đó restart lại lighttpd

# service lighttpd restart

Ví dụ trên sẽ tối ưu lighttpd khi client mở web.

nhantam
PHP Developer

lighttpd rewrite thêm www vào domain

1/ Bạn muốn khi người dùng gõ:
yourdomain.com thì nó tự động chuyển http://www.yourdomain.com

$HTTP[“host”] =~ “^yourdomain\.com$”
{
url.redirect = ( “^/(.*)” => “http://www.yourdomain.com/$1” )
}

2/ và ngược lại ví dụ trên (muốn bỏ www tại url)

$HTTP[“host”] =~ “^www\.(.*)”
{
url.redirect = ( “^/(.*)” => “http://%1/$1” )
}

Problem with Lighttpd Rewrite url and character ‘dot’

vấn đề rewrite với lighttpd còn khá mới mẻ. lighttpd chưa phố biến như apache, nên các tài liệu về rewrite của lighttpd còn rât hạn chế, ngay cả trang chủ của lighttpd cũng chỉ có các khái niệm rewrite của lighttpd ở dạng cơ bạn. Tùy thuộc vào ứng dựng web của bạn có đường dẫn phức tạp như thế nào để phát triển thêm.

Về cơ bản bạn chỉ cần rewrite như dưới đây là web có thể chạy ứng dụng web.

http://www.mydomain.com/news/123 //work OK

$HTTP[“host”] =~ “^(www\.)?mydomain.com$” {
server.document-root = “/var/www/lighttpd/my_app”
server.error-handler-404 = “/index.php”

url.rewrite-once = (
“/(.*)\.(.*)” => “$0”,
“/(css|files|img|js|stats)/” => “$0”,
“^/([^.]+)$” => “/index.php/$1”
)
}

Nhưng với các ứng dựng web có đường dẫn phức tạp hơn
Ví dụ: http://www.mydomain.com/member/target?op=123email=test@yahoo.com //not work
thì đoạn rewrite bên trên của lighttpd sẽ không xử lý được. Ứng dựng không làm việc

Dưới đây tôi hướng dẫn các bạn cấu hình lighttpd rewrite với url xuất hiện ký tự dấu chấm (dot)

$HTTP[“host”] =~ “^(www\.)?mydomain.com$” {
server.document-root = “/var/www/lighttpd/my_app”
server.error-handler-404 = “/index.php”
url.rewrite-once = (
“^/(css|images|upload|sf|files|img|js|stats)/(.*)” => “$0”,
“^/([^.*]+)\.([^.*]+)$” => “/index.php/$1.$2”,
“^/([^.*]+)$” => “/index.php/$1/”
)
}

Lúc này đường dẫn url http://www.mydomain.com/member/target?op=123email=test@yahoo.com chạy OK.

Chúc các bạn thành công

Tham khảo thêm Regular Expressions của lighttpd

• . (full stop) – match any character
• \* (asterisk) – match zero or more of the previous symbol
• \+ (plus) – match one or more of the previous symbol
• ? (question) – match zero or one of the previous symbol
• \\? (backslash-something) – match special characters
• ^ (caret) – match the start of a string
• $ (dollar) – match the end of a string
• [set] – match any one of the symbols inside the square braces.
• [^set] – match any symbol that is NOT inside the square braces.
• (pattern) – grouping, remember what the pattern matched as a special variable
• {n,m} – from n to m times matching the previous character (m could be omitted to mean >=n times)
• (?!expression) – match anything BUT expression at the current position. Example: “^(/(?!(favicon.ico$|js/|images/)).*)” => “/fgci/$1”
• Normal alphanumeric characters are treated as normal

nhantam
Web Developer

CentOS php crontab, wget cron job

1/ Cron & cron tab
– Cron cho phép thiết lập các tác vụ một các tự động.
– Crontab là file chứa lịch biểu.

2/ Cron làm việc như thế nào ?

– Các lệnh thường dùng:
+ tạo hoặc sửa cron schedule: crontab -e
khi màn hình hiện ra, nhẫn phím a để viết hoặc sửa / sau khi làm xong nhấm phím Esc / sau đó gõ dấu hai chấm và wq (:wq để lưu lại & thoát)
+ kiểm tra & hiển thị danh sách các cron: crontab -l
+ Xoá: crontab -r
+ Thông báo trước khi xóa: crontab -i

– Thời gian biểu thực thi:
* * * * * command to be executed
– – – – –
| | | | |
| | | | —– Day of week (0 – 7) (Sunday=0 or 7)
| | | ——- Month (1 – 12)
| | ——— Day of month (1 – 31)
| ———– Hour (0 – 23)
————- Minute (0 – 59)

3/ Ví dụ tôi tạo một cron gọi thực thi một file.php với đường dẫn domain như sau:

– tạo file: testcron.php
// Phai testcron.php có nội dung là các lệnh hàm php làm việc gì đó tùy ý bạn.

– tạo cron
# crontab -e

# test crontab
*/1 * * * * /usr/bin/wget -q http://www.my_domain.com/testcron.php 2>&1

// schedule trên sẽ chạy 1 lần / 1 phút gọi file testcron.php

// nhấm phím Esc
// sau đó :wq để lưu vào thoát

nhantam
Web Developer