Tải bản đầy đủ (.pdf) (11 trang)

Programming HandBook part 45 docx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (163.48 KB, 11 trang )


Thiết lập web server trên windows

Các bạn thân mến bài viết về vấn đề này hiện nay có rất nhiều nên tớ mạo
muội dùng một bài viết theo tớ là khá chi tiết ( hợp với VTV4) của bạn:
Nguyễn Minh Thắng
Tin4-K44, khoa CNTT, ĐHBK Hà Nội


Hiện nay có rất nhiều bạn có nhu cầu học về lập trình web. Do chưa biết cách
cài đặt web server trên máy của mình nên các bạn thường phải viết trên máy,
sau đó upload lên một web server nào đó. Việc này rất tốn tjời gian, tiền bạc,
gây khó khăn cho người lập trình. Bài viết này sẽ hướng dẫn các bạn cài một
web server cùng với một số công cụ hỗ trợ khác lên máy tính của mình.
CÀI ĐẶT WEB SERVER
Web server phổ biến nhất hiện nay là Apache, hiện chiếm khoảng gần 60% thị
trường máy chủ Web trên thế giới. Trước tiên các bạn hãy lên trang
để tải xuống (download)
Apache. Nếu trên máy đã có Windown Installer (WinME, Win2k, XP) thì cac
bạn nên download file .msi, còn nếu không thì hãy download file .exe (dung
lượng lớn hơn). Quá trình cài đặt rất đơn giản, bạn chỉ cần chạy file vừa
download về, chấp nhận các thiết lập mặt định. Sau khi cài xong, mở trình
duyệt và gõ vào địa chỉ http://localhost để kiểm tra. Nếu mọi việc suôn sẻ thì
bạn sẽ thấy một trang web thông báo rằng bạn đã cài Apache thành công.
Để thay thế trang web mặc định đó bằng trang web của mình, b
ạn cần phải sửa
file cấu hình của Apache (mặc định là C:\Program Files\Apache
Group\Apache\conf\httpd.conf ). Mở file này, tìm đến dòng chứa lệnh
DocumentRoot, hãy thay tham số trên bằng thư m
ục sẽ chứa các trang web của
bạn. Ví dụ: DocumentRoot "C:/myweb". Chú ý: Đối với các đường dẫn trong


Apache bạn nên dùng dấu "/", còn nếu bạn muốn dùng dấu "\" thì phải gõ dấu
này hai lần, ví dụ C:\\myweb.
Khởi động lại Apache. Nếu bạn cài Apache trên Windows họ NT (NT 4.0,
Win2000, WinXP) Apache có cung cấp shortcut để khởi động lại nó, còn nếu
cài trên Win9x, Me thì bạn cần đóng cửa sổ Apache và sau đó chạy lại.
PHP VÀ MYSQL

Cùng với Apache, PHP và MySQL đã trở thành chuẩn trên các máy chủ Web.
Rất nhiều phần mềm web mạnh sử dụng PHP và MySQL (vBulletin, PHP
Nuke, PostNuke). vì th
ế khi cài Apache, bạn cũng nên cài luôn cả hai công cụ
này để tiện cho việc lập trình.
PHP VÀ MYSQL LÀ GÌ
PHP là một ngôn ngữ lập trình cho web server. Điều này có nghĩa là các PHP
scripts sẽ được chạy trên server và chỉ có kết quả dưới dạng mã HTML là đư
ợc
trả về cho client. PHP có cú pháp tương tự C/C++, rất dễ học và chạy nhanh.
MySQL là một database server có tốc độ nhanh hiện nay, thường được sử
dụng chung với PHP trong các trang web cần sử dụng đến cơ sở dữ liệu.
CÀI ĐẶT PHP VÀ MYSQL
Trước hết bạn phải lên các trang và
để download các phiên bản cho windowns
của PHP và MySQL.
Với MySQL, chỉ cần download file .zip, giải nén và chạy trình setup. Bạn sẽ
được yêu cầu nhập mật mã mà bạn muôn thiết lập cho người quản trị MySQL.
Vì là người dùng cá nhân nên bạn có thể không cần đặt mật mã. Username của
người quản trị sẽ là root, địa chỉ của Database server là localhost (bạn sẽ cần
những thông tin này khi cài đặt các Web Application có sử dụng MySQL).
Còn với PHP, việc cài đặt phức tạp hơn một chút. Bạn cần phải download
file.zip. giải nén nó vào đâu đó, ví dụ C:\PHP.

