ReactPHP Tutorial #10: Middleware

안녕하세요,이 동영상에서는 미들웨어가 실제로 무엇을 의미하는지 자세히 살펴 보겠습니다 이름에 따르면, 미들웨어는 요청 – 응답주기의 중간에 오는 것입니다

그래서 우리가 웹 서버를 가져 가면 항상 요청이 있습니다 요청한 다음 응답이 있습니다 따라서 모든 웹 서버에 기본적으로 미들웨어가 있습니다 요청이 오면 웹 서버는 우리가 작성한 논리를 기반으로 몇 가지 처리를 수행합니다 그런 다음 우리는 응답을 받는다

실제 애플리케이션에서 요청은 서버 로직의 다른 부분을 거쳐야합니다 예를 들어, 인증, 유효성 검사, 로깅, 캐싱 등이 될 수 있습니다 요청 – 응답 서클을 양파로 간주하고 요청이 들어 오면 이 양파의 다른 층을 거쳐 핵심에 도달합니다 모든 미들웨어는이 양파의 층입니다 요청을 받고 그것을 전달하기 전에 수정할 수있는 호출 객체입니다

체인의 다음 미들웨어 또는 양파의 다음 레이어로 이동합니다 이제 간단한 hello world 서버부터 시작해 보겠습니다 모든 수신 요청에 대해 동일한 일반 텍스트 응답을 반환하는 콜백이 여기 있습니다 작동하는지 확인하고 서버를 실행 한 다음 요청하십시오 좋습니다

작동합니다 로깅을 추가하기로 결정 했으므로 요청 메소드와 경로를 인쇄하려고합니다 getMethod (), getUri () 및 getPath ()를 호출하십시오 서버를 다시 시작하십시오 요청을하면 응답과 기록 된 메시지가 모두 표시됩니다

그런 다음 관리자 페이지를 추가하고 모든 페이지를 리디렉션하려고합니다 그래서 우리는 경로를 확인하고 그것이`admin`과 같다면 우리는 루트 경로로 방향 전환 응답을 리턴합니다 서버를 다시 시작하고 작동하는지 확인하십시오 우리는이 URL을 요청하고 여기에`admin`을 추가합니다 이제 응답 헤더를 볼 수 있습니다

루트 경로로 리디렉션되었습니다 따라서 코드는 작동하지만 주 요청 처리기 인이 콜백은 계속 성장합니다 이제는 논리의 3 가지 부분, 즉 로깅, 리디렉션 및 실제 논리가 포함됩니다 `Hello, world` 응답을 가진 서버의 이 요청 처리기는 매우 빠르게 유지 보수하기가 어려워집니다

그래서 그것을 고치기 위해이 세 부분을 자신의 미들웨어로 추출 할 수 있습니다 우리는 첫 번째와 합계 그것은 로깅입니다 메모리에서 새로 고침하려면 미들웨어가 무엇입니까? 그것은 호출 가능합니다 그래서 그것은 기능입니다 요청 객체와 다음 미들웨어를 받아들입니다

함수 내에서 응답을 반환하거나 체인을 계속하기 위해 다음 미들웨어를 호출 할 수 있습니다 그리고 로깅의 경우 우리는 다음 미들웨어를 계속하고 싶습니다 그리고 마지막 단계는이 라인을 새로운 미들웨어로 옮기는 것입니다 좋아, 로깅이 완료되었습니다 다음은 리디렉션입니다

다시 요청과 다음 미들웨어가있는 함수를 만듭니다 여기에서 그 경로를 확인합니다 : 만약 그것이`admin`과 같으면, 우리는 리다이렉트로 응답을 리턴합니다 그것은 우리가 사슬을 멈추는 것을 의미합니다 그렇지 않으면 우리는 다음 미들웨어를 계속합니다 체인의 마지막 미들웨어는`Hello, wolrd` 응답입니다

