일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 연산자와의 관계
- SQL
- foreigen key
- 지연로딩
- exclusive lock
- git 기초
- 피연산자
- 참조타입
- 즉시로딩
- 서버 스크립트
- 프로그래머스 코테
- select
- 변수와 메서드
- jsoup
- null/not null
- 오버라이딩
- 오버로딩
- 멱등성
- Shared Lock
- InterruptedException
- bufferedInputStream
- Java
- 추상메서드
- delete
- 컬렉션 프레임워크
- 프로그래머스
- 변수와 상수
- N+1
- 메세지 큐
- 원시타입
- Today
- Total
[JAVA_Back-End]
PHP란 무엇인가? 본문
APM이란?
PHP는 유닉스나 리눅스 환경에서 주로 사용되며, 웹 서버 프로그램인 아파치와 데이터베이스 기능을 지원하는 MySql과 연동해 동작함. 이 세 가지를 통칭하여 APM(Apache, PHP, MySQL)이라고 부름.
- PHP는 HTML 언어의 기능을 보완하는 역할을 함. 즉, HTML언어는 웹 문서를 작성하는 데 한계가 많음.
-> 이를 보완하기 위해 PHP가 개발됨. HTML문서 내부에 PHP 코드를 추가하는 형식으로 사용.
-> 클라이언트가 웹 문서를 요청하면, 서버는 웹 문서에 포함된 PHP코드를 먼저 실행한 후에 그 결과를 웹 문서에 반영하여 클라이언트에 회신함.
PHP와 비슷한 기능을 수행하는 ASP(Active Server Page)는 MS 윈도우즈 서버 운영체제에서 제공하는 다양한 컴포넌트를 활용할 수 있다는 장점이 있음
-> 대부분의 일반 사용자는 윈도우즈 운영체제에 익숙하기 때문에 사용하기 편리하지만, 유닉스와 리눅스 등의 운영체제에서는 사용할 수 없다는 단점이 있음
-> 그에 비해 PHP는 모든 종류의 운영체제에서 지원하며, 공개용 데이터베이스인 MySQL과도 연동이 쉬움
APM의 동작 원리
1. 웹 브라우저는 웹 서버기능을 수행하는 아파치와 연결을 설정하여 필요한 웹 문서를 요청함
2. 문서의 내용이 HTML만으로 구성되어있으면 PHP, MySql과의 연동 과정을 생략하고, 아파치 서버가 바로 웹 브라우저에 문서내용을 회신함
3. 만약 웹 문서에 PHP와 MySql기능을 사용하는 코드가 있으면 PHP에 해당 코드를 전송하여 처리하도록 요청한다.
4. MySql데이터베이스에 저장된 데이터와 접속이 필요하면 해당 질의어를 MySql에 보내 원하는 데이터를 받아야 한다.
5. PHP가 Apache서버에 정보를 회신할 때는 모든 정보가 HTML로 번역되므로 PHP코드, MySql처리를 위한 질의어 등이 웹 브라우저에 회신되는 경우는 발생되지 않는다. (보안적으로 괜찮음)
=> 이는 PHP 코드를 웹 브라우저에 회신하지 않음으로써, 어렵게 개발한 PHP코드가 노출되는 것을 방지하는 장점을 제공한다.
PHP
- 서버 측 스크립트
- PHP 프로그램은 내려받기 전에 웹 서버에서 실행된다.
- 웹 브라우저에 내려받은 코드는 프로그램이 실행된 HTML 코드이다.
- 내려받은 HTML 코드에는 PHP 프로그램 코드가 포함되어 있지 않다.
- PHP는 MySQL과 연동으로 사용할 수 있다.
PHP VS JavaScript
PHP
- 서버 측 스크립트
- 프로그램 코드가 보여지지 않기에 자바스크립트에 비해 보안성이 뛰어나다
- 웹 브라우저의 버전과 종류에 영향을 받지 않는다.
- 실시간으로 처리하는 경우 적합하지 않다.
JavaScript
- 클라이언트 측 스크립트
- HTML 파일에 삽입하거나 사진 등을 웹서버에서 내려 받는다.
- 내려받은 자바스크립트 프로그램은 웹 브라우저에서 실행되고 동적으로 화면에 변화가 일어난다.
PHP 코드의 처리
PHP 코드는 HTML 문서의 내용에 포함되어 작성
'<?php' 와 'php?>' 구분자로 HTML 코드와 구분된다.
=> PHP 코드는 PHP에 의하여 번역되었으므로 결과적으로 클라이언트에 회신되는 문서에는 PHP코드가 존재하지 않는다.
+ 웹 개발에 있어서 좋은 포스팅
[SpringBoot] 웹개발 3가지 방식과 동작원리 (tistory.com)
[SpringBoot] 웹개발 3가지 방식과 동작원리
웹 개발 방식 3가지 웹을 개발하는것은 크게 3가지 방법이 있다. 첫번째로는 정적 컨텐츠가 있는데 이것은 정적 파일을 웹 브라우저에 그대로 내려주는 것이고, 두번째로는 MVC와 템플릿 엔진이
deftkang.tistory.com
'Programming > PHP' 카테고리의 다른 글
[PHP] PHP CodeIgniter (0) | 2024.03.27 |
---|