Bạn cần chèn những dòng sau vào file cấu hình của Apache để setup PHP ở
chế độ CGI:
- ScriptAlias/php/"c:/php"
- AddType application/x-httpd-php .php .phtml
- Action application/x-httpd-php"/php/php.exe"
N
ếu bạn muốn sử dụng PHP như là một module của Apache, bạn nên chuyển
file php4ts.dll sang thư mục windows/system (với win9x/Me/XP) hoặc
winnt/system32 (với windowns NT/2000). Sau đó bạn có thể thêm các dòng
sau vào file cấu hình của Apache:
- LoadMoule php4_module c:/php/sapi/php4apache.dll
- AddType application/x-httpd-php .php .phtml
Nh
ớ khởi động lại Apache server.
CÀI ĐẶT PERL
Perl là một ngôn ngữ lập trình đa dụng, đã có lịch sử lâu đời. Perl rất phổ biến
trong thế giới Unix/Linux. hiện nay Perl cũng được dùng r
ất nhiều cho việc lập
trình web, Perl không chỉ chạy trên Unix/Linux mà còn trên cả windows nữa.
Trong lập trình web, perl thường được dùng với giao thức CGI (Common
Gateway Interface) vì thế nó còn được gọi là CGI - Perl. Cũng như PHP, CGI -

