programing

로컬 컴퓨터의 PHP 서버를 선택하십시오.

firstcheck 2022. 9. 19. 21:13
반응형

로컬 컴퓨터의 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

참고 자료:

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

주의:

  1. 「 」를 사용하고 localhost0.0.0.0을 사용하다

  2. 서버를 임의의 할 수 , 「」를 합니다.0.0.0.0.

  3. 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

데빌박스

링크:

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

반응형