1. node.js 설치 
    - url : https://nodejs.org/ko/
    - 제일 최신본으로 설치

2. Visual Studio Code 
    1) 설치 url : https://code.visualstudio.com/
    2) 파일 -> 폴더열기 새 프로젝트 파일 가져오기
    3) 아래 터미널을 열고, npx create-react-app 프로젝트명 입력 -> 생성이 된다.

※ 만일 'create-react-app'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 라고 나올경우, Visual Studio Code의 기본적인 터미널이 PowerShell이니, cmd로 변경해야된다.

PowerShell -> cmd로 변경 방법
1) Ctrl + Shift + P 단축키로 명령 팔레트를 열고,
2) 'select default shell' 검색 'Terminal:Select Default Shell' 명령을 선택
3) 'Commnad Prompt'를 선택하고 아래 터미널 종료후 다시 터미널을 키면 cmd로 변경이 된다.

프로젝트 생성 후 실행 방법
해당 프로젝트 폴더를 불러온 후, npm start 터미널 입력하면 됩니다.

오늘은 WSL을 이용한 php 서버 설정을 할 것이다.

WSL(Windows Subsystem for Linux)이란?

윈도우에서 리눅스 환경처럼 Powershell을 Bash 처럼 사용하고 Linux 명령어를 사용할 수 있으며, 커널로 이용을 할 수 있다.

 

WSL 설치

요구사항 버전

- Window 10 버전 2004 이상 또는 Window 11

- Linux 하위 시스템 활성화

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

- 가상머신 플랫폼 기능을 활성화

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

- 설치

wsl --instal

 

WSL을 설치를 하면 ubuntu가 설치가 된다.

이후 ubuntu에서 nginx, php-fpm, mysql 를 설치를 한다.

nginx 설치

sudo apt-get install nginx
확인 nginx -v
실행 : sudo service nginx start
상태확인 : sudo service nginx status
중지 : sudo service nginx stop

php 설치 (버전을 따로 지정을 안하면 7.4로 설치가 된다.)

sudo apt-get install php php-fpm php-mbstring php-xml php-mysql
확인 : php -v
실행 : sudo service php7.4-fpm start
상태확인 : sudo service php7.4-fpm status
중지 : sudo service php7.4-fpm stop

Mysql 설치

sudo apt install mysql-server
확인 : mysql --version
실행 : - /etc/init.d/mysql start
        - sudo service mysql start
상태확인 : sudo service mysql status
중지 : sudo service mysql stop

Mysql 설정 하기

접속
mysql -u root -p

사용자 만들기
create user '사용자명'@'localhost' identified by '비밀번호';

user 생성 확인
select user, host from mysql.user

데이터 베이스 생성
create database DB명;

생성 확인
show databases;

생성한 database에 사용자 권한주기
grant all privileges on DB명.* to 사용자@localhost;

전체적인 서비스 상태 확인

service --status-all

nginx 연결 - unix domain socket

sudo vim /etc/nginx/sites-available/default
주석제거
location ~ \.php$ {
                include snippets/fastcgi-php.conf;
        #
        #       # With php-fpm (or other unix sockets):
                fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
        #       # With php-cgi (or other tcp sockets):
        #       fastcgi_pass 127.0.0.1:9000;
        }

'Server' 카테고리의 다른 글

Screen 사용명령어  (0) 2022.03.29

D.P에서 나왔던 몬티홀 법칙 

첫 번째 선택을 안 바꾸고 당첨될 확률과

꽝을 본 후 선택 바꿨을 때 당첨될 확률을 봤는데..

숫자를 점점 늘리니깐 바꿨을 때가 더 높게 나오더라고요 ㅋㅋ

<?php

function montyhall($user){
   $nochange_count = 0;
   $change_count = 0;
   $door = [1,2,3];
   
	

   for($i=0; $i < $user; $i++){
      $car = rand(1,3);
      $user_choice = rand(1,3);
	// 유저가 선택을 바꾸지 않았을때 당첨 count
      if($car == $user_choice){
         $nochange_count +=1;
    }
   
      $monty_door, $second_choice;

	// 사회자가 꽝의 문을 골라줌
      foreach($door as  $val){
         if($val != $car && $val != $user_choice){
            $monty_door = $val;
         }
      }
      $monty_open = $monty_door;
	
	// 사회자가 열어준 문도 아닌, 유저가 처음에 선택한 문도 아님 -> 선택을 바꿨을 경우
      foreach($door as $val2){
         if($val2 != $monty_open && $val2 != $user_choice){
            $second_choice = $val2;
         }
      }
	
	// 유저가 선택을 바꿨을때 당첨 count
      if($car == $second_choice){
         $change_count += 1;
      }

   }
   
   echo $change_count."<br>";
   echo $nochange_count."<br>";

   echo "바꿨을때 : " .$change_count/$user."<br>";
   echo "변경 안했을때 : " .$nochange_count/$user."<br>";
}


montyhall(100);

?>

 

 

+ Recent posts