on
PHP란?
PHP란?
웹서버의 시초
초창기의 웹은 클라이언트가 서버에게 HTML을 요청을 하면 서버는 컴퓨터에 내장되어 있는 HTML문서를 읽은 후 인터넷을 통해 클라이언트로 응답하는 구조였다. 또한, HTML문서도 사람이 수작업으로 일일히 만들어야 했다. HTML을 직접 타이핑해서 만들고 관리하는 것이 어렵고 힘들기 때문에 나오게 된 것이 바로, PHP, JSP, ASP, Django, Ruby on Rails, Node.js ... 와 같은 서버 사이드 언어 이다.
HTML의 컨텐츠를 PHP에게 넘기면 PHP가 자동으로 HTML을 생성해준다. 더욱 편리하게 웹페이지를 생성 할수 있게 된 것이다.
클라이언트사이드 와 서버사이드
클라이언트 사이드 : 브라우저는 서버에서 수신한 HTML 문서를 해석하여 화면에 표시해준다. 이때 사용 하는 스크립트 언어는 자바스크립트가 있다.
서버 사이드 : 브라우저에서 요청한 HTML문서에 서버 사이드 스크립트 언어 코드가 포함되어 있다면, 서버는 이 부분을 자신이 처리하고 그 결과를 브라우저에게 보내준다. 자주 사용하는 스크립트 언어로는 PHP가 있다.
스크립트 언어?
스크립트 언어란 응용 소프트웨어를 제어하는 컴퓨터 프로그래밍 언어. 스크립트는 연극 용어에서 유래되었으며 배치언어, 작업 제어 언어 라고도 불리었다. 일반적으로 스크립트 언어는 매우 빠르게 코드를 실행하기 위해 고안되었으며, 짧은 소스 코드 파일이나 REPL(Read-Eval-Print-Loop : 명령 줄 쉘과 같은 방식)로 상호작용하는데 적합하도록 설계되었다. 보통 스크립트는 시작에서 끝날 때까지 순차적으로 실행되며, 명확한 엔트리 포인트(진입점)이 없다. 이를테면, 자바를 스크립트 언어로 규정하는 것은 일반적이지 않는데, 이는 어느 클래스들이 어느 파일에 존재하는지에 대한 길이가 긴 문법과 규칙 때문이며, 자바를 상호작용적으로 직접 실행하는 것도 불가능하다. 왜나하면 소스 파일들이 오직 호스트 애플리케이션이나 애플리케이션 런처를 사용하여 외부에서 호출되어야 하기 때문이다.
(CF. 컴파일 언어)
- 스크립트 언어를 사용하면 안될때
PHP 환경설정
방법1. bitnami WAMP (Window Apache MySQL PHP)로 설치하는 방법
방법2. nginx 웹서버 설치 -> php 설치
nginx 다운로드 - nginx/Windows-1.20.2 php 다운로드 - VC15 x64 Thread Safe (2021-Dec-14 22:28:13) php 설정파일 변경
php.ini-production/ php-ini-development 중 하나를 열어 extension_dir="C:/php7/ext"(php설치경로/ext)로 변경후 php.ini로 저장 nginx 설정파일 변경
웹서버가 listen할 포트번호와, root directory경로, index파일을 추가한다.
php가 돌아가는 ip와 포트번호를 입력해준다. server { listen 80; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { root C:\Users\LCLT_08\Desktop\김지영\phpProject; index index.php index.html index.htm; } ... # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME C:\Users\LCLT_08\Desktop\김지영\phpProject$fastcgi_script_name; include fastcgi_params; } 실행하기
php-cgi 실행 : php-cgi.exe -b "127.0.0.1:9000" -c php.ini
nginx 실행 : nginx.exe
nginx 재시작 : nginx -s reload 테스트
4 에서 설정한 root 경로에 index.php를 생성하고 phpinfo();? 적은후 실행해보기.
--
PHP의 특징
C언어를 기반으로 만들어진 서버 측에서 실행되는 스크립트 언어.
PHP로 작성된 코드를 HTML 코드 안에 추가하면, 웹 서버는 해당 코드를 해석하여 자동으로 HTML문서를 생성한다.
장점
주요 운영체제와 대부분의 웹 서버에서 지원한다.
다른 프로그래밍 언어보다 직관적으로 코드를 작성 할 수 있다. (작성할 코드 양이 적다)
텍스트 처리에 특화되어 있어 HTML 문서 처리에 적합하다.
단점
간단한 사이트를 제작하기 위해 만든 언어라서 복잡한 사이트를 만드는 데 효율적이지 못함
보안에 안전하지 않은 언어 구조
버전별 주요 특징
PHP5 : 객체지향 프로그래밍 개념 추가
PHP5.3 : 네임스페이스 추가
PHP5.4 : 단일 상속의 한게를 없앤 트레이트 개념 추가
PHP7 : 2배 이상의 속도 향상 및 익명클래스 추가 ( PHP7.1.0 - 표준 )
PHP 동작방식
참조
공유하기 글 요소 저작자표시
from http://rlawldud335.tistory.com/2 by ccl(A) rewrite - 2021-12-28 14:00:27