Php локальный сервер: PHP: Встроенный веб-сервер — Manual

Лучшие локальные серверы — База Знаний Timeweb Community

Локальные серверы позволяют запускать свой сайт без использования хостинга, прямо на домашнем компьютере. Это может пригодиться для детального тестирования, а также в процессе разработки. Ничего не помешает накатить туда CMS и взаимодействовать с базами данных. Вся сложность заключается в выборе самой программы, которая и выполняет роль локального сервера. Подходящих вариантов существует огромное количество, и каждый из них обладает своими особенностями, так что сказать, какой локальный сервер лучше других, достаточно сложно.

Давайте детально разберемся в этом вопросе, рассмотрев несколько самых популярных представителей. Итак, топ лучших локальных серверов.

OpenServer

Начать стоит с программы под названием OpenServer. При ознакомлении сразу же бросается в глаза дружелюбный продуманный интерфейс, который и является одним из главных плюсов этого решения. Среди других преимуществ можно отметить простую установку, удобное управление с добавленными сайтами и отсутствие необходимости долгой настройки, чтобы все работало как надо. OpenServer отлично помещается на обычную флешку и не состоит из множества компонентов, поэтому прекрасно подходит для портативной работы.

Если минусы в OpenServer и есть, то они связаны только с небольшими проблемами во время функционирования сайтов, но решаются за несколько секунд банальным перезапуском программы. В остальном же это один из лучших вариантов для тех, кто давно хотел развернуть локальный сервер на своем компьютере или всегда иметь его под рукой, записав на флешку.

Распространяется OpenServer бесплатно, а разработчики предлагают лишь добровольно поддержать проект. Перейти к скачиванию этой программы для Windows можно на официальном сайте.

Комьюнити теперь в Телеграм

Подпишитесь и будьте в курсе последних IT-новостей

Подписаться

Denwer

Denwer – один из самых популярных в свое время локальных серверов, считавшийся монополистом на отечественном рынке, поскольку ни одно из существующих на тот момент решений не смогло составить ему конкуренцию. Этот веб-сервер прост в установке и практически не занимает места на компьютере. С управлением программой разберется даже начинающий пользователь.

Однако проект долгое время не обновлялся, что сказалось на его развитии в дальнейшем. Еще одним недостатком, который может стать решающим для некоторых пользователей, будет отсутствие графического интерфейса, из-за чего приходится все действия выполнять через консоль. Сейчас Denwer можно скачать с официального сайта.

Читайте также


WampServer

Следующий доступный веб-сервер называется WampServer. Он тоже популярен в определенных кругах пользователей. Его преимущество заключается в простоте установки и нетребовательности к системе, что позволяет нормально взаимодействовать с программой на любом компьютере. Присутствует поддержка всех необходимых компонентов, поэтому с настройкой и запуском локального сервера проблем не возникнет.

Однако есть у WampServer и ряд недостатков, которые в большинстве своем связаны с настройкой. Для этого придется редактировать локальные файлы, а также заморочиться с правильным конфигурированием MySQL. Распространяется этот инструмент бесплатно.

XAMPP

XAMPP – полноценный комплект всего программного обеспечения, которое необходимо для развертывания локального сервера на домашнем компьютере. Плюсами этого инструмента можно считать бесплатное распространение и поддержку абсолютно всех пакетов, включая PHP, MariaDB и Perl.

Из минусов можно отметить только медленную работу в сравнении с аналогами, однако при правильной настройке эта проблема ликвидируется. Для начала использования XAMPP нужно перейти на официальный сайт и скачать исполняемый файл.

AMPPS

AMPPS будет сложнее использовать как полноценный веб-сервер из-за тонкостей в настройке, однако здесь есть перечень всех требуемых приложений, позволяющих разрабатывать на PHP, подключая при этом MySQL. 

Взаимодействие с AMPPS происходит через сайт, открывающийся в любом браузере, однако отсутствие полноценного графического интерфейса в виде софта для ОС может стать для некоторых недостатком этого решения. Для дальнейшего ознакомления и загрузки AMPPS перейдите на официальный сайт.

Читайте также


The Uniform Server

Одна из самых легких версий локального сервера, предназначенная для компьютеров под управлением Windows. Это ее главное преимущество, ведь пользователю не придется скачивать огромное количество файлов, которые занимают дисковое пространство.

