Bắt XAMPP hoạt động với nhiều phiên bản PHP


18

Làm cách nào tôi có thể cài đặt XAMPP để làm việc với các phiên bản PHP khác nhau?

Tôi sử dụng XAMPP vì một số tập lệnh bị lỗi khi chạy trong WAMP. Tôi sử dụng WAMP vì nó hỗ trợ các phiên bản khác nhau của PHP.

Nhưng bây giờ tôi muốn hợp lý hóa nó thành XAMPP để việc phát triển web của tôi dễ quản lý hơn.

Có thể định cấu hình XAMPP để hoạt động với nhiều hơn một phiên bản PHP không? Hay đó là một cái gì đó mà tôi phải tìm kiếm trong một giải pháp thay thế?

Lưu ý: Tôi đang chạy trên Windows 7.


Bạn có thể muốn sử dụng WAMPSERVER thay vì Xampp. WAMPSEVER chứa khay chuyển đổi phiên bản PHP; cái nào cũng tiện
Weijing Jay Lin

Câu trả lời:


8

Xin lưu ý
Câu trả lời này không hợp lệ đối với phiên bản XAMPP mới.


Trước tiên, bạn sẽ cần ngăn Apache khỏi XAMPP . Sau đó,

Đi cmd và chuyển sang thư mục XAMPP của bạn. Ví dụ: nếu thư mục XAMPP của bạn ở C: \

C:\>cd C:\XAMPP 

Trong thư mục này là một tệp có tên php-switch.bat, chạy từ dòng lệnh. Nếu không, bạn cũng có thể chạy php-switch.battrực tiếp.

Bạn sẽ thấy phiên bản bạn đang sử dụng và quy trình chuyển đổi. Ví dụ, gõ 4để chuyển PHP 4 sau đó làm theo quy trình.

php-switch.bat đang chạy trong thiết bị đầu cuối

PHP 4 sẽ cài đặt trong thư mục XAMPP \ PHP của bạn và chuyển đổi thành công. sau đó kích hoạt lại Apache.


1
Tôi không thể tìm thấy php-switch.bat trên XAMPP 1.7.3 tôi đã cài đặt. Có phiên bản xamp cụ thể hỗ trợ này? Cảm ơn!
Pennf0lio

Giáo sư. Tôi nghĩ phiên bản hiện tại không bao gồm php4 nữa apachefriends.org/f/viewtopic.php?f=16&t=33327 .. Tôi nghĩ bạn sẽ cần phiên bản cũ hơn nếu bạn muốn chuyển sang v4
Ye Lin Aung

4
điều này không còn hợp lệ trong các phiên bản mới hơn của XAMPP
mauris

1
Những gì không còn giá trị? Cài đặt phiên bản PHP4 hoặc swiching?
AlxVallejo

4
không có thêm php-switch.bat trong phiên bản mới
Toskan

5

Phương pháp tốt nhất là thay đổi cài đặt PHP trong

/apache/conf/extra/httpd-xampp.conf

để phản ánh phiên bản mới của PHP mà bạn muốn sử dụng

Trong trường hợp của tôi, tôi đã giải nén PHP5.4 thành C: \ XAMPPLITE \ PHP5.4 và sau đó cập nhật các dòng khóa trong tệp này, chẳng hạn như:

SetEnv PHPRC "C:\\xampplite\\php5.4"

LoadFile "C:/xampplite/php5.4/php5ts.dll"

PHPINIDir "C:/xampplite/php5.4"

Bạn cũng cần đảm bảo rằng phiên bản chính xác của php5apache2_2.dll đã được cài đặt

Để đảm bảo điều này, tôi đã sao chép phiên bản mới của php5apache2_2.dll vào thư mục mô-đun Apache với một tên duy nhất và sau đó sửa đổi cấu hình cho phù hợp với điều đó:

copy php5.4\php5apache2_2.dll apache\modules\php5apache2_2-5_4.dll

và trong tệp httpd-xampp.conf

LoadModule php5_module modules/php5apache2_2-5_4.dll

1

Nếu tập lệnh của bạn bị lỗi, chúng sẽ vẫn có lỗi cho dù bạn chuyển đổi gói máy chủ nào. Nếu sự cố nằm trong cấu hình máy chủ của bạn, hãy đào ngay và sắp xếp nó.

Giải pháp thực sự sẽ được cài đặt và quản lý các thành phần máy chủ (và cấu hình của chúng) theo cách thủ công. Vì tôi đã chuyển từ WAMP sang cài đặt máy chủ tự quản lý, tôi không bao giờ cảm thấy cần bất kỳ giải pháp máy chủ đóng gói nào nữa.


Cảm ơn vì lời khuyên! Hầu hết các cuộc thảo luận đề nghị sử dụng XAMPP như một giải pháp nhanh chóng và bẩn thỉu cho vấn đề kịch bản. Trong khi bạn có một điểm, đối với tôi, thật khôn ngoan khi chỉ cần chuyển đổi máy chủ (vì nó nhanh chóng) so với việc làm rối với cấu hình máy chủ mà tôi không biết bắt đầu từ đâu.
Pennf0lio

Chà ... Sớm muộn gì bạn cũng có thể gặp phải tình huống không có lựa chọn nào khác ngoài việc đi sâu vào cấu hình (như cấu hình máy chủ thông qua kết nối đầu cuối). Trong trường hợp bạn thay đổi quyết định - bạn có thể thử phân biệt các tệp cấu hình được xác định trước XAMPP / WAMP / LAMP của bạn với các cài đặt máy chủ độc lập mới và tìm kiếm hướng dẫn sử dụng những khác biệt đó có nghĩa gì. Đó là cách tôi học những gì tôi biết bây giờ.
antichris

