1. Trang chủ
  2. » Giáo án - Bài giảng

Bài giảng - Giáo án: apache mysql php

50 422 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Giới thiệu về Apache, MySQL và PHP
Tác giả Đặng Thành Trung
Trường học Trường Đại Học Cần Thơ
Chuyên ngành Công nghệ Thông tin
Thể loại Bài giảng - Giáo án
Thành phố Cần Thơ
Định dạng
Số trang 50
Dung lượng 303,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Cấu hình Apache tt• Sau đây là một số khai báo thường gặp khi cấu hình Apache: – Listen: Khai báo web server sẽ được dùng tại IP nào và cổng nào.. Cấu hình Apache tt• một số khai báo t

Trang 1

Apache & MySQL & PHP



Đặng Thành Trung

Trang 2

1 Giới thiệu về Apache

• Là một WEB Server miễn phí được phát triển theo

địa chỉ: http://www.apache.org http://www.apache.org

• Các phiên bản 1.x và 2.x (mới nhất) khác nhau về

kiến trúc Chi tiết xin xem trong feature log.

Trang 4

1.2 Cài đặt Apache 2.x (Windows)

• Để cài đặt Apache trong Windows bằng chương trình

cài đặt tự động, cần download chương trình này về

từ website của Apache Thông thường những chương trình dạng này sẽ không hỗ trợ giao thức https.

• Quá trình cài đặt sẽ tự động sao chép tất cả các file

cần thiết vào thư mục chỉ định.

• Có thể sử dụng chương trình quản lý ở mức dịch vụ

để start, stop, restart, reload Apache hoặc khởi động bằng tay.

Trang 5

1.3 Cấu hình Apache

• Toàn bộ cấu hình của Apache đều được lưu dưới

dạng text.

• File cấu hình chính là httpd.conf File cấu hình chính là httpd.conf nằm trong thư mục

{apache_dir}\conf Trong file này có thể chứa các khai báo include đến những file cấu hình khác.

• Mỗi dòng trong file cấu hình đều mang 1 ý nghĩa

– Là khoảng trắng