К недостаткам The Uniform Server относится то, что с самой программой придется взаимодействовать практически всегда через консоль, а в графическом интерфейсе выполняется всего несколько действий. 

Если вы решили попробовать это решение, загрузите его с официального сайта и начните бесплатное использование.

Devilbox

Devilbox тоже подходит для локальной разработки, ведь он поддерживает полное взаимодействие с LAMP, разработчики не ставят ограничений по одновременно запущенным проектам, а настройка док-стека происходит при помощи PHP.

В Devilbox все уже настроено, поэтому сразу после установки можно перейти к полноценной разработке и тестированию. Однако недостатком можно считать принцип установки, ведь он немного сложнее, нежели у конкурентов. Ознакомиться с ним и скачать все необходимые файлы можно на http://devilbox.org/.

Winginx

Если вы давно искали веб-сервер, который функционировал бы в среде NGINX, но не могли найти подходящий вариант, обратите внимание на Winginx. Это комплексный инструмент, поддерживающий разные языки программирования и несколько систем управления базами данных.

Из недостатков стоит выделить необходимость ручной сборки, а также ограниченную гибкость в сравнении с конкурентами, функционирующими на Apache. Winginx доступен на сайте разработчика.

Это далеко не все популярные локальные серверы, но именно эти, я считаю, заслуживают большего внимания. К тому же все они распространяются бесплатно. Какой из этих локальных серверов лучше, решать вам. 

Как настроить локальный сервер для тестирования? — Изучение веб-разработки

Эта статья объясняет как установить простой локальный тестовый сервер на вашем компьютере, а так же основы его использования.

На протяжении всего обучения, вы будете открывать примеры непосредственно в браузере — двойным кликом по HTML файлу, перетаскиванием файла в окно браузера, или через меню File > Open… и указывая необходимый HTML файл. Существует множество способов как это сделать.

Если веб-адрес начинается с file:// в котором далее прописан путь к файлу на вашем локальном жёстком диске, значит используется локальный файл. В противоположность этому, если вы откроете на просмотр один из наших примеров, расположенных на GitHub (или пример расположенный на любом другом удалённом сервере), веб-адрес будет начинаться с http:// или https://, что означает что файл был получен через HTTP.

Некоторые примеры могут не запуститься, если вы попробуете открыть их как локальные файлы. Это может произойти по нескольким причинам, самые распространённые из которых:

  • Они содержат асинхронные запросы. Некоторые браузеры (включая Chrome) не будут запускать асинхронные запросы (см. Fetching data from the server), если вы просто запускаете пример из локального файла. Это связано с ограничениями безопасности (для получения дополнительной информации о безопасности в Интернете, ознакомьтесь с Website security).
  • Они имеют серверный язык. Серверные языки (например, PHP или Python) требуют специального сервера для интерпретации кода и предоставления результатов.

Чтобы обойти проблему асинхронных запросов, нам нужно протестировать такие примеры, запустив их через локальный веб-сервер. Один из самых простых способов сделать это для наших целей — использовать модуль SimpleHTTPServer Python.

Для этого нужно:

  1. Установить Python. Если вы пользуетесь Linux или Mac OS X, всё уже готово в вашей системе. Если вы пользователь Windows, вы можете скачать установочный файл с домашней страницы Python:

    • Зайдите на python.org
    • В секции загрузок, выберите линк для Python «3.xxx».
    • Внизу страницы выберите Windows x86 executable installer и скачайте его.
    • После загрузки файла запустите его.
    • На первой странице инсталлятора выберите чекбокс «Add Python 3.xxx to PATH».
    • Нажмите Install, затем нажмите Close когда установка закончится.
  2. Откройте командную строку (Windows)/ (OS X/Linux). Для проверки установки Python введите следующую команду:

    python -V
  3. Система вернёт вам номер версии установленной программы. В случае успешного выполнения команды python -V нужно перейти в директорию с вашим проектом, используя команду cd:

    # include the directory name to enter it, for example
    cd Desktop
    # use two dots to jump up one directory level if you need to
    cd ..
  4. Введите команду для запуска сервера в том каталоге:

    # If Python version returned above is 3.X
    python -m http.server
    # If Python version returned above is 2.X
    python -m SimpleHTTPServer
  5. По умолчанию это приведёт к запуску содержимого каталога на локальном веб-сервере на порту 8000. Вы можете перейти на этот сервер, перейдя на URL-адрес localhost: 8000 в своём веб-браузере. Здесь вы увидите содержимое указанного каталога — щёлкните файл HTML, который вы хотите запустить.

