HOWTO · PHP
PHP 페이지의 HTML 출력 축소
이 기사에서는 PHP 페이지의 HTML 출력을 축소하는 과정에 대해 설명합니다. 전체 웹 사이트 성능을 개선하기 위해 출력을 최소화합니다.
이 페이지의 내용
이 문서에서는 PHP 페이지에 대한 HTML 출력 축소에 대해 설명합니다.
PHP 페이지의 HTML 출력 축소
전반적인 웹 사이트 성능과 사용자 경험을 개선하기 위해 출력을 최소화합니다. 이 프로세스에는 웹 사이트 사용자를 위해 불필요한 파일을 제거하고 웹 사이트 페이지의 페이지 크기 및 로드 시간을 줄이는 작업이 포함됩니다.
또한 웹 사이트 사용자는 축소된 페이지를 통해 리소스 또는 데이터 사용량을 최소화할 수 있습니다. 축소 프로세스는 불필요한 세부 정보, 줄 바꿈, 주석 및 과도한 공백을 제거합니다.
프로세스의 단점은 코드 가독성이 떨어진다는 것입니다. 축소하면 파일 크기를 70%까지 줄일 수 있습니다.
HTML 출력을 수동 또는 자동으로 축소할 수 있습니다.
코드에서 공백을 복원할 수 있는 몇 가지 도구가 있습니다. 그러나 스크립트에 있는 주석에 대한 변경 사항을 되돌릴 수는 없습니다. 예를 살펴보겠습니다.
<html>
<head>
<!-- This content will show on the browser -->
<title>Title Page</title>
</head>
<body>
<!-- This is a comment. -->
<h1>Delftstack Tutorials!</h1>
</body>
</html>
위의 파일에는 많은 공백, 줄 바꿈 및 두 개의 주석이 있습니다. 파일을 축소하면 다음과 같을 것입니다.
<html><head><title>Title Page</title></head><body><h1>Delftstack Tutorials!</h1></body></html>
PHP 페이지에 대한 HTML 출력을 축소하는 다양한 방법을 살펴보겠습니다.
Apache에서 GZip 압축을 사용하여 PHP 페이지의 HTML 출력 축소
Apache에서 GZip 압축을 활성화하여 출력을 축소할 수 있습니다. 아래 단계를 따르십시오.
-
Apache 구성 파일을 찾아 엽니다. 메모장을 사용하여 아래에서 편집할 수 있습니다.
디렉터리는 시스템에 따라 다를 수 있지만
httpd.conf파일을 열어야 합니다.vim /etc/httpd/conf/httpd.conf -
구성 파일에서
#을 추가하여 아래 행을 확인하십시오.LoadModule deflate_module modules/mod_deflate.so -
아래 줄을 복사하여 구성 파일 끝에 붙여넣습니다.
AddOutputFilterByType DEFLATE text/plain AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE text/xml AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE application/xml AddOutputFilterByType DEFLATE application/xhtml+xml AddOutputFilterByType DEFLATE application/rss+xml AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE application/x-javascript -
Apache 서버를 다시 시작하십시오.
sudo service httpd restart
ob_start() 함수를 콜백과 함께 사용하여 PHP 페이지의 HTML 출력 최소화
콜백과 함께 ob_start() 함수를 사용하여 태그, 주석 및 공백 시퀀스 앞뒤의 공백을 제거할 수 있습니다.
예제 코드를 살펴보겠습니다.
<?php
ob_start("minifier");
function minifier($code) {
$search = array(
// Remove whitespaces after tags
'/\>[^\S ]+/s',
// Remove whitespaces before tags
'/[^\S ]+\</s',
// Remove multiple whitespace sequences
'/(\s)+/s',
// Removes comments
'/<!--(.|\s)*?-->/'
);
$replace = array('>', '<', '\\1');
$code = preg_replace($search, $replace, $code);
return $code;
}
?>
<!DOCTYPE html>
<html>
<head>
<!-- Page Title -->
<title>Sample Minifier</title>
</head>
<body>
<!-- page body -->
<h1>Delftstack Tutorials!</h1>
</body>
</html>
<?php
ob_end_flush();
?>
위의 코드를 실행한 후 아래와 같은 결과를 얻었습니다.
<!DOCTYPE html><html><head><title>Sample minifier</title></head><body><h1>Delftstack Tutorials!</h1></body></html>
HTML 축소기 플러그인을 사용하여 PHP 페이지의 HTML 출력 축소
우리는 클라이언트 측의 출력을 최적화하기 위해 서버 측의 HTML 축소기를 소스 코드로 사용합니다. 플러그인은 불필요한 공백, 줄 바꿈 및 주석을 제거합니다.
필요에 따라 최적화 옵션 풀에서 선택할 수 있습니다. 플러그인을 설정하려면 다음 단계를 따르세요.
-
아래 링크를 사용하여 컴퓨터에 HTML 축소기 파일을 다운로드합니다.
https://www.terresquall.com/download/HTMLMinifier.php -
아래 코드를 복사하여 PHP 파일에 붙여넣습니다.
<?php // Import the HTMLMinifier require_once 'myfolder/HTMLMinifier.php'; // HTML source to be minified $htmlpage = file_get_contents('./mypage.html'); // Minified version of the page echo HTMLMinifier::process($htmlpage); ?> -
PHP 파일을 실행합니다.