Я намагаюся створити PHP-сайт і хочу перевірити свої PHP-файли, не завантажуючи їх на свій хост. В основному тестую їх на власній машині, перш ніж завантажувати їх. Як це зробити?
Я намагаюся створити PHP-сайт і хочу перевірити свої PHP-файли, не завантажуючи їх на свій хост. В основному тестую їх на власній машині, перш ніж завантажувати їх. Як це зробити?
Відповіді:
Встановлення та запуск XAMPP: http://www.apachefriends.org/en/xampp.html
php -S localhost:8000
- це простіший вибір, не встановлюючи додаткових речей.
PHP 5.4 і пізніші версії мають вбудований веб-сервер наші дні.
Ви просто запускаєте команду з терміналу:
cd path/to/your/app
php -S 127.0.0.1:8000
Тоді у вашому браузері перейдіть до програми, http://127.0.0.1:8000
і ваша система повинна працювати. (Для цього повинен бути файл index.php або index.html.)
Ви також можете додати простий маршрутизатор
<?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');
}
?>
А потім запустіть команду
php -S 127.0.0.1:8000 router.php
Список літератури:
The web server runs a only one single-threaded process, so PHP applications will stall if a request is blocked.
. Це може спричинити певні проблеми з продуктивністю.
Це простий, впевнений спосіб запуску локального сервера PHP:
php -S 0.0.0.0:<PORT_NUMBER>
Де PORT_NUMBER - ціле число від 1024 до 49151
Приклад: php -S 0.0.0.0:8000
Примітки:
Якщо ви використовуєте localhost
замість цього, 0.0.0.0
ви можете потрапити на помилку, відхилену у з'єднанні.
Якщо ви хочете зробити веб-сервер доступним для будь-якого інтерфейсу, використовуйте 0.0.0.0
.
Якщо запит URI не вказує файл, то повертаються або index.php, або index.html у вказаному каталозі.
З огляду на наступний файл (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>";
}
?>
Виконати це ...
php -S 0.0.0.0:8000 router.php
... і перейдіть у своєму браузері на http: // localhost: 8000 /, і буде показано наступне:
Welcome to PHP
Довідка:
Я часто використовую наступну команду для спінінгу моєї програми PHP Laravel:
$ php artisan serve --port=8080
or
$ php -S localhost:8080 -t public/
Вгорі команда: - Artisan - це інтерфейс командного рядка, включений до Laravel, який використовують служать для виклику вбудованих в PHP сервері
Запуск із вбудованим веб-сервером.
php -S <addr>:<port> -T
Тут
-S: переключиться на запуск із вбудованим веб-сервером.
-T: Переключити, щоб вказати корінь документа для вбудованого веб-сервера.
Я використовую WAMP . Один простий майстер встановлення, тонни модулів для Apache та PHP заздалегідь налаштовані та легко включати та вимикати, щоб відповідати віддаленій конфігурації.
Якщо ви хочете отримати універсальний стек локальної розробки для будь-якої операційної системи, де ви можете вибрати різні версії PHP, MySQL та веб-сервера, а також не боїтеся використовувати Docker, ви можете піти на Devilbox .
Devilbox - це сучасний і настроюваний докерський стек PHP, що підтримує повний LAMP та MEAN та працює на всіх основних платформах. Основна мета - легко перемикати та комбінувати будь-яку версію, необхідну для місцевого розвитку. Він підтримує необмежену кількість проектів, для яких vhosts та записи DNS створюються автоматично. До ваших послуг також будуть послуги загального користування електронною поштою та популярні інструменти розробки. Конфігурація не потрібна, оскільки все відбувається заздалегідь з масовим віртуальним хостингом.
Початок роботи та роботи досить просто:
# 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
Посилання:
MAMP, якщо ви перебуваєте на MAC MAMP
Якщо ви використовуєте Windows, то WPN-XM Server Stack може бути підходящою альтернативою.
Використовуйте Apache Friends XAMPP . Він налаштує HTTP-сервер Apache, PHP 5 і MySQL 5 (наскільки я знаю, можливо, є щось більше, ніж це). Вам не потрібно знати, як налаштувати apache (або будь-який з модулів) для його використання.
У вас буде каталог htdocs, який Apache буде обслуговувати (доступний за адресою http: // localhost / ) і повинен мати змогу помістити туди ваші PHP файли. З моєю установкою це знаходиться на C: \ xampp \ htdocs.
Ще один варіант - Zend Server Community Edition .
AppServ - це невелика програма для запуску:
Це також дасть вам кнопку запуску та зупинки для Apache. Що мені здається дуже корисним.