Cảm ơn tuyệt vời cho Mẹo. Vâng, tôi đồng ý với quan điểm của bạn Nhưng hiện tại tôi sẽ chỉ giải quyết vấn đề của mình một lần và sẽ đưa ra giải pháp nhanh nhất. : PI phải đến nhiều thời hạn. Tôi thực sự đánh giá cao sự giúp đỡ :)
Pennf0lio

Tôi đã hỏi một câu hỏi tương tự nhưng với nhiều chức năng hơn ở đây serverfault.com/questions/121810/, tôi muốn nâng cấp các yếu tố riêng lẻ như apache, mysql, php và phpmyadmin trong xampp của tôi. Tôi vẫn đang tìm kiếm một giải pháp cho việc này. Nếu bất cứ ai tìm thấy một giải pháp thì xin vui lòng cho tôi biết. Cảm ơn
Gaurav Sharma

1

Nếu bạn muốn tính năng đó (có nghĩa là, khả năng trộn và kết hợp apache, xây dựng thành phần mysql và php) và thích Ứng dụng ngăn xếp AMP được đóng gói của bên thứ 3, bạn có thể xem WAMPServer 2.0 như một tùy chọn cho Windows ... Tùy chọn AMP được đóng gói mà tôi đã xem (đối với Windows, Mac và Linux) không cho phép hoán đổi các bản dựng thành phần (Tôi không bao gồm các chuyển đổi của PHP4 và PHP5 như các bản dựng thành phần vì chúng thực sự chỉ được cung cấp do mã kế thừa các vấn đề cho đến khi PHP5 trở nên tương thích ngược hơn và PHP4 ít phong phú hơn).

Hầu hết các ứng dụng ngăn xếp AMP được đóng gói của bên thứ 3, đặc biệt là các bản dựng hệ điều hành dựa trên Unix (Mac & Linux), để có các Thành phần ngăn xếp trong cùng cấu trúc thư mục với thư mục gốc "ứng dụng", chúng phải biên dịch từng thành phần với các chỉ thị cụ thể và các đối số cuối cùng là loại dây cứng một số tham chiếu thư mục và chữ ký nhị phân vào mỗi thành phần tự xây dựng .... cụ thể là các thành phần mysql và php vì chúng có các đối tượng thư viện được chia sẻ và yêu cầu phải được tham chiếu và bao gồm cụ thể trong quá trình biên dịch nguồn ... (và dường như với tôi rằng hầu hết không vì bất kỳ lý do gì chỉ biên dịch với mọi chỉ thị và thư viện tùy chọn ... không chắc chắn sẽ giải quyết được vấn đề hay không. Tôi đã đi xa đến mức đó với dự án của tôi để trả lời điều đó chưa).

Một lưu ý khác, vì nó nằm trong cùng một bối cảnh .... liên quan đến các nhận xét về việc sử dụng các cài đặt tự động thành phần so với ngăn xếp _AMPP, tôi không may chỉ biết những gì tôi đã viết ở trên vì tôi đã cố gắng thiết lập bằng cách sử dụng 3 tự trị mã nguồn của các thành phần và đã cố gắng để có bánh của tôi và ăn nó .... trong khi chưa bao giờ có bất kỳ kinh nghiệm nào đối phó với bất kỳ ai trong số họ trước đó .... vì vậy tôi có thể nói rằng có 2 lý do rất thuyết phục tại sao Nhà phát triển làm và nên sử dụng Ngăn xếp cho môi trường phát triển cục bộ:

1) nếu dự án của bạn đang sử dụng công nghệ này nhưng không mở rộng rõ ràng chức năng trong lõi của bất kỳ một thành phần nào, thì hầu hết chỉ muốn chạy để có thể làm việc trên những gì họ cần để làm việc .... và không có để tìm ra tất cả các cấu hình cần thiết cho 3 thành phần để nói chuyện liền mạch với nhau. Người ta có thể dễ dàng đấu tranh trong nhiều ngày để tìm hiểu những chỉ thị, mô-đun, thư viện, đối số biên dịch, v.v. Nếu bạn đã biết điều đó, thật tuyệt, nhưng đừng giới thiệu nó cho người không, trừ khi bạn sẽ làm điều đó cho họ.

2) các ngăn xếp được đóng gói là tự động và tách biệt khỏi các tệp cấu hình hệ điều hành, vì vậy bạn có thể dọn rác môi trường phát triển của mình mà không gây hậu quả nghiêm trọng .... nếu bạn muốn chạy các tập lệnh triển khai các tệp vào thư mục "vv" cần thiết, tôi không biết về bạn, nhưng thỉnh thoảng tôi có thể mắc lỗi và một lỗi trên thư mục ../XAMPP/etc ít gây đau đớn hơn sau đó là một lỗi trên thư mục / etc.

3) GUI ... GUI ... GUI ... không phải ai cũng là dòng lệnh Mozart và các ngăn xếp AMPP đều cung cấp một GUI đẹp để bật và tắt mọi thứ cho nội dung trái tim của bạn. Nếu bạn muốn có GUI, bạn sẽ bị thu hút bởi các ứng dụng AMPP Stack ... nếu bạn không quan tâm, tất cả phụ thuộc vào trọng lượng hoặc cổ phiếu bạn đặt vào điểm số 1 & # 2 của tôi

Dù sao, xin lỗi vì Luận án "Làm thế nào để ai đó ngáp", hy vọng ai đó sẽ nhận được một cái gì đó từ điều này.


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.