Perl là ngôn ngữ ở phía server. Nó được chạy trên server, chỉ có kết quả dạng
HTML được trả về cho người dùng. Vì thế người truy nhập trang web không
cần phải có perl trên máy, mà chỉ cần trình duyệt là đủ.
Trình dịch perl phổ biến trên Windown hiện nay là ActivePerl
(
Bạn hãy download ActivePerl về và cài đặt vào máy.
Để ActivePerl làm việc được với Apache, bạn cần thực hiện tiếp một số bước
sau:

N
ếu bạn muốn tât cả các file perl scripts của mình trong một thư mục, hãy
thêm dòng sau vào trong file cấu hình của Apache (bạn có thể dùng bất cứ thư
mục đã tồn tại nào).
ScriptAlias/cgi-bin/"C:/myweb/cgi-bin/"
Bất cứ file nào đặt trong thư mục C:/myweb/cgi-bin/ (và các thư mục con của
nó ) sẽ được coi là CGI script. các file CGI cũng cần phải thiết lập đường dẫn
chính xác đến trình dịch Perl. Apache mô phỏng cú pháp của Unix, bởi vậy
bạn cần đặt một dòng như sau vào dong đầu tiên của file CGI cần chạy.
#!C:/perl/bin/perl.exe
Hãy thay đường dẫn ở trên bằng đường dẫn đến trình dịch perl của bạn.
Còn nếu bạn muốn thực hiện các perl scrípt dựa theo phần tên mở rộng của nó
hãy thêm dòng sau vào file cấu hình:
AddHandler cgi-script cgi pl
Mặc định thì các thư mục chưa có quyền thực hiện các file CGI, bạn cần thêm
dòng sau vào file cấu hình;
<Directory C:/myweb>
Optión Indexs FollowSymlinks + ExecCGI
</Directory>
C:\myweb là thư mục Web gốc của bạn (được đặt bằng chỉ thị DocumentRoot
trong file cấu hình Apache). Nếu bạn đặt thư mục khác thì hãy thay đường dẫn
tương ứng vào chỉ thị Directory ở trên.
KẾT LUẬN
Bây giờ thì bạn đã có một web server đầy đủ chức năng của riêng mình và có
thể viết các ứng dụng web bằng PHP hay CGI-Perl ngay trên máy chủ của
mình. Chúc các bạn lập trình vui vẻ.
Tài liệu tham khảo: PHP Manual, Installation; ActivePerl FAQ, Web Server
Config.




Vận hành PHP
Để sử dụng được hiệu quả một ngô ngữ lập trình bạn phải biết cách vận hành nó .
Cách vận hành là một trong những yếu tố quan trọng nhất của PHP .Thực sự ban sẽ chẳng
làm được gì nếu không có chúng .Chúng được dùng để sửa đổi và làm việc với các chuỗi
,những con số .Chúng cũng rất hòan thiện trong việc chi phối tốc độ của chương trình mà
bạn sẽ tìm hiểu sau đây:
Vậy các cách vận hành chính xác là gì ? Định nghĩa ngắn gọn thì một phương thức vận
hành là một quy ước để sử dụng để việc vận hành đạt kết quả tốt .Phương thức vận hành
hiện nay được biết đên như một vấn đề không thể bỏ qua khi học PHP .Trong ngôn ngữ
PHP các phương thức vận hành dễ dàng tập hợp theo nhóm tùy theo chức năng .
+ Phương thức vận hành
Ðây là một trong những cách vận hành phổ biến mà bạn sẽ được biết đến trong những bài
viết về PHP .Như đã giới thiệu ở bài trước phương thức vận hành cho phép bạn có thể sửa
đổi .Bạn có thể sửa đổi các số nguyên ,các xâu và thậm chí là các kết quả :

$var = "Hi there";
$var = 1;
$var = myfunction();

+Phương thức vận hành tương thích :
Chức năng này cho phép bạn có thể sửa đổi từ cái này sang cái khác .Bạn có thể sửa đổi
các chuỗi ,các thay đổi khác và thậm chí là kết quả nữa :

$var = "test";
$var2 = "This is a ".$var;
print $var2; This would output "This is a test"
You can also use whats called the Assignment Concatenation Operator to append a new
value to the value an existing variable:
$var = "this is a test";

$var .=" of the emergency broadcast system";
print $var; This would output "This is a test of the emergency broadcast
system"
This ability can be especially useful, as we will explore a little later on.


+ Vận hành theo phương thức toán học
Cũng giống như toán học ,phương thức vận hành này trong PHP được sử dụng để làm vi
ệc
với các con số các phép toán như cộng trừ nhân chia :
Operand

Name

Sample

Description

+ Cộng $var + $var2 Cộng hai giá trị với nhau
- Trừ $var - $var2 Trừ giá trị 1 cho giá trị hai
* Nhân $var * $var2 Nhân 2 giá trị với nhau
/ Chia $var/$var2 Chia giá trị 1 cho giá trị 2
% Tính % $var%$var2
Tính % ( Ít dùng)

Bốn phép tính đầu tiên trên có vẻ rất quan trọng với ban.Chúng là những phép tính mà bạn
đã bieest khi còn học toán Sơ cấp.Cón cách tính % thì không phổ biến lắm vì không mấy
hiệu quả.

+ Phương thức vận hành tăng giảm :

Chương trình PHP có tính năng hỗ trợ cho cách vận hành tăng giảm các chữ số .Đây là m
ột
cách ngắn gọn thể hiện giá trị tăng hay giảm.

Operand

Name

Sample

Description

++ Tăng sau $var++;
Trở về $var, sau đó tăng thêm 1 đơn
vị
++ Tăng trước ++$var;
Tăng $var thêm 1, sau đó trở về như
cũ.
Giảm sau $var ; Trở về $var, sau đó tăng thêm 1.
Giảm trước $var; Giảm $var đi 1, sau đó trở về như cũ.


Ví dụ :

$x = 1;

$x++; $x tăng giá trị len 2 lần
$x = 4;
print $x; 4 kết quả là giảm trước 4 lần sau đó $x sẽ giảm


+Phương thức so sánh :
TRong chương trình PHP bạn thường thấy rất cần thiết khi phải xem xét mối quan hệ giữa
giá trị này với giá trị kia.Phương thức so sánh cho phép bạn thử nghiệm khi nào thì số này
lớn hơn ,nhỏ hơn hay bằng số kia .Không giống như phương thức tóa học ( Có thể giữ
nguyên giá trị) phương thức so sánh đối chíêu kết quả là đúng là sai và thường dùng để
thông kê.
Operand

Name

Sample

Description

== Bằng nhau
$var ==
$var2
Giá trị 1 bằng giá trị 2 có đung hay
không
!=
Không bằng
nhau
$var !=
$var2
Giá trị 1 không bằng giá trị hai có
đúng không
< Nhỏ hơn
$var <
$var2
Giá trị 1 nhỏ hơn giá trị hai có đúng

không
> Lớn hơn
$var >
$var2
Giá trị 1 lớn hơn giá trị hai có đúng
không
<=
Nhỏ hơn hoặc
bằng
$var <=
$var2
Giá trị 1 nhỏ hơn hoặc bằng giá trị
hai có đúng không
>=
Lớn hơn hoặc
bằngl
$var >=
$var2
Giá trị 1 lớn hơn hoặc bằng giá trị
hai có đúng không

Phép tính bằng hoặc không bằng trong phương thức này cũng được dùng để xác định nhữn
giá trị không phải bằng số có bằng nhau hay không. Có thể lấy một ví dụ : Cứ tưởng tượng
một tình huống mà bạn đang phát triển một hệ thống user login và cần phải xem password
của user đăng nhập giông của bạn :

<?php

$storedpassword = "mypassword";
$enteredpassword = "mypassword";


if ($storedpassword == $enteredpassword) {
print "The entered password was correct!";
}else {
print "The entered password was wrong!";
}

?>

Để xem đó có phải là một mật mã giả hay không : " Nếu pass bạn đẫ đăng kí giông như
pass vừa đăng nhập,các pass sẽ khớp và pass vừa đăng nhập là đúng thì phương thức

Bạn cũng có thể đổi lại cũng với tính chất tương tự :


<?php

$storedpassword = "mypassword";
$enteredpassword = "mypassword";

if ($storedpassword != $enteredpassword) {
print "The entered password was wrong!";
}else {
print "The entered password was correct!";
}

?>

Bạn cũgn có thể đoán được việc khớp nhau là một tình hu
ống rất nhạy cảm ."my password"

không giống như "My password" .Hãy cố gắng thay đổi những giá trị khác để đăng nhập
vào pass và cách vận hành của ngôn ngữ lập trình khi khai pass không giống nhau.
Ngoài tính năng so sánh trên PHP4 c
ũgn thêm 2 tính năng mới cho bạn biết nếu 2 giá trị
bằng nhau nhưng cũng phải kiểm tra khi chúng cùng kiểu.Những kiểu này có quan hệ mật
thiết với nhay trừ khi chúng sử dụng 1 tín hiệu giông nhau:

Operand

Name

Sample

Description

=== Giống nhau
$var ===
$var2
Giá trị 1 bằng giá trị 2 và thuộc
cùng một dạng có đúng không?
!==
Không giống
nhau
$var !== $var2

Giá trị 1 khác giá trị 2 và thuộc cùng
một dạng có đúng không?

+ Phương pháp Logic
Điều gì sẽ sảy ra nếu bạn muốn xem xét hơn nhiều điều kiện để biết nó đúng hay sai ?

Quay lại ví dụ của một user login bạn buộc kiểm tra chắc chắn xem tên của user và pass có
khớp nhau hay không bạn có thể làm như sau :


<?php

$storedusername = "user";
$enteredusername = "user";

$storedpassword = "mypassword";
$enteredpassword = "mypassword";

if ($storedusername == $enteredusername AND $storedpassword ==
$enteredpassword) {
print "The entered username and password were correct!";
} else {
print "The entered username and password were wrong!";
}

?>

Kí tự "AND" nằm giữa hai điều kiện cho thấy ngôn ngữ lập trình phải kiểm tra cả hai phần
của câu lệnh là đúng . Nếu đúng thì kết quả sẽ được thông báo : "The entered username
and password were correct!"
PHP cũng hỗ trợ một số tính năng khác cho phương thức Logic này

Operand

Name


Sample

Description

AND And
$var AND
$var2
Is true if both values are true.
OR Or $var OR $var2 Is true if either value is true.
XOR Xor
$var XOR
$var2
Is true if either value is true, but not
both.
&& And $var && $var2 Is true if both values are true.
|| Or $var || $var2 Is true if either value is true.
! Not !$var
Is true if the value is not true (ex. if the
variable doesnt exist).
Sau khi xem bảng này có thể bạn sẽ băn khoăn tại sao lai có hai tính năng khác nhau của
AND và OR.Một phần của câu trả lời này nàm trong phương thức yêu tiên

+ Phương thức ưu tiên :
Xem ví dụ sau :
$x = 9 + 1 * 10
Bởi vì chúng tôi thực hiện phép tính từ trái sang phải nên bạn phải giả định $x=100 ( 9
cộng 1 nhân 10= 100) .Tuy nhiên vì thứ tự ưu tiên nen có thể bạn đã sai .Phép nhân thường
đựơc ưu tiên trứơc phép cộng vì thế phải thực hiện như sau : ( 1 nhân 10 cộng 9 =19)

Các phương thức yêu tiên tương tự cũng được ứng dụng trong chương trình PHP .Hãy xem

biểu đồ dưới đây đê xem các thứ tự phép tính.Các phép tính được liệt kê cùng một hàng
được ưu tiên như nhau:

Thứ tự ưu tiên
cao nhất
* / %
+ - .
< <= > >=
&&
||
And
Xor
Thứ tự ưu tiên thấp
nhất
or

Bạn cũng có thể dùng ngoặc đơn cho phép tình được ưu tiên thực hiện trước

$x = (9 + 1) * 10

Như v
ậy là phép tính trong ngoặc đựơc thực hiện trứơc và kết quả =100
Cuối cùng :
Trong bài viết này tôi mới chỉ tóm tắt sơ lựơc những phương thức vận hành chung nhất
thường được sử dụng trong chương trình PHP .Cò có rất nhiều các tính năng khác mà bạn
có thể khám phá ra để ứng dụng trong ngôn ngữ lập trình .Kể các bài sẽ đư
ợc giới thiệu qua
các bài sau
Trong bài tiếp theo chúng ta sẽ điểm qua các tính năng khác và cách điều khiển cấu trúc
dựa vào các định nghĩa đựơc giới thiệu ở trên .




×