Z-Blog 프로그램은 IIS+asp 환경을 기반으로 개발되었으며, 이론적으로 Apache+php+MySQL 환경에서는 실행이 불가능합니다. 그러나 특정 상황으로 인해 Z-Blog를 일시적으로 Apache 플랫폼으로 마이그레이션해야 하는 경우가 있습니다. . 이 문서에서는 구체적인 마이그레이션 형태를 설명합니다.
마이그레이션의 아이디어는 모든 Z-Blog를 정적으로 만들고 PHP 코드를 사용하여 동적 부분에 대한 ASP 서버의 주소를 콜백하는 것입니다. 데이터베이스는 여전히 이중 도메인 이름을 사용하여 ASP 서버에 배치됩니다. FTP 도구를 사용하여 ASP 서버의 주소를 PHP 서버에 복사합니다.
Z-Blog 시스템은 "정적 홈페이지 생성 플러그인"을 사용해야 홈페이지와 기사 페이지가 정적 HTML 파일을 구현합니다. 카테고리 페이지와 태그 페이지는 원래 동적이므로 수정하기가 어렵습니다. 소스코드를 수정해야 합니다.
수정 방법은 먼저 cat 디렉토리를 생성하고, 루트 디렉토리에 있는 Catalog.asp 파일을 복사하여 default.asp로 변경한 후, 내부의 include 경로를 수정하는 것입니다.
다음으로, FUNCTION 디렉터리에서 c_system_base.asp, c_system_event.asp, c_system_lib.asp 파일을 수정하고 "catalog.asp"를 "cat/"로 검색하여 바꾸면 카탈로그 페이지와 카테고리 페이지가 대신 cat 디렉터리를 호출하게 됩니다. ASP 파일.
그런 다음 모든 HTML을 Apache 호스트에 FTP로 보내십시오. cat 디렉토리의 경우 다음 내용이 포함된 index.php 파일을 작성하십시오.
<?php
$qstring = isset($_SERVER["QUERY_STRING"]) $_SERVER["QUERY_STRING"] : "";
$url = " http://www.williamlong.info/cat/?".$qstring ;
$file=file_get_contents($url);
에코 $ 파일;
?>
이러한 방식으로 디렉터리 페이지와 범주 페이지를 호출하면 원래 ASP 서버의 파일이 자동으로 캡처됩니다.
마지막으로 다음 내용으로 Apache 서버에서 .htaccess 파일을 편집합니다.
RewriteEngineOn
RewriteBase/
RewriteRule ^upload/(.*)$ http://www.williamlong.info/upload/$1 [R=301,L]
RewriteRule ^download/(.*)$ http://www.williamlong.info/download/$1 [R=301,L]
RewriteRule ^function/(.*)$ http://www.williamlong.info/function/$1 [R=301,L,QSA]
이러한 처리가 끝나면 Z-Blog에서 생성된 블로그를 Apache 환경에서도 열람할 수 있습니다.
그러나 여전히 몇 가지 문제가 있습니다. 주로 댓글 기능을 사용할 수 없으며(다른 플러그인만으로는 댓글을 거의 지원할 수 없음), 사이드바에 동적으로 로드된 콘텐츠가 표시되지 않고, 기사 조회수를 계산할 수 없으며, 등급 플러그인이 유효하지 않으며 업데이트가 더 번거롭습니다.
현재 블로그를 업데이트하는 방법은 호스트 파일을 수정하고 Z-Blog 도메인 이름을 원래 ASP 서버로 다시 지정하고 기사를 추가한 다음 Apache 서버에 FTP를 설치하는 것입니다. 원래는 두 서버 모두에 Dropbox를 설치하는 것을 고려했습니다. 그러나 나중에 일부 외국 가상 호스트가 호스트에서 Dropbox 실행을 금지하기 시작했다는 사실을 발견했습니다. 해당 시스템은 Dropbox 프로세스를 자동으로 감지하고 이 프로그램을 실행하면 정책을 위반하고 필요하다는 내용의 이메일을 사용자에게 보냅니다. 프로세스가 중지되므로 동기화를 위해 자동 FTP 방법만 사용할 수 있습니다.