apache2のWebサーバで、拡張子「.md」のMarkdownファイルを、HTMLに変換してWeb表示できるようにする。
【Ubuntu 18.04 LTS Server】Apache2とPHP7.2を動かす
以前の記事で「Ubuntu 18.04 LTS Server」をインストールした。続いて、WordPressやDokuWikiを動かす準備として、Apache2とPHP7.2を動かすようにしたので備忘録を残す。Apache2のインストール$...
PHP markdownのPHPモジュールをダウンロード
GitHubから、PHP-markdownのファイル一式を、htmlドキュメントルートにクローン(取得)する。
# cd /var/www/homepage
# git clone https://github.com/michelf/php-markdown
ファイル一式が、php-markdown フォルダに作成される。
PHP作成
mdファイルを読み込んで、HTMLを生成するPHPを作成する。
ファイル名は md.php
として、htmlドキュメントルートにおく。
# cd /var/www/homepage
# nano md.php
File: md.php
<?php
require_once("php-markdown/Michelf/MarkdownExtra.inc.php");
use Michelf\MarkdownExtra;
if ( isset($_SERVER['PATH_TRANSLATED']) ) {
$file = realpath($_SERVER['PATH_TRANSLATED']);
$ext = substr($file, strrpos($file, '.') + 1);
}
if ( $file and is_readable($file) and $ext
===
'md') {
$html = MarkdownExtra::defaultTransform(file_get_contents($file));
} else {
$html = '<p>cannot read file</p>';
}
?>
<html>
<head>
<style type="text/css">
blockquote {
margin-left: 0.5em;
padding-left: 0.5em;
border-left: 1px solid #CCCCCC;
}
code{
display: block;
padding: 0.5em;
width: 80%;
background-color: #DDDDDD;
border: 1px dotted #666666;
}
</style>
</head>
<body>
<?php print $html; ?>
</body>
</html>
markdown.confファイルを作成して、有効にする
# cd /etc/apache2/conf-available
# nano markdown.conf
File: markdown.conf
AddType text/markdown md
Action text/markdown /md.php
confファイルを有効にする
# a2enconf markdown
# service apache2 restart
ブラウザで表示確認
http://<サーバIP>/php-markdown/Readme.md
次は、CSS(スタイルシート)を使って、装飾を綺麗に表示できるようにしていきます。
コメント