이 경우 마지막 미들웨어이므로 $ next 인수를 수락 할 필요가 없습니다 우리는 단지 응답을 반환합니다 그러나 실제로이 미들웨어에는 어떤 주장도 필요하지 않습니다 이제, 우리의 미들웨어 핸들러를 사용하기 위해서, 모든 호출 가능한 배열을 전달해야합니다 서버 생성자에 전달합니다 이제 서버를 다시 시작하십시오

그런 다음 관리자 페이지를 요청하고 서버가 리디렉션과 함께 응답을 보냈습니다 또한 여기에 기록 된 경로가 있습니다 따라서 이전과 동일하게 작동합니다 하지만 이제는 서로 다른 부분을 완전히 분리했습니다 서버 로직의 예를 들어 로깅을 업데이트해야하는 경우 두 개의 다른 미들웨어를 만질 필요가 없습니다

당신이 정말로 복잡한 논리를 가지고 콜백 내부에 맞추기가 어렵다면, magic __invoke () 메소드로 callbable 클래스를 생성하면된다 로깅을위한 클래스를 생성합시다 콜백과 동일한 인수 (요청 및 다음 미들웨어)를 가진 __invoke () 메소드 하나만 있습니다 여기에 클래스 이름을 가져온 다음 인쇄 요청 데이터를 복사하여 붙여 넣습니다 수업이 끝났으니 이곳에서 수입해야합니다

Loggingphp 필요 그런 다음이 콜백을 제거하십시오 우리는 더 이상 필요하지 않습니다 그리고 여기에서는 Logging 클래스의 인스턴스를 인스턴스화하고이를 미들웨어로 전달합니다

그런 다음 서버가이 인스턴스를 호출합니다 이제 서버가 이전과 같이 작동 함을 증명해 보겠습니다 우리는 그것을 다시 시작한 다음 요청을합니다 리디렉션에 대한 응답과 서버 콘솔에서 로깅이 있지만이 경우 이 로깅 미들웨어는 클래스로 구현됩니다 이제 미들웨어 서명을 살펴보십시오

여기에 응답이 없다는 것을 알 수 있습니다 우리는 다음 미들웨어 요청을 가지고 있지만 응답은 없습니다 여기서 응답을 수정할 방법이없는 것 같습니다 그러나 진실이 아닙니다 사용자 정의 헤더를 추가하여 응답을 수정하는 새로운 미들웨어를 만듭니다

이 미들웨어를 구성 가능하게 만들자 우리는 생성자를 통해 헤더의 제목과 그 값을 받아들입니다 그런 다음 요청과 다음 미들웨어로 __invoke () 메소드를 추가하십시오 그렇다면 다음 미들웨어에서 반환되는 응답을 어떻게 수정할 수 있습니까? 변수 $ next는 체인의 다음 미들웨어를 나타내므로 명시 적으로 호출 할 수 있습니다 이제 우리는 다음 미들웨어로부터받은 응답을 받았습니다

그런 다음 고객 헤더를 추가하고 미들웨어에서 반환 할 수 있습니다 withHeader () 메서드를 호출하고 제목과 값을 지정합니다 이제는이 미들웨어를 서버에 연결해야합니다 새로운 수업이 필요합니다 그리고 새로운 미들웨어의 인스턴스를 헤더`X-Custom`과 값`foo`로 생성하십시오

확인을 할 시간입니다 항상 서버를 다시 시작하고 요청하십시오 서버가 사용자 정의 헤더`X-Custom`과 값`foo`를 포함하는 응답을 리턴한다는 것을 알 수 있습니다 자, 그럼 어떻게, 왜, 언제쯤에 꽤 잘 이해할 수 있을까요? 우리는 reactPHP에서 미들웨어를 사용합니다

PHP Security Tutorial: Cross-Site Request Forgery (CSRF) Protection

이 튜토리얼에서는 교차 사이트 요청 위조 공격 및 어떻게 보호 할 수 있는지 보여 드리겠습니다 간단한 해시를 사용하여 양식 작성하기 PHP의 함수 안녕 얘들 아

