Cài đặt apache php mysql trên windows
Đối với hệ điều hành Windows chúng ta sẽ dễ dàng cài đặt Apache + MySQL + PHP thông qua các gói cài đặt đã được cấu hình sẵn Apache + MySQL + PHP. Tuy nhiên trong hệ điều hành Linux chúng ta thường chọn cách cài đặt riêng lẽ từng gói trên. Tại sao chúng ta thường triển khai ứng dụng web PHP trên Linux?
Các biến thể phổ biến của hệ điều hành Linux thường được sử dụng để triển khai ứng dụng web PHP:
Trong bài viết này chúng ta sẽ tìm hiểu cách cài đặt LAMP trên hệ điều hành CentOS. Bạn cần cài đặt hệ điều hành CentOS lên VPS hoặc dedicated server để có thể thực hiện được bài lab này. Để có thể cài đặt được LAMP bạn cần phải có quyền root. Trước khi cài đặt bạn nên cập nhật respository [root@ecode ~]# yum install updates Bước 1: Cài đặt Apache [root@ecode ~]# yum install httpd Sau khi cài đặt xong bạn có thể khởi động Apache thông qua lệnh sau [root@ecode ~]# service httpd start Để kiểm tra Apache đã chạy thành công chúng ta sẽ gõ địa chỉ ip của server lên trình duyệt. Ví dụ: http://12.56.123.32. Nếu như bạn thấy trang mặc định của Apache hiện lên nghĩa là Apache đã được cài đặt thành công. Nếu như bạn không biết WAN IP của server bạn có thể sử dụng lệnh sau để lấy IP [root@ecode ~]# ifconfig eth0 | grep inet | awk '{ print $2 }' Trong trường hợp webserver đã được thiết lập firewall chặn cổng 80, bạn sẽ không thể truy cập vào trang web mặc định của Apache. Bạn có thể mở cổng 80 thông qua lệnh sau: [root@ecode ~]# firewall-cmd --zone=public --add-port=80/tcp --permanent [root@ecode ~]# firewall-cmd --reload Bước 2: Cài đặt MySQL server thông qua lệnh sau: [root@ecode ~]# yum install mysql-server Start MySQL server qua lệnh sau: [root@ecode ~]# service mysqld start Sau khi cài đặt thành công bạn nên đổi lại mật khẩu MySQL: [root@ecode ~]# /usr/bin/mysql_secure_installation MySQL sẽ hỏi bạn có muốn xóa anonymous users và disable login từ xa và một số tùy chọn khác như xóa database test và reload lại quyền hạn. Bạn hãy chọn y (yes) Bước 3: Cài đặt PHP [root@ecode ~]# yum install php php-mysql Để kiểm tra PHP đã được cài đặt thành công hay chưa bạn sẽ tạo file test.php trong /var/www/html/ với nội dung như sau: Restart lại webserver qua lệnh sau [root@ecode ~]# yum install httpd0 Sau đó truy cập theo địa chỉ http://your-server-ip/test.php. Nếu bạn thấy màn hình tương tự sau hiện ra nghĩa là đã cài đặt thành công: Để thiết lập Apache và MySQL tự động khởi động khi server start, chúng ta sẽ sử dụng thêm 2 lệnh sau: [root@ecode ~]# yum install httpd1 Trong trường hợp bạn muốn quản trị MySQL thông qua PHP MyAdmin bạn có thể cài đặt thêm PHP MyAdmin. Ngoài mô hình webserver theo LAMP, còn một mô hình webserver khác cũng khá phổ biến là LEMP (Linux, Nginx, MySQL/MariaDB, PHP). Để lập trình Apache, PHP, MySql trên Windows, bạn có thể cài đặt các gói tích hợp sẵn như XAMPP, WampServer,… chẳng hạn. Tuy nhiên, nếu bạn muốn tự tay cài đặt và cấu hình, thì dưới đây là hướng dẫn cho bạn. Thời điểm mình post bài này, phiên bản mới nhất của chúng lần lượt là Apache 2.4.10, PHP 5.6.1, MySQL Community Server 5.6.21. Bước 1: Tạo thư mục web gốc Đầu tiên, hãy tạo một thư mục nơi sẽ đặt các ứng dụng web. Bạn có thể tạo ở bất kỳ đâu bạn muốn. Trong bài này, giả sử mình sẽ tạo thư mục webroot ở phân vùng D: để khi có cài lại hệ điều hành (vốn ở phân vùng C:) thì các ứng dụng web của mình vẫn còn đó. Như vậy, đường dẫn đầy đủ của thư mục sẽ là D:\webroot. Bước 2: Tải về và cài đặt Apache Có hai cách để tải về Apache. Nếu chọn cách một thì bạn sẽ đơn giản được việc cài Apache, nhưng sẽ hơi khó khăn hơn khi tìm bản PHP phù hợp. Ngược lại, bạn có phiên bản Apache và PHP mới nhất, nhưng phải làm bằng tay nhiều hơn chút. Hai cách đó gồm:
2.1 Tải về Apache tại http://httpd.apache.org/. Bạn hãy tìm tải tập tin Binaries có phần đuôi .msi, đây là bộ cài đặt Apache đã biên dịch. Sau khi tải xong, bấm đúp để cài đặt. Tại cửa sổ Server Information, mục Network Domain và Server Name, bạn có thể để là localhost, như hình: Tiếp theo, tại cửa sổ Destination Folder, bạn chọn lại đường dẫn cài đặt Apache nếu muốn. Mình sẽ để mặc định theo máy của mình là C:\Program Files (x86)\Apache Software Foundation\Apache2.2\. Bấm Next, đây là trình cài đặt tự động, chúng ta chỉ việc ngồi chờ đến khi hoàn tất. Nếu trong lúc cài, bạn thấy xuất hiện cửa sổ thông báo như: apache2: Could not reliably determine the server’s fully qualified domain name, using x.x.x.x for ServerName (x.x.x.x là một địa chỉ IP) thì bạn cứ để đó. Đây không phải là lỗi. Chúng ta sẽ sửa sau. Sau khi cài đặt xong, Apache sẽ chạy tự động, để ý dưới góc phải thanh taskbar, bạn sẽ thấy xuất hiện biểu tượng: Bấm vào, bạn sẽ thấy menu xổ xuất hiện, có mục Apache2.2, vào trong đó, bạn sẽ thấy có 3 mục con là Start, Stop, Restart, trong đó, Start bị vô hiệu tức là Apache đang chạy. Nếu Start chưa vô hiệu, bạn thử bấm để chạy (thực ra biểu tượng hình tam giác xanh như trên có nghĩa Apache đã chạy rồi). Để thử xem đã cài Apache thành công chưa, mở trình duyệt, gõ địa chỉ: http://localhost. Nếu bạn thấy xuất hiện một trang trắng có dòng chữ It works! thì bạn đã thành công. 2.2 Tải về Apache mới nhất tại http://www.apachelounge.com/download/. Nhớ chọn bản 32 hay 64 bit tùy thuộc máy của bạn. Ví dụ, tại thời điểm viết bài này, mình sẽ tải bản mới nhất là httpd-2.4.10-win64-VC11.zip. Quan trọng: bạn để ý tên tập tin tải xuống có chữ VC11 ngay trước .zip. Nó cho biết bản Apache này được build bằng Visual Studio 2012. Điều này rất quan trọng, vì bạn sẽ cần phải tải và cài đặt thêm thư viện Visual C++ Redistributable for Visual Studio 2012. Hãy tìm nó tại đây. Nếu file download của bạn có chữ VC9, Apache được build bằng Visual Studio 2008, lúc này, bạn cần tải và cài đặt thư viện Visual C++ Redistributable for Visual Studio 2008 SP1, hãy tìm tại đây cho x86 hoặc tại đây cho x64. Một chú ý nữa: lúc tải PHP, bạn cũng nên tải bản tương ứng với VC9 hoặc VC11 (xem bước 4). Tại thời điểm mình viết bài này thì bản tải từ apachelounge.com không có trình cài đặt. Tải về xong bạn chỉ việc giải nén rồi lưu vào đâu đó. Trong bài này, giả sử mình sẽ lưu nó vào thư mục C:\apache. Khác với trường hợp 2.1, ở đó, trình cài đặt đã cấu hình Apache để bạn có thể test thử ngay bằng cách vào http://localhost, còn trường hợp này thì bạn chưa thể thử. Hãy qua bước kế tiếp để cấu hình Apache. Bước 3: Cấu hình Apache nhận thư mục web gốc đã tạo ở bước 1 Ở bước 2, nếu bạn đã chọn làm theo cách 2.1, hãy đọc tiếp mục 3.1, ngược lại, hãy đọc tiếp mục 3.2. Bạn lưu ý 3 điều:
3.1 Tình huống tải về từ http://httpd.apache.org/ Mặc định, thư mục web gốc nằm tại <đường dẫn cài Apache>\htdocs. Bây giờ, bạn cần cấu hình Apache để đặt lại thư mục web gốc về D:\webroot như đã tạo ở bước 1. Vào thư mục <đường dẫn cài Apache>\conf, dùng Notepad mở tập tin httpd.conf. Tìm đến dòng: DocumentRoot “<đường dẫn cài Apache>/htdocs” Và sửa lại thành DocumentRoot “D:/webroot” Sau đó, thêm nội dung dưới đây:
Ở trên, bạn nên để AllowOverride All để có thể dễ dàng sử dụng tập tin .htaccess ở mỗi thư mục ứng dụng web. Ở bước 2.1, nếu bạn gặp thông báo apache2: Could not reliably determine the server’s fully qualified domain name, using x.x.x.x for ServerName (x.x.x.x là một địa chỉ IP) thì hãy tìm dòng có ServerName rồi sửa nó thành ServerName localhost:80, nhớ bỏ # ở đầu dòng, nếu có. Sau khi làm xong, bấm biểu tượng Apache ở taskbar rồi chọn Restart. Chờ một vài giây, nếu bạn làm đúng, Apache sẽ khởi động lại mà không gặp lỗi gì. Giờ thử tạo một tập tin index.html, lưu vào thư mục D:/webroot, sau đó, mở trình duyệt rồi vào lại http://localhost (có thể cần xóa cache). Nếu trang bạn tạo hiển thị thì bạn đã thành công bước này. 3.2 Tình huống tải về từ http://www.apachelounge.com/ Hãy vào thư mục <đường dẫn cài Apache>\conf, dùng Notepad mở tập tin httpd.conf. Tìm đến dòng có:
Sau đó, hãy lưu lại. Tiếp theo, hãy bấm chuột phải mở Command Prompt chạy với quyền Admin (Run as Adminstrator). Nếu bạn không biết Command Prompt ở đâu, hãy bấm Start > Search rồi gõ cmd. Tại dấu nhắc Command Prompt, gõ lần lượt các lệnh sau: cd <đường dẫn cài Apache>\bin httpd.exe -k install Dòng lệnh thứ 2 giúp bạn cài đặt Apache như một servies của Windows. Xong lệnh này, bạn hãy xem nó có báo gì không. Bạn có thể kiểm tra thử đã cài service thành công hay chưa bằng cách, từ Windows, bấm Start > Search rồi gõ services.msc. Cửa sổ Services hiện ra, hãy tìm xem trong danh sách có Apache2.4 như trong hình sau hay không. Tiếp theo, vào thư mục <đường dẫn cài Apache>\bin, tìm tập tin ApacheMonitor.exe rồi bấm đúp để chạy, bạn sẽ thấy dưới thanh taskbar xuất hiện biểu tượng giống như sau: Hãy bấm vào đó, bạn sẽ thấy menu xổ xuất hiện, có mục Apache2.4, vào trong đó, bạn sẽ thấy có 3 mục con là Start, Stop, Restart. Hãy bấm Start để khởi động Apache. Chờ trong giây lát, nếu khởi động thành công, biểu tượng trên sẽ đổi thành: Nếu Apache không thể khởi động, bạn hãy xem kỹ lại tập tin cấu hình httpd.conf. Giờ thử tạo một tập tin index.html, lưu vào thư mục D:/webroot, sau đó, mở trình duyệt rồi vào lại http://localhost. Nếu trang web bạn tạo hiển thị thì bạn đã thành công bước này. Bước 4: Tải về và cài đặt PHP Vào http://windows.php.net/download/, tìm phiên bản PHP bạn mong muốn rồi tải về. Bạn nên chọn bản Thread Safe. Ngoài ra, bạn lưu ý điều sau:
Tùy phiên bản PHP bạn tải, có thể có trình cài đặt hoặc không. Phiên bản PHP 5.6.1 mình tải không có trình cài đặt, bạn chỉ việc tải xuống rồi giải nén ra một thư mục nào đó. Giả sử mình sẽ giải nén nó vào thư mục C:\php. Sau đó, hãy tìm trong thư mục PHP xem có tập tin dạng php5apache2_x.dll (x là một số) hay không. Chúng ta cần thư viện này để Apache có thể làm việc với PHP. Lưu ý: số 2_x phải tương ứng với phiên bản Apache bạn đã tải: nếu bạn đã tải Apache 2.2.x, bạn sẽ cần tập tin php5apache2_2.dll, nếu bạn đã tải Apache 2.4.x, bạn sẽ cần tập tin php5apache2_4.dll. Nếu bạn làm theo hướng dẫn nãy giờ, chắc chắn mọi thứ sẽ phù hợp. Nếu không, hãy tìm bản tải PHP khác có tập tin dll phù hợp. Tìm trong thư mục C:\php (hay thư mục khác nơi bạn đã giải nén PHP) các thư mục và tập tin sau:
Dùng Notepad mở tập tin php.ini, chúng ta cần cấu hình một chút. Trong tập tin php.ini, bạn để ý thấy có các dòng bắt đầu bằng ; là những chú thích. Hãy tìm đến extension_dir, nếu nó đang chú thích, hãy bỏ ; ở đầu và ghi lại thành: extension_dir = “C:/php/ext/” Dòng này xác định thư mục chứa các module của PHP. Tiếp theo, hãy tạo một thư mục sessions (hay tên gì tùy bạn) trong thư mục C:\php. Sau đó, tìm đến dòng ;session.save_path rồi sửa thành session.save_path=’C:/php/sessions/’. Đây sẽ là thư mục lưu các session. Bước 5: Cấu hình Apache làm việc với PHP Vào lại thư mục <đường dẫn cài Apache>\conf, dùng Notepad mở tập tin httpd.conf. Thêm các dòng sau (mình đề xuất thêm vào sau các dòng LoadModule đang có để dễ quản lý): PHPIniDir “C:/php” Xong, hãy khởi động lại Apache. Sau đó, hãy tạo thử tập tin index.php với nội dung:
Rồi mở trình duyệt, thử gõ http://localhost/index.php. Nếu xuất hiện dòng chữ Bước 6: Tải và cài đặt MySQL Hãy vào http://dev.mysql.com/downloads/mysql/ tải bản MySQL mới nhất rồi bấm đúp để cài đặt. Việc cài đặt MySQL khá dễ dàng vì có trình cài đặt bằng giao diện đồ họa. Bạn hãy tự làm việc này theo hướng dẫn trên màn hình cài đặt. Nhìn chung cứ bấm Yes, Next, OK hết là được. Trong lúc cài đặt, sẽ có hộp thoại yêu cầu bạn nhập mật khẩu cho tài khoản root – tài khoản cao nhất để quản trị MySQL, bạn hãy nhập và nhớ nó. Chúng ta sẽ dùng tài khoản đó để lập trình với PHP. Cài đặt xong, bạn để ý dưới góc phải taskbar, sẽ có xuất hiện biểu tượng như hình: Bạn chọn đến phiên bản MySQL đã cài (máy mình có cài 2 bản WampServer trước đó nên có 3 mục, máy bạn sẽ không hiển thị 3 mục giống vậy), sẽ có menu con có mục Start, Stop, Restart, bấm Start để chạy MySQL nếu nó chưa chạy. Trình cài đặt mặc định sẽ cài cho bạn bộ công cụ cần thiết để làm việc với MySQL, trong đó có công cụ hữu ích là MySQL Workbench. Bạn có thể dùng MySQL Workbench để quản lý và thao tác với MySQL, không cần dùng thêm ứng dụng gì. Bước 7: Cấu hình PHP làm việc với MySQL Vào thư mục PHP – trường hợp của mình là C:\php, rồi vào thư mục ext kiểm tra xem hai tập tin sau đây có hay chưa (chắc chắn là có, nhưng nếu không có thì bạn phải kiểm tra lại các bước cài đặt của mình):
Tại thời điểm mình viết bài này thì có nhiều thư viện, framework nguồn mở dùng driver mới, nhưng cũng có nhiều thư viện dùng driver cũ. Mình sẽ chọn cách cho chạy cả hai driver này. Mở lại tập tin cấu hình php.ini, tìm đến dòng:
Nếu không có một trong hai dòng trên thì bạn cứ gõ thêm vào nhé. Sau đó, hãy khởi động lại Apache. Để kiểm tra mọi thứ đã làm việc với nhau hay chưa, hãy tạo thử tập tin test_db.php với nội dung sau:
Chạy thử bằng cách vào địa chỉ http://localhost/test_db.php. Nếu xuất hiện Ngoài MySQL Workbench, bạn cũng có thể cài thêm phpMyAdmin, một ứng dụng PHP thông dụng giúp thao tác MySQL. |