Примечание. Если у вас уже есть что-то на порту 8000, вы можете выбрать другой порт, запустив команду сервера, за которой следует альтернативный номер порта, например: python -m http.server 7800 (Python 3.x) или python -m SimpleHTTPServer 7800 (Python 2.x). Затем вы можете получить доступ к своему контенту на localhost: 7800.

Модуль Python SimpleHTTPServer (python 2.0) http.server (python 3.0) полезен, но он не знает, как запускать код, написанный на таких языках, как Python, PHP или JavaScript. Чтобы справиться с этим, вам понадобится нечто большее — именно то, что вам нужно, зависит от языка сервера, который вы пытаетесь запустить. Вот несколько примеров:

  • Для запуска кода на стороне сервера Python вам необходимо использовать веб-инфраструктуру Python. Вы можете узнать, как использовать структуру Django, прочитав Django Web Framework (Python). Flask также является хорошей (чуть менее тяжёлой) альтернативой Django. Чтобы запустить это, ознакомьтесь с install Python/PIP, а затем установите Flask с помощью pip3 install flask. На этом этапе вы сможете запустить примеры Python Flask, используя, например, python3 python-example.py, затем перейдя на localhost: 5000 в свой браузер.
  • Чтобы запустить серверный код Node.js (JavaScript), вам нужно использовать Node.js или фреймворк, построенный поверх него. Express — хороший выбор — см. Express Web Framework (Node.js/JavaScript).
  • Чтобы запустить PHP-серверный код, вам понадобится настройка сервера, которая может интерпретировать PHP. Хорошими вариантами для локального тестирования PHP являются MAMP (Mac и Windows), AMPPS (Mac, Windows, Linux) и LAMP (Linux, Apache, MySQL и PHP / Python / Perl). Это полные пакеты, которые создают локальные настройки, позволяющие запускать базы данных Apache, PHP и MySQL.

Last modified: , by MDN contributors

Веб-сервер

— есть ли простой сервер разработки PHP?

Спросил

Изменено
3 года, 5 месяцев назад

Просмотрено
45 тысяч раз

82

Новинка! Сохраняйте вопросы или ответы и организуйте свой любимый контент.
Узнать больше.

При написании веб-приложений на Python очень просто запустить сервер разработки. Django и Google App Engine (GAE) поставляются с простыми серверами.

Основная функция, которую я ищу, это отсутствие конфигурации. Я хочу что-то вроде сервера разработки GAE, где вы просто передаете каталог приложения в качестве параметра при запуске сервера.

Есть ли причина, по которой с PHP это сложнее?

  • php
  • веб-сервер

На самом деле PHP 5. 4.0 недавно представил свой встроенный веб-сервер:

 cd ~/public_html
php -S локальный: 8000
 

4

Если это возможно на любой используемой вами платформе, PHP 5.4 имеет сервер разработки, подобный Django.

Вам также может понадобиться фрагмент кода, который я использую для обнаружения сервера разработки и воспроизведения двух наиболее распространенных вариантов использования mod_rewrite. (Скрытие index.php в URL-адресах и передача статических файлов для обслуживания)

(Да, для этого есть встроенный переключатель командной строки, но он не совсем соответствует фрагменту кода mod_rewrite, который использует большинство людей, и вызвало у меня ложные ошибки 404 из-за этого несоответствия.)

Используйте XAMPP: http://www.apachefriends.org/en/xampp.html
Его легко установить и настроить.

РЕДАКТИРОВАТЬ:
начиная с PHP 5.4 (который был выпущен через 2 года после этого ответа) есть встроенный веб-сервер. Сегодня это неточно, пожалуйста, используйте метод, предоставленный k0pernikus в его ответе.

3

Попробуйте использовать пакет