상원 의원은 여기 codingpassiveincomecom에서 장소는 다른 사람들이 다른 사람들이되도록 돕는다 개발자보다 훨씬 쉽고 빠르게 그들은 스스로 그렇게 할 것입니다 그게 너에게 관심있는 무언가이다 당신 중 일부를 위해 지금 가입을 고려하십시오

사이트 간 요청을 알지 못하는 위조는 악의적 인 공격이다 웹 사이트에서 웹에 요청을 보냅니다 나는 이미 사용자이다 매우 다른 인증을받은 공격자가 액세스 할 수있는 웹 사이트 대상 웹의 기능 우리는 이미 피해자입니다 인증 된 브라우저 타겟에는 에서 소셜 미디어와 같은 웹 애플리케이션 브라우저 이메일 클라이언트 온라인 뱅킹 및 다음 네트워크 장치에 대한 인터페이스 아주 간단한 설명이고 나는 희망한다

이 설명이 너에게 줄 것이다 십자가의 기본 이해 사이트 요청 위조 이제 나를 보여 드리겠습니다 지금 PHP에서 보호 기능을 가져 오는 방법 나는 여기 숭고한 본문에 있고 나는 단지 일반 indexphp 파일을 다음과 같이 만듭니다 먼저 우리가 정의 할 필요가있는 것을 볼 수 있습니다

PHP 코드와 저는 여기에 글을 쓸 것입니다 우리가해야 할 일은 너 시작해야 해 그 후에 세션을 만들어야합니다 hash_hmac 함수의 키 그 후에 우리는이 파일을 만들어야합니다 토큰과 우리가 필요로하는 마지막 것 정보를 받아 들일 필요가 있니? 우리가 만들 양식에서 HTML과이 토큰의 유효성을 검사하여 토큰의 유효성을 검사해야하므로 그냥 몇 가지 기본 HTML 양식을 만들려면 특별한 것은 없다

오키 나는 그가 양식 방법이 될 것이라고 말할거야 게시물과 액션은 indexphp가 될 것입니다 이 파일은 하나의 입력 만 갖습니다 유형은 사용자 이름이 될 텍스트 이름이됩니다

사용자 이름과 자리 표시자는 너의 이름은 무엇이 아주 간단 할까? 숨겨진 버튼 하나를 CSRF에 저장합니다 토큰 괜찮아요, 우리가 제출해야합니다 Botton 좋아, 아주 간단한 HTML 폼이다 이제 보자 우리는 두 가지를 보았다

입력은 우리 텍스트와 제출을 누르면 아무 것도 안됩니다 이미 이것을 알기 때문에 지금해야합니다 우리가 회의를 시작하자 우리가 이미 창조 한 것을보고 싶다 우리 세션이 그렇게되지 않으면 우리는 우리가 사용할 새로운 열쇠를 만든다

has_hmac 함수와 나는 먼저 두 함수를 호출하여 만듭니다 16 진수로 2 진수 거기에 나는 무작위로 잃는다 바이트와 ​​나는 32를 사용할 것이다 이 함수가 32를 생성하는지 보자 임의의 바이트와이 하나는 은밀한 것입니다

우리가 할 수 있도록 16 진수 형식으로 물었습니다 이걸 사용해서 얻은 것을 보아라 그게 다야 우리는 이것을 구하고있다 우리가 원하기 때문에 세션에 해시 우리 열쇠는 항상 동일해야합니다

그렇지 않으면 우리는 할 수 없을 것입니다 내부에있는 CSRF 토큰을 검증한다 양식 이제 괜찮아 다음 일은 우리 다 CSRF 토큰을 만들어야합니다

hash_hmac를 호출하여이를 수행합니다 암호화의 유형을 데이터를 256으로 사용하는 것을 선호합니다 모든 유형의 문자열을 쓸 수 있지만 내가 보통하는 일은 내가 쓸거야 문자열과 그 문자열의 끝에서 나는 현재 파일의 이름을 추가합니다 그게 내가 10을 가지고 있다면 내가 할 모든 파일마다 다른 파일들 다른 CSRF 토큰을 가져야합니다

