Tôi đang cố gắng xây dựng một trang web PHP và tôi muốn kiểm tra các tệp PHP của mình mà không tải chúng lên máy chủ của mình. Về cơ bản kiểm tra chúng trên máy của tôi trước khi tôi tải chúng lên. Làm thế nào để làm điều đó?
Tôi đang cố gắng xây dựng một trang web PHP và tôi muốn kiểm tra các tệp PHP của mình mà không tải chúng lên máy chủ của mình. Về cơ bản kiểm tra chúng trên máy của tôi trước khi tôi tải chúng lên. Làm thế nào để làm điều đó?
Câu trả lời:
Cài đặt và chạy XAMPP: http://www.apachefriends.org/en/xampp.html
php -S localhost:8000
là một lựa chọn dễ dàng hơn, mà không cần cài đặt công cụ bổ sung.
PHP 5.4 trở lên có máy chủ web tích hợp ngày nay.
Bạn chỉ cần chạy lệnh từ thiết bị đầu cuối:
cd path/to/your/app
php -S 127.0.0.1:8000
Sau đó, trong trình duyệt của bạn đi http://127.0.0.1:8000
và bùng nổ, hệ thống của bạn sẽ hoạt động. (Phải có tệp index.php hoặc index.html để làm việc này.)
Bạn cũng có thể thêm một Bộ định tuyến đơn giản
<?php
// router.php
if (preg_match('/\.(?:png|jpg|jpeg|gif)$/', $_SERVER["REQUEST_URI"])) {
return false; // serve the requested resource as-is.
} else {
require_once('resolver.php');
}
?>
Và sau đó chạy lệnh
php -S 127.0.0.1:8000 router.php
Người giới thiệu:
The web server runs a only one single-threaded process, so PHP applications will stall if a request is blocked.
. Điều này có thể gây ra một số vấn đề hiệu suất.
Đây là một cách đơn giản, chắc chắn để chạy máy chủ php của bạn cục bộ:
php -S 0.0.0.0:<PORT_NUMBER>
Trong đó PORT_NUMBER là một số nguyên từ 1024 đến 49151
Thí dụ: php -S 0.0.0.0:8000
Ghi chú:
Nếu bạn sử dụng localhost
chứ không phải 0.0.0.0
bạn có thể gặp lỗi từ chối kết nối.
Nếu muốn làm cho máy chủ web có thể truy cập vào bất kỳ giao diện nào, hãy sử dụng 0.0.0.0
.
Nếu một yêu cầu URI không chỉ định một tệp, thì index.php hoặc index.html trong thư mục đã cho sẽ được trả về.
Cho tập tin sau (router.php)
<?php
// router.php
if (preg_match('/\.(?:png|jpg|jpeg|gif)$/', $_SERVER["REQUEST_URI"])) {
return false; // serve the requested resource as-is.
} else {
echo "<p>Welcome to PHP</p>";
}
?>
Chạy cái này ...
php -S 0.0.0.0:8000 router.php
... và điều hướng trong trình duyệt của bạn tới http: // localhost: 8000 / và sau đây sẽ được hiển thị:
Welcome to PHP
Tài liệu tham khảo:
Tôi thường sử dụng lệnh sau để quay khung công tác PHP Laravel của mình:
$ php artisan serve --port=8080
or
$ php -S localhost:8080 -t public/
Trong lệnh trên: - Artisan là giao diện dòng lệnh đi kèm với Laravel, sử dụng phục vụ để gọi được xây dựng trong máy chủ php
Để chạy với máy chủ web tích hợp.
php -S <addr>:<port> -T
Tại đây,
-S: Chuyển sang Chạy với máy chủ web tích hợp.
-T: Chuyển sang chỉ định gốc tài liệu cho máy chủ web tích hợp.
Tôi sử dụng WAMP . Một trình hướng dẫn cài đặt dễ dàng, hàng tấn mô-đun để cấu hình sẵn Apache và PHP và dễ dàng bật và tắt để phù hợp với cấu hình từ xa của bạn.
Nếu bạn muốn có một ngăn xếp phát triển cục bộ đa mục đích cho bất kỳ hệ điều hành nào mà bạn có thể chọn từ các phiên bản máy chủ PHP, MySQL và Web khác nhau và cũng không sợ sử dụng Docker, bạn có thể sử dụng Devilbox .
Devilbox là một ngăn xếp PHP dockerized hiện đại và tùy biến cao hỗ trợ LAMP và MEAN đầy đủ và chạy trên tất cả các nền tảng chính. Mục tiêu chính là dễ dàng chuyển đổi và kết hợp bất kỳ phiên bản nào cần thiết cho phát triển địa phương. Nó hỗ trợ số lượng dự án không giới hạn mà các bản ghi vhost và DNS được tạo tự động. Email bắt tất cả và các công cụ phát triển phổ biến cũng sẽ có mặt tại dịch vụ của bạn. Cấu hình là không cần thiết, vì mọi thứ đều được thiết lập sẵn với lưu trữ ảo hàng loạt.
Bắt nó và chạy là khá đơn giản:
# Get the devilbox
$ git clone https://github.com/cytopia/devilbox
$ cd devilbox
# Create docker-compose environment file
$ cp env-example .env
# Edit your configuration
$ vim .env
# Start all containers
$ docker-compose up
Liên kết:
MAMP nếu bạn đang dùng MAC MAMP
Nếu bạn đang sử dụng Windows, thì Stack Server WPN-XM có thể là một sự thay thế phù hợp.
Sử dụng XAMPP của bạn bè Apache . Nó sẽ thiết lập máy chủ HTTP HTTP, PHP 5 và MySQL 5 (theo như tôi biết, có lẽ còn nhiều hơn thế). Bạn không cần phải biết cách định cấu hình apache (hoặc bất kỳ mô-đun nào) để sử dụng nó.
Bạn sẽ có một thư mục htdocs mà Apache sẽ phục vụ (có thể truy cập bằng http: // localhost / ) và có thể đặt các tệp PHP của bạn ở đó. Với cài đặt của tôi, nó có tại C: \ xampp \ htdocs.
Một tùy chọn khác là Zend Server Community Edition .
AppServ là một chương trình nhỏ trong Windows để chạy:
Nó cũng sẽ cung cấp cho bạn một nút khởi động và dừng cho Apache. Mà tôi thấy rất hữu ích.