Có đôi lúc bạn đang triển khai một project mới trên version php 7 là php7 mới nhất thì sếp hoặc team khác lại đang làm việc trên version php 5 là version php cũ hơn. Vậy làm sao để có thể chạy song song cùng lúc 2 Version php khi cần kiểm tra code ?
1. Multiple Version PHP?
Để giải quyết vấn đề này, mình sẽ hướng dẫn mọi người cách chạy nhiều version php với xampp trên nền windows. Các bạn làm theo từng bước dưới đây để có thể chạy được version php cho dự án mình cần nhé.
Hiện tại, mình đang chạy XAMPP với PHP 7.2.5 được cài đặt trên windows 10 và mình muốn cài đặt PHP 5 cùng với version php 7 đang cài đặt này. Vì vậy trước tiên mình sẽ download bản Portable version php 5 của XAMPP trên Apachefriends.org . Trong này có nhiều version dành cho các hệ điều hành khác nhau, mình dùng windows nên mình sẽ chọn bản cài cho windows.
Các bạn chọn vào “More Downloads” để tìm cho mình Version PHP thích hợp nhé. Ở đây mình chọn bản 5.6.
Sau khi download thành công, bạn giải nén ra sẽ được một thư mục. Bạn chỉ cần nội dung php từ bản Portable của XAMPP vừa download về. Chúng ta đổi tên thư mục php thành php56 (Hoặc tên mà bạn muốn).
Trước hết, DỪNG máy chủ Apache và MySQL của bạn. Bây giờ sao chép thư mục PHP56 được đổi tên đến thư mục XAMPP hiện tại của bạn. Bạn nên có vài thứ như thế này:
Tại chỗ này, bạn cần phải thực hiện thay đổi một số cấu hình đối với file cấu hình apache của bạn mới chạy được 2 version php. Để bắt đầu, các bạn mở file: [DRIVE:\]xampp\apache\conf\extra và tìm file httpd-xampp.conf. Thay thế file này bằng cách Copy và Paste, bạn sẽ cần làm điều này dành cho nhiều Version PHP. Bây giờ, đổi tên 2 file mới copy thành httpd-xampp.conf và httpd-xampp56.conf tương ứng.
Mở từng file “httpd-xampp.conf” và “httpd-xampp56.conf” và chỉnh sửa tương ứng như được mô tả bên dưới.
Về cơ bản, tất cả những gì bạn cần làm là thay đổi tất cả đường dẫn php trong mỗi tệp,
Ví dụ: E:/xampp/php/ thành E:/xampp/php56/ tương ứng. Hãy nhớ thay đổi đường dẫn .dll thành đường dẫn thích hợp cho version php.
Ví dụ: /php7ts.dll đến /php5ts.dll. Bạn cần phải cẩn thận.
Xin lưu ý: Bạn không được thay đổi tất cả nội dung php mà bạn nhìn thay thành php56 hoặc php7; chỉ thay đổi đường dẫn như trong hình trên.
Hầu như ở đó. Bước tiếp theo là; mở tệp [DRIVE:\] xampp\apache\conf\httpd.conf và tìm kiếm #XAMPP settings
Về cơ bản, tất cả những gì bạn cần làm là thay đổi tất cả đường dẫn php trong mỗi tệp, Ví dụ: E:/xampp/php/ thành E:/xampp/php56/ tương ứng. Hãy nhớ thay đổi đường dẫn .dll thành đường dẫn thích hợp cho version php.
Ví dụ: /php7ts.dll đến /php5ts.dll. Bạn cần phải cẩn thận.
Xin lưu ý: Bạn không được thay đổi tất cả nội dung php mà bạn nhìn thay thành php56 hoặc php7; chỉ thay đổi đường dẫn như trong hình trên.
Hầu như ở đó. Bước tiếp theo là; mở tệp [DRIVE:\] xampp\apache\conf\httpd.conf và tìm kiếm #XAMPP settings
Tất cả những gì bạn phải làm là chỉnh sửa “conf/extra/httpd-xampp.conf” thành phiên bản php bạn muốn sử dụng. Hãy nhớ rằng các tệp cài đặt XAMPP được đặt tên theo version PHP mà chúng ta có trong thư mục XAMPP.
Vì vậy, bất cứ lúc nào bạn muốn thay thế Version PHP, chỉ cần dừng máy chủ Apache của bạn và chỉnh sửa [DRIVE:\] xampp\apache\conf\httpd.conf bằng cách thay đổi “conf/extra/httpd-xampp.conf” thành “conf/extra/httpd-xampp56.conf” hoặc “conf/extra/httpd-xampp.conf”.
Hơn nữa, trước khi bạn thực hiện bất kỳ START và STOP trên máy chủ của bạn, bạn cần phải thay đổi một số cài đặt trong tập tin php.ini của bạn. Mở tệp \xampp\php\php.ini và \xampp\php56\php.ini của bạn và chỉnh sửa các cài đặt này.
Tìm (sử dụng Ctrl + f hoặc Ctrl + h trong trình chỉnh sửa của bạn)
Tìm (sử dụng Ctrl + f hoặc Ctrl + h trong trình chỉnh sửa của bạn)
include_path = E:\xampp\php\PEAR
|
và thay thế bằng
include_path = E:\ xampp\php56\PEAR
|
Tìm
extension_dir = “E:\xampp\php\ext”
|
Thay thế bằng
extension_dir = “E:\xampp\php56\ext”
|
Tìm
error_log = “E:\xampp\php\logs\php_error_log”
|
Thay thế bằng
error_log = “E:\xampp\php56\logs\php_error_log”
|
Tìm
zend_extension = “E:\xampp\php\ext\php_xdebug-xxxx.dll”
|
Thay thế bằng
zend_extension = “E:\xampp\php56\ext\php_xdebug-xxxx.dll”
|
(Nếu sử dụng phần mở rộng ZEND, hãy chắc chắn rằng bạn đang sử dụng phiên bản đúng của dll cho phiên bản php phù hợp để tránh vấn đề)
Hãy chắc chắn rằng bạn xử lý tất cả các đường dẫn php một cách chính xác trong mỗi tập tin php.ini và httpd-xampp.conf là tốt.
Tóm lại, đây là phương pháp của tôi sử dụng nhiều version PHP với XAMPP trên Windows và quá trình này có vẻ rất dễ dàng với tôi và tôi thích nó với quá trình máy chủ đồng thời. Với điều này, bạn không cần phải sử dụng nhiều cổng, máy chủ Apache hoặc có cài đặt MySQL khác.