– Là chú thích (bắt đầu bằng ký tự #)

– Là khai báo (gồm từ khóa và giá trị) Từ khóa và giá trị

Trang 6

1.3 Cấu hình Apache (tt)

• Toàn bộ tài liệu về Apache (bao gồm cả các khai báo

cấu hình) đều được cài đặt (mặc định) cùng với Apache Có thể truy cập vào tài liệu này thông qua URL (có dấu / cuối cùng)

http://<tênmáy | IP>/manual/

• Thông thường URL trên sẽ bị vô hiệu hóa (mặc định)

cho đến khi bỏ chú thích dòng “

cho đến khi bỏ chú thích dòng “Include Include

conf/extra/httpd-manual.conf ” trong file cấu hình chính (

chính (httpd.conf httpd.conf ) và restart lại Apache.

Trang 7

1.3 Cấu hình Apache (tt)

• Sau đây là một số khai báo thường gặp khi cấu hình

Apache:

– Listen: Khai báo web server sẽ được dùng tại IP nào và cổng

nào Có thể khai báo nhiều lần

– LoadModule: Khai báo các module được nạp vào khi Apache

khởi động Nên dùng để bỏ bớt các module không cần thiết hoặc nạp module do người dùng tự viết

– ServerName: Tên của server Nếu Apache không tìm được

tên của máy tính qua DNS thì khai báo này bắt buộc phải có

– DocumentRoot: Thư mục gốc của web server Cần lưu ý đến

quyền của hệ thống gán lên thư mục này đối với account dùng để chạy Apache

Trang 8

1.3 Cấu hình Apache (tt)

• một số khai báo thường gặp khi cấu hình Apache:

– DirectoryIndex: Khai báo các file mặc định

– AddDefaultCharset: Khai báo bảng mã mặc định của luồng

siêu văn bản trả về cho client

– Directory: Là khai báo khối (bên trong chứa các khai báo

con) dùng để định nghĩa quy tắc ứng xử của Apache đối với từng thư mục

– VirtualHost: Là khai báo khối, dùng để định nghĩa các web

server ảo theo tên trên một máy tính duy nhất

– Alias: Dùng để tạo các thư mục ảo.

Trang 9

2 Giới thiệu về MySQL

• Là một hệ quản trị cơ sở dữ liệu miễn phí được phát

triển theo chuẩn mã nguồn mở.

• MySQL chạy được trong cả hai môi trường Linux và

Windows.

• Có thể download phiên bản mới nhất của MySQL tại

địa chỉ:

địa chỉ: http://www.mysql.com http://www.mysql.com

• Các phiên bản 3.x, 4x và 5.x (mới nhất) khác nhau về

kiến trúc Chi tiết xin xem trong feature log.

Trang 10

2.1 Cài đặt MySQL 5.x

• Download phiên bản mới nhất

RPM (.rpm) Linux

Source code (.tar.gz) MySQL

Program install (.msi) Windows

Source code (.zip)

Trang 11

2.2 Cài đặt MySQL 5.x (Windows)

• Để cài đặt MySQL trong Windows bằng chương trình

cài đặt tự động, cần download chương trình này về

từ website của MySQL.

• Quá trình cài đặt sẽ tự động sao chép tất cả các file

cần thiết vào thư mục chỉ định.

• Sau khi cài đặt có thể sử dụng tiện ích cấu hình tự

động để thiết lập các tham số ban đầu cho MySQL.

• Tập tin cấu hình của MySQL có tên là my.ini Tập tin cấu hình của MySQL có tên là my.ini được

đặt tại thư mục

đặt tại thư mục {mysql_dir} {mysql_dir} là thư mục cài đặt MySQL.

Trang 12

2.3 Tập lệnh của mysql

• Các lệnh của mysql được lưu trong thư mục

{mysql_dir}\bin

• Nên đưa thư mục trên vào đường dẫn PATH để có

thể sử dụng lệnh trong mọi ngữ cảnh của dòng lệnh.

• Sau đây là một số lệnh thường dùng

– mysqld-nt: Là chương trình server để lắng nghe các yêu cầu

của client

– mysql: Là chương trình client dùng để kết nối và quản trị

bằng câu lệnh

– mysqldump: Là chương trình cho phép kết xuất cấu trúc và

dữ liệu của các bảng trong mysql ra luồng dữ liệu dạng text

Trang 13

– p: Dùng để chỉ định là người dùng tương ứng có mật khẩu

kết nối hay không

– h: Dùng để chỉ định địa chỉ (Tên hoặc IP) của mysql server

cần kết nối Mặc định là localhost

– P: Dùng để chỉ định cổng kết nối Mặc định là 3306.

Trang 14

2.4 Sử dụng lệnh mysql (tt)

• Sau khi kết nối thành công, có thể sử dụng các lệnh

sau (kết thúc lệnh là dấu ;) để quản trị mysql server:

– source <path to file>

– <create | drop> database <db name>; show databases

– use <db name>; show tables

– <create | drop | alter> table; desc <table name>

– select, insert, update, delete

– grant, revoke, flush, set password

• Tập đầy đủ các lệnh mysql có thể được download và

tra cứu tại trang chủ của MySQL.

Trang 15

2.5 Bảo mật trong MySQL

• Để kết nối được với mysql server, client cần có ít nhất 1

account đã được khai báo trong

account đã được khai báo trong csdl người dùng & phân quyềncsdl người dùng & phân quyền

của mysql server Đây là một csdl ẩn, không được phép hiển thị trong mọi lệnh của mysql

• Tất cả dữ liệu nằm trong csdl có tên là mysql chính là ánh xạTất cả dữ liệu nằm trong csdl có tên là mysql chính là ánh xạ

của csdl người dùng & phân quyền

• Lưu ý, ánh xạ trên là một chiềuLưu ý, ánh xạ trên là một chiều Tức là chỉ có chiều từ csdl Tức là chỉ có chiều từ csdl

mysql sang csdl người dùng & phân quyền Tuy nhiên, không phải mỗi khi csdl mysql thay đổi thì csdl kia thay đổi theo

• Để có quyền thay đổi (thực hiện ánh xạ), người dùng cần phải

có 2 quyền:

có 2 quyền: grantgrant và reload và reload.

Trang 16

2.5 Bảo mật trong MySQL (tt)

• CSDL mysql chứa nhiều bảng bên trong, trong đó chỉ có bảng CSDL mysql chứa nhiều bảng bên trong, trong đó chỉ có bảng

user chứa định nghĩa về người dùng mysql

• Bảng user có khóa chính là user và hostBảng user có khóa chính là user và host

– nếu host = ‘’ nghĩa là user được phép đăng nhập từ mọi host

– nếu host = ‘%’ nghĩa là user được phép đăng nhập từ mọi host trừ localhost– giá trị của host là khác nhau với tên và IP (nghĩa là ‘localhost’ <> 127.0.0.1giá trị của host là khác nhau với tên và IP (nghĩa là ‘localhost’ <> 127.0.0.1 )

• Mật khẩu của người dùng được lưu dưới dạng kết quả của hàm

băm password Để đổi mật khẩu cần dùng lệnh

băm password Để đổi mật khẩu cần dùng lệnh set passwordset password

• Bảng user cũng chứa các quyền toàn cục của người dùng.

• Các bảng khác: db, tables_priv, columns_privCác bảng khác: db, tables_priv, columns_priv chứa các quyền của người dùng đối với các csdl, bảng và cột trong bảng (Sử dụng lệnh

dụng lệnh descdesc để biết thêm chi tiết)

Trang 17

2.6 Người dùng và phân quyền

• Sử dụng lệnh grant để tạo người dùng:

GRANT priv_type [(column_list)]

ON [TABLE] {tbl_name | * | *.* | db_name.*}

TO user@host [IDENTIFIED BY [PASSWORD] 'password'] [WITH GRANT OPTION ]

Trang 18

2.6 Người dùng và phân quyền (tt)

• Sử dụng lệnh grant (tt):

– ‘password’ là password’ là mật khẩu thômật khẩu thô, không cần dùng hàm password Nếu là

Nếu là dạng bămdạng băm thì có thể dùng với từ khóa PASSWORD.

– Để có thể phân quyền cho một người dùng khác, người

dùng đang thi hành lệnh phải có

dùng đang thi hành lệnh phải có quyền grantquyền grant (global) và

quyền insert,update trên bảng user trong csdl mysql

– Thông thường, nếu người dùng chưa tồn tại thì grant tạo Thông thường, nếu người dùng chưa tồn tại thì grant tạo

luôn người dùng mới, nếu không nó sẽ cấp quyền cho người dùng đã có (nhưng

người dùng đã có (nhưng không xóa các quyền kháckhông xóa các quyền khác, để xóa cần dùng lệnh

xóa cần dùng lệnh REVOKEREVOKE có cú pháp như GRANT)

– Một số phiên bản install của MySQL bắt buộc phải tạo người Một số phiên bản install của MySQL bắt buộc phải tạo người

dùng bằng CREATE USER trước mới cho grant

Trang 19

2.6 Người dùng và phân quyền (tt)

• Sử dụng lệnh grant (tt):

– Cũng trong một số phiên bản MySQL, sau khi thi hành xong

lệnh grant,

lệnh grant, chỉ có csdl mysql là được cập nhậtchỉ có csdl mysql là được cập nhật CSDL người

dùng & phân quyền thực sự của MySQL vẫn

dùng & phân quyền thực sự của MySQL vẫn chưa được chưa được

ánh xạ từ csdl mysql sang

– Để thực hiện ánh xạ trên, người dùng cần thực hiện lệnh flush privileges và phải có quyền reload và phải có quyền reload

Trang 20

2.6 Người dùng và phân quyền (tt)

• Cập nhật trực tiếp vào csdl mysql:

– Như đã nói, csdl người dùng & phân quyền của MySQL là

ánh xạ trực tiếp từ csdl mysql sang Do đó, nếu có đủ quyền, người dùng có thể insert,update,delete trực tiếp lên các bảng trong csdl mysql Sau đó, thực hiện việc ánh xạ bằng lệnh flush privileges

– Hiệu quả của các thao tác trên tương ứng với lệnh grant.

• Lưu ý:

– Nếu quên mật khẩu của tài khoản root, có thể reset lại thông

qua hướng dẫn về phần này tại mục “

qua hướng dẫn về phần này tại mục “Appendix A.4.1 How Appendix A.4.1 How

to reset the root password” trong tài liệu do MySQL cung cấp tại địa chỉ

cấp tại địa chỉ http://www.mysql.comhttp://www.mysql.com

Trang 21

2.7 Ví dụ

• Yêu cầu:

– Cài đặt MySQL phiên bản 5.x vào hệ điều hành Windows

– Dùng chương trình Install Wizard để thiết lập MySQL chạy

như một service và đặt mật khẩu của tài khoản root là ‘root’

• Thực hành:

– Gõ lệnh mysql –u root –pGõ lệnh mysql –u root –p tại dấu nhắc lệnh của cửa sổ DOS, sau đó nhập mật khẩu ‘root’ để đăng nhập vào cửa sổ lệnh của MySQL và thực hiện những lệnh sau

– show databases; // Xem các csdl hiện có

– create database mydb; // Tạo csdl mydb

– use mydb; // Đặt csdl hiện hành là mydb

Trang 22

`field3` datetime datetime ,

primary key (`field1`, `field2`),

index (`field1`),

unique (`field3`) )

) engine engine =myisam = myisam default charset default charset =utf8 collate =utf8 collate =utf8_bin = utf8_bin ;

– show tables;

– insert into mytable set mytable set

field1 = ‘abc’, field2 = 1, field3 =

field1 = ‘abc’, field2 = 1, field3 = now now ();

Trang 23

– create user u2@localhost identified by u2@localhost identified by ‘test’;

– create user u3@localhost identified by password u3@localhost identified by password

‘*94BDCEBE19083CE2A1F959FD02F964C7AF4CFC29’;

– grant all on *.* to *.* to u1@localhost with grant option u1@localhost with grant option ;

– grant select,insert on mydb.* to mydb.* to u2@localhost;

Trang 24

2.7 Ví dụ (tt)

• Thực hành (tt):

– insert into mysql.tables_priv set

host = ‘localhost’, user = ‘u3’,

db = ‘mydb’, table_name = ‘mytable’,

– flush privileges;

– set password = password = password (‘abc’);

– Copy các lệnh cần thiết vào file c:\mysql.sql sau đó chạy

lệnh sau tại dấu nhắc lệnh của MySQL:

Trang 25

3 Giới thiệu về PHP

• Là một ngôn ngữ lập trình server-side miễn phí được

phát triển theo chuẩn mã nguồn mở PHP ra đời từ

sự viết tắt của cụm từ Personal Home Page Nhưng hiện nay PHP được coi là sự chơi chữ của việc viết tắt đệ quy cụm từ PHP: Hypertext Preprocessor.

• PHP chạy được trong cả hai môi trường Linux và

Windows Có thể download phiên bản mới nhất của PHP tại địa chỉ:

PHP tại địa chỉ: http://www.php.net http://www.php.net

• Các phiên bản 4x và 5.x (mới nhất) khác nhau về

kiến trúc Chi tiết xin xem trong feature log.

Trang 27

3.2 Cài đặt PHP 5.x (Windows)

• Để cài đặt PHP trong Windows bằng chương trình

cài đặt tự động, cần download chương trình này về

từ website của PHP.

• Lưu ý là bản cài đặt PHP dạng tự động sẽ không có

các thư viện mở rộng (đặc biệt là hai thư viện php_mysql và php_mbstring) Để có các thư viện này cần sử dụng bản cài đặt thủ công (.zip).

• File cấu hình của PHP có tên là php.ini File cấu hình của PHP có tên là php.ini nằm trong

thư mục

thư mục C:\WINDOWS C:\WINDOWS

Trang 28

3.3 Kết nối PHP - Apache

• Sau khi cài đặt PHP xong, cần thực hiện các bước

đúng như chỉ dẫn trong file

đúng như chỉ dẫn trong file install.txt install.txt nằm tại thư mục

{

{php_dir php_dir }

• Các chỉ dẫn trên vẫn thiếu một bước quan trọng là

thêm các khai báo sau vào file cấu hình của Apache:

<Directory "C:/php">

AllowOverride None Options None

Order allow,deny Allow from all

</Directory>

http://www.php.net/manual/en/install.windows.apache2.php

Trang 29

Apache Chú ý giá trị của extension_dir extension_dir

• Nếu mọi việc thành công, trình duyệt sẽ hiển thị chính

xác các thông tin khi duyệt địa chỉ

http://<tên máy | IP>/info.php

• Với file info.php có nội dung như sau:

<?php

echo phpinfo();

?>

Trang 30

4 Ngôn ngữ lập trình PHP

• Là ngôn ngữ lập trình dạng server-side, vì vậy PHP

ngoài các khả năng của một ngôn ngữ lập trình thuần túy còn có đầy đủ các chức năng cần thiết của một CGI chuẩn như: Lấy dữ liệu từ form, sinh các trang web động, gửi nhận cookie, hỗ trợ session, thao tác với biến của WEB Server.

• PHP cũng có hệ thống thư viện hàm đồ sộ giúp cho

các lập trình viên có nhiều lựa chọn trong việc sửa dụng PHP để kết nối với nhiều phần mềm khác nhau như: Oracle, MySQL, ODBC, LDAP, Mail (SMTP, POP3), COM, Net…

Trang 31

4.1 Cú pháp cơ bản

• PHP mỗi khi thông dịch một file sẽ chỉ thi hành

những khối lệnh nằm giữa 2 cặp thẻ

những khối lệnh nằm giữa 2 cặp thẻ <?php <?php và ?> và ?>

• Mọi ký tự nằm ngoài Mọi ký tự nằm ngoài các cặp thẻ trên đều được giữ các cặp thẻ trên đều được giữ

nguyên và thêm vào trong luồng siêu văn bản trả về cho môi trường bên ngoài

cho môi trường bên ngoài theo đúng thứ tự theo đúng thứ tự ban đầu.

• Nói chung, cú pháp trong PHP được thừa kế từ cú

pháp của C, C++ và Perl Tuy nhiên, cũng

pháp của C, C++ và Perl Tuy nhiên, cũng có một số có một số

kết hợp và thay đổi từ các cú pháp gốc tạo ra nét đặc thù riêng cho PHP.

Trang 32

4.1 Cú pháp cơ bản (tt)

• Để tạo ra các kết xuất trả về cho môi trường bên ngoài (trình

duyệt) ta có thể sử dụng các cách sau:

– Viết kết xuất bên ngoài cặp thẻ <?phpViết kết xuất bên ngoài cặp thẻ <?php và ?> và ?>

– Dùng lệnh echoDùng lệnh echo hoặc print hoặc print

• Để tạo ra chú thíchĐể tạo ra chú thích, có thể dùng cú pháp dạng C như sau:

– // Để chú thích dòng

– /* */ Để chú thích khối

• Lệnh của PHP kết thúc bởi dấu chấm phẩyLệnh của PHP kết thúc bởi dấu chấm phẩy (;) và có thể viết (;) và có thể viết

nhiều lệnh trên một dòng

• Lưu ý không giống C, C++ trình thông dịch của PHP chỉ phân Lưu ý không giống C, C++ trình thông dịch của PHP chỉ phân

biệt hoa thường với tên biến, tên hằng Còn tên hàm Còn tên hàm (có sẵn hoặc do người dùng định nghĩa) và

hoặc do người dùng định nghĩa) và từ khóa thì không phân biệttừ khóa thì không phân biệt

Ngày đăng: 17/04/2014, 06:10

TỪ KHÓA LIÊN QUAN

w