우리는 매번 우리 양식을 쓰는 다른 방법 여기 이것은 약간의 문자열이며 나는 PHP를 유지하고 우리는 열쇠가 세션 안에 저장되어 있으므로 열쇠 말하지 않는가? 아래에서 우리는 이것을 출력해야합니다 CSRF 토큰 이제 테스트 해 봅시다 우리가 여기에서 볼 수있는 것처럼 이것을 확인합니다 우리의 CSRF 토큰은 매우 긴 토큰과 거의 불가능합니다 우리가 있기 때문에이 문자열을 얻으려면 매우 강력한 몇 가지 기능을 사용하여 PHP 7 버전에서만 사용 가능합니다

그래서 다음 것은 검증 할 필요가 있다는 것입니다 토큰 그래서 우선 우리는 isset post가 다음 중 어느 것을 제출하는지 여기에있는 코드의이 부분을 의미합니다 이 버튼을 눌렀을 때만 실행 그래서 여기에 우리의 토큰을 검증 할 필요가 있습니다 II 이 같은 것을 할 수있다 CSRF 동등한 게시물 CSRF하지만 그것은 내가 원하는대로 보호 장치가 충분하지 않아 너에게 조금 더 잘 보이고 보여줘

hash 해시 함수를 사용하면됩니다 아직도 말하는 그 토큰을 비교할 것입니다 그냥 여기서 뭔가해라 네 이름을 에코 ~이다 토큰이 실패했습니다 이제 해쉬를 테스트합시다

이제 보자 너의 이름은 정상 회담이다 우리의 CSRF 토큰은 유효하지만 이 토큰을 조작하고 여기 뭔가 잘못 됐어 이렇게 말하고 괜찮은 것을 제출하려고 CSRF 토큰이 실패했습니다 올바른 CSRF가 없는지 확인하십시오

우리가이 토큰을 결코 실행하지 않을 토큰 매우 중요한 코드 이 방법으로 우리의 양식은 보호받습니다 얘들 아,이게 아주 간단하길 바래 튜토리얼과 정말 거기에 많은되지 않습니다 배워라 그래서 당신은 어떻게 배울 필요가있다 키를 올바르게 작성하고 적절한 해시를 만들고 그 유효성을 확인하십시오

해시 그래서 그냥 네 가지가 있습니다 당신이 알아야 할 기능들 너는이 비디오가 마음에 든다 친구를 공유하고 또한 어떤 질문이라도있을 것입니다 아래 의견에 답변 해 드리겠습니다 돌보다

[#46] Einführung in RESTful APIs: PHP Framework SLIM

안녕하세요 새로운 비디오

오늘 우리는 소위 말하는 사람들과 이야기하고 싶다 PHP에서 RESTful API는 이것을 처리합니다 우리는 다음 동영상에 다른 것을 사용하는 것 화제는 여기에서 아주 광대하다 짧은 요약 Api 포즈 예를 들어 제 3자를 내 시스템에 연결하십시오

각각 주문할 수있다 기능을 사용할 수 있습니다 REST는 Representational State를 나타냅니다 전송 및 무엇보다 재사용 성, 확장 성 및 웹 서비스의 확장 성 보증 REST는 그렇지 않습니다

프로그래밍 언어지만 종류 건축 스타일과 기반 HTTP 프로토콜 HTTP와 같은 그녀의 제안 어쩌면 GET, POST, PUT 및 데이터가있는 DELETE 메소드 가져 오기, 삽입, 갱신 또는 삭제할 수 있습니다 에서 데이터 교환 RESTful API는 일반적으로 JSON 형식 그건 아주 잘할 수있어 이동 단말기가 처리된다

그것은 소위 자원을 시도합니다 그래서 자체 포함 그래서 기능성을 만들기 위해서 유형 모듈 형 구조 자원은 충분히 중요한 것은 그것에 관한 것입니다 독립적 인 문제로 고려해야한다 리소스는 URI로 식별되며 다음과 같이 보일 수 있습니다

/ 로그인 / 로그 아웃 / 업데이트 / 사용자 / 1 등등 REST 호환 API 찾기 인터넷의 무수한 장소에서 Facebook, Twitter 또는 Dropbox와 같은 그들은 모두 표준화 된 개발자 인터페이스 그들의 서비스에 줄 가능성 액세스 할 수 있습니다 대부분 그것으로 앱을 소유하고 있습니다 만들 수 있습니다 두 번째 앱에서 찾을 수 있습니다

Facebook 사용의 가능성 등록합니다 좋아, 몇 가지 기본적인 기능이있다 RESTful API를 수행해야한다 총 5 개 1) 고객 및 서버 필요 서로 완전히 분리 된 합니다

