1. 먼저 apache http 서버를 다운로드합니다. (원래는 공식 홈페이지에서 다운로드하고 싶었으나 오랫동안 검색해도 찾을 수 없어서 온라인에서 이전 버전을 다운로드했습니다.) 이 웹사이트: http://download .csdn.net/download/chang87812/7175961 PHP 다운로드: 마찬가지로 공식 홈페이지(URL: (http://windows.php.net/downloads/releases/))에서 최신 버전을 다운로드했습니다. 그런데 구성하고 나니 문제가 생겼습니다. 문제는 다음과 같습니다. httpd: D:/PHP/server/httpd-2.2-x64/conf/httpd.conf의 129행에 구문 오류가 있습니다. D:/ApaServ/php/php5apache2_4.dll을 서버에 로드할 수 없습니다: xd5xd2xb2xbbxb5xbdxd6xb8xb6xa8xb5xc4xc4xa3xbfxe9xa1 xa3 . 이유는 이 파일이 버전과 일치해야 하기 때문입니다. 그렇지 않으면 로드할 수 없습니다. 나중에 동일한 프롬프트가 다시 나타 났지만 php5.4.8로 변경되었습니다. 174 행에서 "D:ApaServphpphp5apache2_4.dll"의 활성화 컨텍스트 생성에 실패했습니다. 종속 어셈블리 vcredist_x86.exe를 찾을 수 없습니다. 나중에 해결 방법은 다음과 같습니다. vcredist_x86.exe를 다시 설치합니다. 이는 Apache를 설치하기 전에 설치되었기 때문에 내부 파일을 찾을 수 없습니다. 온라인에서도 살펴봤습니다. C:Program FilesMicrosoft Visual Studio 8VCredi stDebug_NonRedistx86Microsoft.VC80.DebugCRT와 같은 파일에서 다음 파일을 찾았습니다. 이 메시지를 보고 바로 생각이 났습니다. 나중에 php5.5를 설치했을 때 또 이런 오류 메시지가 떴습니다. 처음에는 제가 이해한 대로 VCC2010 런타임 라이브러리를 설치했는데, 아무리 디버깅을 해도 계속해서 이 오류가 발생했습니다. 2012 런타임 라이브러리에서 가장 높은 버전의 VC가 즉시 성공했습니다. (이 이유는 인터넷에서 찾았지만 실행해본 적은 없습니다. 더 이상 VC 2012 런타임 라이브러리를 설치하고 싶지 않습니다!!!) 그래서 인터넷에서 이전 버전의 PHP를 찾았습니다. 다운로드 URL: http://download.csdn.net/download/tonyyxm/5428271 2. 아파치 설치 1. 32비트 아파치와는 다르게 exe 파일로 패키징되어 바로 설치가 가능합니다. 먼저 httpd-2.2.19-win64를 E:/server/apache-httpd-2.2.19-win64에 압축을 풀어주세요. / (/* E는 특정 서버 파일이 있는 드라이브 문자입니다 */) 2. 관리자로 명령 프롬프트를 실행하고(Start-Programs-Accessories) E:/server/apache-httpd-2.2.19-win64/ 를 입력합니다.3. httpd -k install 실행 여기서 문제가 발생했습니다. winNT 서비스 관리자를 열지 못했습니다. 해결 방법: 소프트웨어 설치 중에 소프트웨어가 Windows 7의 "사용자 계정 컨트롤"(UAC)과 충돌하는 것으로 나타났습니다. 먼저 UAC를 끄십시오(제어판-사용자 계정 및 가족 보안-시스템 및 보안 작업 센터에 "사용자 계정 컨트롤 설정 변경"이 있으며 이를 알리지 않음으로 변경합니다. 완료 후 다시 시작하라는 메시지가 표시되며 이후에는 문제가 발생하지 않습니다. 설치가 완료된 후 다시 돌려주세요.
4. httpd.conf를 수정하세요. 여기 구성은 32비트 시스템과 동일합니다 (1) ServerRoot "E:/server/httpd-2.2.19-win64/" 수정 (2) 아래에서는 다음과 같이 Apache에 의해 활성화된 함수 모듈을 볼 수 있습니다: #LoadModule vhost_alias_module module/mod_vhost_alias.so 모듈 뒤에는 이 옵니다.LoadModule php5_module "E:/Server/php-5.3.6-Win32-VC9-x64/php5apache2_2.dll" PHPiniDir "E:/Server/php-5.3.6-Win32-VC9-x64/" AddType 애플리케이션/x-httpd-php .html .htm .php (3) 계속해서 DocumentRoot "E:/Code/PHP/" 줄을 찾아 웹 페이지 파일 디렉터리를 설정합니다. 이 줄을 # 줄로 수정합니다. 이는 디렉터리 설정 해당
3. PHP 구성 1. 위에서 언급한 대로 내 PHP 디렉터리를 이전 단계에서 Apache에 설정한 LoadModule 위치에 해당하는 E:/Server/php-5.3.6-Win32-VC9-x64/에 압축을 풉니다. 2. php.ini-development를 php.ini로 수정합니다 3. php.ini를 열고 Extension_dir을 찾아 해당 값을 E:/Server/php-5.3.6-Win32-VC9-x64/ext/(php 파일이 있는 디렉터리)로 수정합니다/ext 4. 확장자 목록을 찾아 ;extension=php_gd2.dll, ;extension=php_mysql.dll, ;extension=php_mysqli.dll 앞에 있는 ";"을 제거하여 확장자를 활성화합니다. , 다양한 기능 요구 사항에 따라 해당 확장 프로그램을 활성화할 수 있습니다 5. (선택 사항) date.timezone 값을 Asia/Shanghai로 설정합니다. 즉, date.timezone =Asia/Shanghai 6. E:/Code/PHP/ 아래에 콘텐츠가 포함된 test.php 파일을 만듭니다.
phpinfo() ?> 그런 다음 브라우저 주소 표시줄에 http://localhost/test.php를 입력하세요 위 구성 프로세스는 다른 사람의 것입니다. 제가 구성한 후 다음 두 가지 문제가 발생했습니다. 1. httpd: 서버의 정규화된 주소를 안정적으로 확인할 수 없습니다 해결책: 서문: Apache가 실행될 수 있지만 error.log의 ServerName에 대해 192.168.x.x를 사용하여 httpd.exe: Could not Reliable the server's FQDN(Fully Qualified Domain Name) 오류가 표시됩니다. 포트 80을 차지하는 다른 것이 있는지 확인하고 싶습니다. 2. "(OS 10013) 접근 권한이 허용하지 않는 방식으로 소켓에 접근을 시도했습니다. : make_sock: 0.0.0.0:80 주소에 바인딩할 수 없습니다." 해결책: 포트를 변경하고, .apacheconfhttpd.conf를 열고, 80을 모두 81로 변경하고, 저장하고 Apache를 다시 시작하세요. 포트를 변경한 후 다음 URL을 방문하세요: http://localhost:81/test.php 스크린샷: |

