로컬 컴퓨터의 PHP 서버를 선택하십시오.
PHP 사이트를 구축하려고 하는데 호스트에 업로드하지 않고 PHP 파일을 테스트하고 싶습니다.업로드하기 전에 제 기계로 테스트하는 거죠그걸 어떻게 하는 거죠?
PHP 5.4 이후에는 웹 서버가 내장되어 있습니다.
단말기에서 명령어를 실행하면 됩니다.
cd path/to/your/app
php -S 127.0.0.1:8000
그런 다음 브라우저로 이동하여 boom을 실행하면 시스템이 가동되고 있을 것입니다.(이 기능이 작동하려면 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
참고 자료:
- https://www.php.net/manual/en/features.commandline.webserver.php
- https://www.php.net/manual/en/features.commandline.options.php
XAMPP 설치 및 실행:http://www.apachefriends.org/en/xampp.html
이것은 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에 포함된 명령줄 인터페이스로, serve를 사용하여 php 서버를 호출합니다.
빌트인 웹 서버에서 실행.
php -S <addr>:<port> -T
★★★★★★★★★★★★★★★★.
-S : 내내 - - - - - - - - - - - 。
-T : 빌빌 - - - - - - - - - - 。
저는 WAMP를 사용하고 있습니다.Apache 및 PHP 용으로 구성된 간단한 설치 마법사로, 리모트 구성에 맞게 쉽게 켜고 끌 수 있습니다.
다른 버전의 PHP, MySQL, 웹 서버 중에서 선택할 수 있고 Docker를 사용하는 것을 두려워하지 않는 운영체제를 위한 범용 로컬 개발 스택을 원한다면 devilbox를 선택할 수 있습니다.
devilbox는 완전한 LAMP와 MEAN을 지원하며 모든 주요 플랫폼에서 실행되는 매우 맞춤화된 최신 PHP 스택입니다.주요 목표는 지역 개발에 필요한 모든 버전을 쉽게 전환하고 결합하는 것입니다.vhost 및 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
링크:
- Github: https://github.com/cytopia/devilbox
- 웹사이트: http://devilbox.org
XAMPP 를 인스톨 합니다.MS Windows 를 실행하고 있는 경우는, WAMP 도 옵션입니다.
MAC MAMP에 있는 경우 MAMP
AppServ는 Windows에서 실행하는 작은 프로그램입니다.
- 아파치
- PHP
- MySQL
- phpMyAdmin
또한 Apache의 시작 및 중지 버튼을 제공합니다.매우 유용하다고 생각합니다.
Windows 를 사용하고 있는 경우는, WPN-XM 서버 스택이 적절한 대체 방법이 될 수 있습니다.
Apache Friends XAMPP를 사용합니다.Apache HTTP 서버, PHP 5 및 MySQL 5를 셋업할 것입니다(제가 아는 한, 그 이상의 것이 있을 것입니다).Apache(또는 모든 모듈)를 사용하도록 구성하는 방법을 알 필요는 없습니다.
Apache가 서비스하는htdocs 디렉토리가 있고(http://localhost/로 액세스 가능), PHP 파일을 저장할 수 있습니다.설치에서는 C:\xampp\htdocs에 있습니다.
적절한 소프트웨어를 갖춘 로컬 머신이 있다면, PHP를 지원하는 웹 서버라면 설명대로 하지 못할 이유가 없습니다.
지금은 Windows XP 머신에서 XAMPP로, (집에서는) Kubuntu와 LAMP 스택으로 하고 있습니다.
또 다른 옵션은 Zend Server Community Edition입니다.
코드를 사용하여 php에서 자신만의 서버를 만들 수도 있습니다!
<?php
set_time_limit(0);
$address = '127.0.0.1';
$port =4444;
$server = '$address + $port';
// <-- Starts Server
$sock = socket_create(AF_INET, SOCK_STREAM, 0);
socket_bind($sock, $address, $port) or die('Could not bind to address');
echo "\n Server is running on port $port waiting for connection... \n\n";
while(1)
{
socket_listen($sock);
$client = socket_accept($sock);
$input = socket_read($client, 443);
$incoming = array();
$incoming = explode("\r\n", $input);
$fetchArray = array();
$fetchArray = explode(" ", $incoming[0]);
$file = $fetchArray[1];
if($file == "/"){
$file = "src/src.filename";// 이 파일은 시작할 때 서버와 함께 열려 있습니다.
} else {
$filearray = array();
$filearray = explode("/", $file);
$file = $filearray[1];
}
echo $fetchArray[0] . " Request " . $file . "\n";
// <-- Control Header
$output = "";
$Header = "HTTP/1.1 200 OK \r\n" .
"Date: Fri, 31 Dec 1999 23:59:59 GMT \r\n" .
"Content-Type: text/html \r\n\r\n";
$Content = file_get_contents($file);
$output = $Header . $Content;
socket_write($client,$output,strlen($output));
socket_close($client);
}
print('server running..');
이 코드를 실행한 후 브라우저를 열어 localhost:443 또는 선택한 포트 중 하나를 선택합니다.
언급URL : https://stackoverflow.com/questions/1678010/php-server-on-local-machine
'programing' 카테고리의 다른 글
Vue 2 목록에 새 항목 추가 (0) | 2022.09.19 |
---|---|
사전의 문자열 표현을 사전으로 변환 (0) | 2022.09.19 |
Java resource as File (0) | 2022.09.19 |
HTML 콘텐츠에서 스크립트 태그 제거 (0) | 2022.09.19 |
NumPy 어레이는 JSON을 직렬화할 수 없습니다. (0) | 2022.09.19 |