즉, 서버는 API를 제공합니다 클라이언트가이를 사용합니다 고객은 그러나 그것에 관한 정보는 없다 백그라운드에서 무슨 일이 일어나는가 그는 받는다

그냥 응답, 그래서 하나 긍정적이거나 긍정적 인 답변 부정이 실패합니다 포인트 2) 무국적자 여야합니다 그래서 모든 REST 메시지를 규칙화하라 항상 모든 정보를 포함합니다 자원의 기능성 수행합니다

상태가 없습니다 정보는 어딘가에 저장됩니다 3 점) HTTP 캐싱이어야합니다 불필요한 문의에 사용 피했다 캐싱은 이미 HTTP에 있습니다

구현 된 프로토콜 여기있어 일부 데이터는 캐시 됨 그녀에게 다시 묻지 마라 필요가있다 그래서 트래픽 감소

4) 다음과 같은 형태의 인터페이스 API는 일정하게 정의되어야합니다 합니다 예를 들어, 이것은 지정 및 방법을 수행합니다 리소스를 나타냅니다 클라이언트에 따라 리소스가 다를 수 있기 때문에 그것은 다른 액세스 반환 형식 또는 다른 설명을 보여줍니다

그리고 마지막 요점은 아래와 같습니다 시스템은 다중 계층이어야합니다 레이어 시스템은 다른 것들과 이미 그랬던 것처럼 단지 각각의 인터페이스를 말했다 알기 그것은 아키텍처를 유지합니다

슬림하고 쉽게 그럼 지금 앉아 있고이 모든 것 요구 사항을 프로그램하십시오 그러나 그것은 또한 훨씬 쉽습니다 이미 완료된 프레임 워크 의지

아시다시피, 이것은 하나입니다 프레임 워크는 완성 된 프로그램이 아니지만 오히려 프로그래밍 프레임 워크입니다 다양한 기능 이미 미리 프로그램 된 우리가 그것을 사용할 때까지 기다려라 합니다 PHP 기반의 프레임 워크가 여러 개 있습니다

많은 사람들이 꽤 강력합니다 SLIM은 이름에서 알 수 있듯이 오히려 협소하게 유지 될 수 있으므로 시작하기에 좋습니다 그것은 우리에게 모든 기능을 제공합니다 REST를 준수하는 API를 위해 필요가있다 우리는 모든 것을 무엇이 필요합니까? 나는 이미 SLIM에있다

웹 사이트 및 SLIM 사용 나는 그것을 설치해야한다 그게 최고야 작곡가에 대해서 작곡가는 일종의 패키지 관리자입니다 다른 PHP 라이브러리와 다른 확장 기능을 설치할 수 있습니다

"다운로드"를 클릭하기 만하면됩니다 실행하고 설치하십시오 그거야 정말 쉽습니다 그 후에 나는 모든 것이 해결했습니다

Windows 키 + R 통해 실행 메뉴를 열 수 있습니까? "cmd"를 입력하고 하나를 얻으십시오 명령 줄 창을여십시오 여기 있습니다 그런 다음 "composer -version"을 입력하십시오 너 이 문제는 모든 것이 해결되었습니다

그 후 SLIM 프레임 워크를 사용할 수 있습니다 여기에 지정된 명령을 설치하십시오 나는 그것을 스스로 복사 할 것이다 나는 그것을 다음과 같이 설치하고 싶다 폴더 : C : xampp htdocs loginapp 이것은 나중에 우리의 다음 프로젝트가 될 것입니다

