2009-11-05 11 views
83

Próbuję zbudować stronę PHP i chcę przetestować moje pliki PHP bez przesyłania ich do mojego hosta. Zasadniczo testuję je na własnej maszynie przed ich przesłaniem. Jak mogę to zrobić?Serwer PHP na lokalnym komputerze?

+0

użyj XAMPP i zainstaluj serwer PHP. czasami, jeśli skype używa portu 80 i 443, serwer apache nie uruchomi się. Kompletne rozwiązanie znajduje się tutaj http://feelzdroid.com/2015/12/install-php-server-local-machine.html – Naruto

Odpowiedz

38

zainstalować i uruchomić XAMPP: http://www.apachefriends.org/en/xampp.html

+6

XAMPP działa dla WSZYSTKICH platform. – mauris

+0

Po prostu dodawanie tego artykułu do każdego, kto będzie chodził na XAMPP/MAMP: http://www.dwuser.com/education/content/why-you-need-a-testing-server-and-how-to-do- it/ –

3

Install XAMPP. Jeśli używasz MS Windows, dostępna jest również opcja WAMP.

0

Użyj Apache Friends XAMPP. Ustawi serwer HTTP Apache, PHP 5 i MySQL 5 (o ile mi wiadomo, prawdopodobnie jest ich więcej). Nie musisz wiedzieć, jak skonfigurować Apache (lub dowolny z modułów), aby go użyć.

Będziesz mieć katalog htdocs, który będzie obsługiwać serwer Apache (dostępny przez http://localhost/) i powinien być w stanie umieścić tam twoje pliki PHP. W mojej instalacji jest to C: \ xampp \ htdocs.

0

Jeśli masz lokalną maszynę z odpowiednim oprogramowaniem: serwer WWW z obsługą PHP, nie ma powodu, dla którego nie możesz tego zrobić, jak opisujesz.

Robię to w tej chwili z XAMPP na komputerze z Windows XP i (w domu) z Kubuntu i stosem LAMP.

2

MAMP jeśli jesteś na MAC MAMP

5

używam WAMP. Jeden łatwy kreator instalacji, mnóstwo modułów do skonfigurowania Apache i PHP oraz łatwe włączanie i wyłączanie w celu dopasowania do konfiguracji zdalnej.

170

PHP 5.4 i późniejsze mają teraz built-in web server.

Wystarczy uruchomić polecenie z terminalu:

cd path/to/your/app 
php -S localhost:8000 

Następnie w przeglądarce przejść do http://localhost:8000 i bomu, system powinien być uruchomiony. (Nie musi być index.php lub index.html plik to zadziałało.)

+0

W przypadku gdyby ktoś się zastanawiał, -S i odniesienie do innych poleceń można znaleźć pod linkiem poniżej. W szczególności -S oznacza "Uruchom z wbudowanym serwerem WWW". http://php.net/manual/en/features.commandline.options.php – calipoop

+0

, ale co z bazami danych, w których powinno być miejsce do przechowywania! –

+1

@YousefAltaf OP nie określa pogody lub nie chcieli korzystać z bazy danych. Poprosili o serwer PHP, a to po prostu serwer PHP. Jeśli chcesz uruchomić serwer MYSQL lub serwer PostGres, byłoby to kolejne pytanie i możesz skonfigurować swoją aplikację PHP do korzystania z tego serwera. Również dla celów szybkiego rozwoju SQLite DB powinien zrobić. –

13

Jest to prosty, pewny sposób ogień, aby uruchomić serwer php lokalnie:

php -S 0.0.0.0:<PORT_NUMBER> 

Gdzie numer_portu jest liczbą całkowitą od 1024 do 49151

Przykład: php -S 0.0.0.0:8000

Uwagi:

  1. Jeśli używasz localhost zamiast 0.0.0.0 możesz trafić w błąd odmowy połączenia .

  2. Jeśli chcesz udostępnić serwer WWW dla dowolnego interfejsu, użyj 0.0.0.0.

  3. Jeśli żądanie URI nie określa pliku , to albo index.php, albo index.html w podanym katalogu są zwracane .

Biorąc pod uwagę następujący plik (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>"; 
} 
?> 

Run to ...

php -S 0.0.0.0:8000 router.php 

... i przejdź w przeglądarce aby http://localhost:8000/ i dodaje będzie wyświetlany:

Welcome to PHP 

Numer referencyjny:

Built-in web server

+1

Dzięki za wskazówkę dotyczącą 0.0.0.0, jaka to była magiczna poprawka - należy włączyć do zaakceptowanej odpowiedzi lub coś takiego ... – calipoop

0

Jeśli chcesz zupełnie cel lokalny stos rozwoju dla każdego systemu operacyjnego, w którym można wybierać spośród różnych PHP, MySQL i serwerów WWW wersjach i są również nie boi się używając Döcker, można przejdź do devilbox.

Devilbox to nowoczesny i wysoce konfigurowalny dockeryzowany stos PHP obsługujący pełne LAMPY i MEAN i działający na wszystkich głównych platformach. Głównym celem jest łatwe przełączanie i łączenie dowolnej wersji wymaganej do lokalnego rozwoju. Obsługuje nieograniczoną liczbę projektów, dla których vhosts i rekordy DNS są tworzone automatycznie. Email catch-all i popularne narzędzia programistyczne będą również dostępne dla Ciebie. Konfiguracja nie jest konieczna, ponieważ wszystko jest wstępnie skonfigurowane z masowym wirtualnym hostowaniem.

Getting to uruchomiony jest dość prosta:

# 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 

devilbox

Linki:

0

AppServ to mały program w systemie Windows, aby uruchomić:

  • Apache
  • PHP
  • MySQL
  • phpMyAdmin

Będzie to również daje uruchomienie i przycisk zatrzymania dla Apache. Które uważam za bardzo przydatne.

Powiązane problemy