файл

  1. Открыть блокнот
  2. php -S локальный: 8000
  3. сохранить файл с расширением .bat => server.bat
  4. теперь нажмите server.bat , ваш сервер готов на http://localhost:8000.

DEP

если вы получили ошибку php не распознает внутреннюю или внешнюю команду
затем перейдите к переменной среды и отредактируйте путь к php.exe

 "C:\wamp\bin\php\php5.4.3"
 Обновление 

: я разработал версию на основе докера, которую я начал использовать вместо easy_php_dev: localdev

easy_php_dev делает многосайтовую разработку php очень простой и быстрой. Единственным ограничением является то, что он предназначен только для OSX. Раскрытие информации: я автор.

0

Когда мне нужен быстрый веб-сервер php для локального тестирования, я использую QuickPHP

1

Мы разработали очень маленький сервер разработки, поведение которого аналогично серверу разработки django.

Софт называется sng и работает с php и nginx. Он сделан на javascript и nodejs, вы можете легко установить его с помощью npm:

 npm install sng
 

AppServ всегда прекрасно настраивает все, что вам нужно!

php — Как запустить локальный сервер с Symfony 5 или понизить версию до 4.4?

Спросил

Изменено
6 месяцев назад

Просмотрено
34k раз

13

Новинка! Сохраняйте вопросы или ответы и организуйте свой любимый контент.
Узнать больше.

Я начал новый проект в новом Symfony 5 и не могу открыть свой локальный сервер.

В Symfony 4.4 команда PHP bin/console server:run в порядке,

Но с Symfony 5 команда не определена…

 C:\Users\Chris\Code\api-test> php bin/console server:run
Команда «сервер: запустить» не определена. 
Вы хотите вместо этого запустить "server:dump"? (да/нет) [нет]:
 

Итак, как понизить или запустить локальный сервер?

  • php
  • symfony
  • symfony4
  • symfony5
  • symfony-4.4

1

Пакет веб-сервера не включен с Symfony 5.

Но вы можете просто потребовать его и установить отдельно.

Например:

 composer require symfony/web-server-bundle 4.4
 

Важно, чтобы вы указали версию (4.4) , потому что в противном случае он попытается установить версию 5 (которой не существует, и это не удастся).

После этого вы сможете запускать bin/console server:run как раньше.


В противном случае вы также можете использовать Symfony CLI. Это исполняемый двоичный файл, который по умолчанию включает сервер Symfony. Затем вы можете запустить symfony server:start или более известный псевдоним symfony serve , чтобы запустить локальный веб-сервер.

Узнайте больше о сервере Symfony здесь.


Вы также можете использовать встроенный веб-сервер в среде выполнения PHP. Просто перейдите в корневой каталог вашего проекта и выполните:

 php -S localhost:8000 -t public/
 

Это не полнофункциональный веб-сервер, но для целей разработки его обычно более чем достаточно.

3

Для запуска локального веб-сервера теперь можно использовать клиент Symfony или просто «Symfony».

  1. Загрузите двоичный файл и установите его глобально.

  2. Откройте терминал и запустите один раз: symfony server:ca:install . Это установит локальный центр сертификации SSL, который позволит вам запустить локальный веб-сервер на https:// .

  3. Внутри терминала перейдите в каталог вашего проекта и запустите symfony serve . Запустится локальный веб-сервер; по умолчанию на https://localhost:8000/.

Если вы хотите запустить веб-сервер на другом порту, вы можете использовать symfony serve --port=8080 (в данном случае порт 8080 ). Для наиболее полезных команд, которые может предложить Symfony Client, просто запустите symfony . Чтобы увидеть все доступные команды, запустите Symfony поможет .

0

Я использую Symfony 5 и просто заменяю прежнюю команду php bin/console server:run » на php -S localhost:3000 -t public , и она работает аналогичным образом.

-t public для указания целевого файла

1

  1. php -S localhost:9000 -t public | PHP Inbuild Server / -t установлен в публичный каталог

  2. php bin/консольный сервер: запустить | Только для Symfony 4.* и ниже

  3. Symfony служит | Сервер Symfony Symfony ServeBundle

  • Чтобы запустить symfony serve , вы должны сначала установить ServerBundle: composer require symfony/web-server-bundle
  • Очень, очень, очень крутая мысль, что вы можете использовать https из коробки.