합니다 내가 그렇게 할 수있게 먼저 적절한 폴더를 변경하십시오 이것은 "cd" "디렉토리 변경"의 약자 와 그런데 탭 키를 사용할 수 있습니다 자동 완성을 사용하십시오

그런 다음 여기에 명령을 복사하고 들어가서 잠시 기다려주십시오 그게 전부 야 나는 창문을 닫고 볼 수있다 내가 여기에 파일 좀 가져 왔어 있습니다

Composerjson 및 lock 및 공급 업체 폴더 아직도 많이있다 더 많은 파일이 있습니다

그게 내가하는 일이야 하지만 이제 그걸로? 조금 더 내려 내가해야하는 PHP 스크립트에있다 이 파일을 포함하십시오 그럼 내가 할거야 나는 나 자신을 창조한다

최고 수준 내 색인 파일 명령을 붙여 넣으십시오 지금 우리는 아무것도 볼 수 없다 우리가 지금까지 해 온 모든 것 통합 할 프레임 워크입니다 그러나 우리는 여전히 아무 것도 공격하지 않고있다 기능도 정말

원하는 것 이제 바꾸자 그것을 위해 창조하십시오 우리는 소위 말하는 길을 택했습니다 발견 여기서 Routing (라우팅) -> Create Routes (경로 생성) 여기에 방금 언급 한 경로를 찾는다 다시 GET, POST, PUT 및 DELETE를 수행하십시오

나는 나에게 GET 경로를 복사해라 나는 그것을 추가 할 것이다 그냥 여기와 먼저, SLIM은이 $ app 변수에 있습니다 여기에 실제 하나있다

경로 버팀대에 대하여 GET 매개 변수를 쿼리 할 수 ​​있습니다 그들은이 $ args에 여기있을 것입니다 가변 토지 GET 매개 변수가 있습니다

하지만 삭제하지 않기 때문에 삭제됩니다 다시 나가 내 경로를 "/ books"라고해서는 안됩니다 그러나 예를 들어 "/ home" $ 요청 변수에 대한 토지 정보 각각의 요청

이 경우, 하나 GET 요청 및 $ 응답을 통해 변수 예 : 이 경로의 출력에 영향을줍니다 에서 지금 그녀는 아무것도 쓰지 않는다 그러나 나는이 반응에 관해 당신에게 말할 수있다 변수를 변경하십시오 getBody () -> write ()에 대해 나는 뭔가를 할 수있다

예 : "Homepage" 우리는 또한 그것을 볼 수 있습니다 주의 할 것입니다 : 그것은 여전히 ​​작동합니다 아무것도 없습니다 우리가 우물이기 때문입니다

가장 중요한 기능은 아직 없습니다 실행하고 그 "run ()" 이제 무언가가 일어났습니다 다 프레임 워크가 이제 우리에게보고합니다

이봐, 나는 그 페이지를 찾지 못했다 그것은 뭔가입니다 하지만 나는 가지고있다 "/ home"이라는 경로를 정의합니다 너는 여기에 너를 좀 더 잘해야한다

를 참조하십시오 그러나, 우리는 지금 또 하나있다 받은 오류 당신이 무언가를 읽어야하고 "첫 번째 응용 프로그램"에서 찾습니다 작은 힌트

여기 아래로htaccess 파일이 아직 없습니다 그게해야 모든 요청을 색인으로 전달하십시오 그래서 나는 그것도 복사 할 것이다

새 파일 만들기 모든 것을 추가하십시오 "다른 이름으로 저장", "모두에게"라고 말하십시오 파일 형식 ", htaccess 여기에 착륙했습니다

이제 더 Za는 좋아 보인다 홈페이지 좋은 지금까지 처음 그래서 우리는 우리의 작은 새끼를 지금 가지고 있습니다

RESTful API가 생성되었습니다 다음 동영상에서 로그인 API를 갖고 싶습니다 만듭니다 전송 된 데이터가 자격 증명이 유효하고 그 다음에 true 또는 false를 반환합니다 모든 Android 또는 iOS 앱 그런 다음 액세스 할 수 있습니다