phpsession 실패 이유에는 구성 오류, 쿠키 문제 및 세션 만료가 포함됩니다. 1. 구성 오류 : 올바른 세션을 확인하고 설정합니다. 2. 쿠키 문제 : 쿠키가 올바르게 설정되어 있는지 확인하십시오. 3. 세션 만료 : 세션 시간을 연장하기 위해 세션을 조정합니다 .GC_MAXLIFETIME 값을 조정하십시오.

PHP에서 세션 문제를 디버그하는 방법 : 1. 세션이 올바르게 시작되었는지 확인하십시오. 2. 세션 ID의 전달을 확인하십시오. 3. 세션 데이터의 저장 및 읽기를 확인하십시오. 4. 서버 구성을 확인하십시오. 세션 ID 및 데이터를 출력, 세션 파일 컨텐츠보기 등을 통해 세션 관련 문제를 효과적으로 진단하고 해결할 수 있습니다.

Session_Start ()로 여러 통화를하면 경고 메시지와 가능한 데이터 덮어 쓰기가 발생합니다. 1) PHP는 세션이 시작되었다는 경고를 발행합니다. 2) 세션 데이터의 예상치 못한 덮어 쓰기를 유발할 수 있습니다. 3) Session_status ()를 사용하여 반복 통화를 피하기 위해 세션 상태를 확인하십시오.

SESSION.GC_MAXLIFETIME 및 SESSION.COOKIE_LIFETIME을 설정하여 PHP에서 세션 수명을 구성 할 수 있습니다. 1) SESSION.GC_MAXLIFETIME 서버 측 세션 데이터의 생존 시간을 제어합니다. 2) 세션 .Cookie_Lifetime 클라이언트 쿠키의 수명주기를 제어합니다. 0으로 설정하면 브라우저가 닫히면 쿠키가 만료됩니다.

데이터베이스 스토리지 세션 사용의 주요 장점에는 지속성, 확장 성 및 보안이 포함됩니다. 1. 지속성 : 서버가 다시 시작 되더라도 세션 데이터는 변경되지 않아도됩니다. 2. 확장 성 : 분산 시스템에 적용하여 세션 데이터가 여러 서버간에 동기화되도록합니다. 3. 보안 : 데이터베이스는 민감한 정보를 보호하기 위해 암호화 된 스토리지를 제공합니다.

SessionHandlerInterface 인터페이스를 구현하여 PHP에서 사용자 정의 세션 처리 구현을 수행 할 수 있습니다. 특정 단계에는 다음이 포함됩니다. 1) CustomsessionHandler와 같은 SessionHandlerInterface를 구현하는 클래스 만들기; 2) 인터페이스의 방법 (예 : Open, Close, Read, Write, Despare, GC)의 수명주기 및 세션 데이터의 저장 방법을 정의하기 위해 방법을 다시 작성합니다. 3) PHP 스크립트에 사용자 정의 세션 프로세서를 등록하고 세션을 시작하십시오. 이를 통해 MySQL 및 Redis와 같은 미디어에 데이터를 저장하여 성능, 보안 및 확장 성을 향상시킬 수 있습니다.

SessionId는 웹 애플리케이션에 사용되는 메커니즘으로 사용자 세션 상태를 추적합니다. 1. 사용자와 서버 간의 여러 상호 작용 중에 사용자의 신원 정보를 유지하는 데 사용되는 무작위로 생성 된 문자열입니다. 2. 서버는 쿠키 또는 URL 매개 변수를 통해 클라이언트로 생성하여 보낸다. 3. 생성은 일반적으로 임의의 알고리즘을 사용하여 독창성과 예측 불가능 성을 보장합니다. 4. 실제 개발에서 Redis와 같은 메모리 내 데이터베이스를 사용하여 세션 데이터를 저장하여 성능 및 보안을 향상시킬 수 있습니다.

JWT 또는 쿠키를 사용하여 API와 같은 무국적 환경에서 세션을 관리 할 수 있습니다. 1. JWT는 무국적자 및 확장 성에 적합하지만 빅 데이터와 관련하여 크기가 크다. 2. 쿠키는보다 전통적이고 구현하기 쉽지만 보안을 보장하기 위해주의해서 구성해야합니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

ZendStudio 13.5.1 맥
강력한 PHP 통합 개발 환경