지금까지 다음에!

Installing Composer & Slim Framework – slim3 skeleton github

안녕 얘들 아 SilverFoxA입니다

웹 개발에 대한 체계적인 비디오 튜토리얼 시리즈입니다 이 튜토리얼 시리즈의 끝으로, 처음부터 웹 사이트를 개발하는 방법을 알게 될 것입니다 유창하게 모든 PHP 기반 프로젝트에서 작업 할 수 있습니다 웹 서비스 및 데이터베이스 개념 이 튜토리얼 시리즈의 전제 조건은 PHP 56 이상과 작곡가입니다

작성자는 PHP 종속성 관리자입니다 프로젝트가 의존하는 라이브러리를 선언 할 수 있으며이를 관리 할 수 ​​있습니다 Windows 시스템에서 Mac 및 CmD의 터미널 열기 php space -V 명령을 입력하여 설치된 PHP의 버전을 확인하십시오 PHP 버전이 확인되고 일치하거나 요구 사항이 getcomposerorg로 이동하십시오 다운로드를 클릭하십시오

코드를 복사하여 콘솔에 붙여 넣습니다 작곡가가 설치되었는지 확인하려면 형식 작곡가 -V 작곡가가 설치되었는지 여부를 표시합니다 설치되어있는 경우이 특정 화면과 작곡가 버전을 볼 수 있습니다 일단 작곡가가 설치되었습니다 우리는 슬림 프레임 워크 인 요소를 하나 더 필요로 할 것입니다

이것이 우리 프로젝트의 백본입니다 우리는 SEO 친화적 인 URL을 처리하는 API와 함께 슬림 한 프레임 워크의 맨 위를 걷습니다 더 자세한 내용은 다음 비디오에서 논의 할 것입니다 그것을 우리 프로젝트에 포함 시키려면 요구 사항을 작곡가에게 전달해야합니다 터미널을 열고 작곡가 공간을 입력하여 프로젝트 슬림을 만듭니다

슬림 / 스켈레톤 및 프로젝트 이름 필요한 종속성과 함께 슬림하게 설치합니다 설치가 완료되면 특정 디렉토리로 이동하십시오 프로젝트 이름은 어느 것입니까? 기본적으로 모든 웹 기반 파일은 공용 디렉토리 아래에 보관됩니다 우리는 XAMPP WAMP 나 그 같은 클라이언트없이이 프로젝트를 실행할 수 있습니다 우리는 PHP space -S capital 명령을 입력하면됩니다

localhost 및 포트 번호 디렉토리 아래의 모든 파일은 localhost 및 언급 한 포트에서 호스트됩니다 로컬 호스트 URL에 도달하지 않으면이 오류가 표시됩니다 공개 디렉토리 주변의 모든 웹 기반 파일 따라서 localhost URL을 public으로 변경하면 우리가 만든 프로젝트를 볼 수 있습니다 터미널에서 실행중인 프로젝트의 로그를 볼 수 있습니다 자습서가 마음에 들면서 동영상을 구독하고 공유하고 더 많은 것을 따르기 바랍니다

Slim Blog : Introduction to Slim Framework – Part 1

안녕 얘들 아 SilverFoxA는 웹 개발에 대한 잘 구성된 비디오 자습서 시리즈를 제공합니다

이 튜토리얼 시리즈에서는 프로젝트 기반 접근 방식을 취할 것이다 그래서 우리는 처음부터 웹 사이트를 개발하는 데 필요한 모든 단계를 이해할 수 있습니다 우리는 백엔드에서 작업 할 수있는 블로그를 개발할 것입니다 프런트 엔드와 함께 API 하나는 세 가지 주요 단편에서 웹 사이트 개발 프로세스를 나눌 수 있습니다 백엔드, API 레이어 및 프런트 엔드 전체 데이터베이스 로직이 백엔드 아래에있게됩니다 또한 백엔드 개발자의 주요 과제 중 하나는 백엔드 로직이 어떤 방식 으로든 노출되지 않도록 보장하는 것입니다 따라서 우리는 API 계층을 사용하여 서버에 숨겨진 모든 백엔드 로직을 유지합니다

응용 프로그램과 상호 작용하도록 API 레이어를 노출합니다 프런트 엔드는 일반 사용자가 볼 수있는 사용자 인터페이스이므로 나는 아름다운 레이디라고 표시했습니다 API 레이어부터 시작하여 슬림 한 프레임 워크에 대해 간단히 설명해 드리겠습니다 우리의 응용 프로그램의 백본은 어느 것입니까? Slim은 웹 애플리케이션과 안정적인 웹 서비스를 구축하는 데 사용되는 경량의 PHP 프레임 워크입니다 대부분의 개발자는 프레임 워크를 선호합니다

가볍기 때문입니다 사용 가능한 다른 프레임 워크와 비교하면 리소스가 적습니다 이전 동영상에서 작곡가와 함께 슬림 한 설치 방법을 보여 주었기 때문에이 특정 비디오에서 많은 시간을 낭비하지 않습니다 이전 동영상을 확인하려면 설명 링크를 클릭하십시오 프로젝트 디렉토리로 이동합니다

거기에서 명령을 탭하십시오 PHP – 자본 Localhost 및 포트 번호 URL 복사 및 붙여 넣기 브라우저에서 오류를 보게됩니다 웹 기반 파일은 모두 공개 디렉토리에 있으므로 우리는 PHP 폭풍을 우리 프로젝트의 PHP IdE 그것은 최고의 idE 중 하나입니다 PHP에서 사용 가능하며, 설명에서 다운로드 링크를 언급 할 것입니다

프로젝트 디렉토리로 이동합니다 그것은 프로젝트를 열고 왼쪽에 열 것입니다 우리는 프로젝트 구조를 보게됩니다 공개 디렉토리는 색인 페이지를 호스팅하는 디렉토리입니다 기본적으로 처음에 참조 된 인덱스 공간에는이 특정 응용 프로그램에 필요한 모든 종속성이 필요합니다

다음 비디오에서 가장 중요한 것은 경로입니다 그것이 어디서 또는 SEO 친화적 인 URL을 함께 소요 매개 변수를 다른 페이지 또는보기로 전달 예를 들어 사용 가능한 현재 경로는 다음과 같습니다 슬래시 이름, 이름은 선택적 매개 변수입니다 따라서 localhost를 입력하고 포트 번호를 slash public으로 지정하면이 특정 템플리트로 리디렉션됩니다 이제 템플릿이 디렉토리입니다

우리가 모든 견해를 지키는 곳 다음 동영상에서 이에 대해 더 자세히 논의 할 예정입니까? 그럼 난 졸려 두 가지 주요 내용이 있습니다 프로젝트를 시작하기 전에 공유하고 싶었습니다 우선 GitHub입니다 그것은 플랫폼 또는 다른 시장 물건 종류 나중에 프로젝트를 위해 필요할 수도있는 모든 오픈 소스 라이브러리를 얻을 수있는 곳에서 탐색 당신은 모든 것을 볼 수 있습니다 플랫폼 및 기타 자료들 중 하나에 다이빙하면 이용 가능한 라이브러리를 볼 수 있으며이 모든 것은 오픈 소스 우리가 물건을 얻을 수 있다는 것을 의미합니다

놀이에 끼워 넣다 활용할 수 있습니다 개발자 커뮤니티에서 개발자가 이미 사용할 수 있고 개발 한 리소스 다음은 StackOverflow입니다 이것은 개발자 나 개발자에게 천국 같은 것입니다 새로운 개발자 종류의 물건 당신이 가진 문제가 무엇이든간에 거기에 쿼리를 넣어 당신이 물건을 볼 수 있다면 그것은 이미 사용할 수있는 솔루션을 얻을 비디오가 유익했으면 좋겠다고 생각하고 공유하고 더 많은 것을 구독하십시오