このプロジェクトは、PHPを使用してマークダウンファイルを動的に提供するフラットファイルWebサイトです。ウェブサイトのコンテンツを管理するための多くのオプションがありますが、私は自分の個人的なウェブサイトにこの方法を好みます。
index.mdを使用してフォルダーを作成するだけですを使用して目次を追加しますステップ1: git使用して、このレポをWebフォルダーの外にクローンします。 /var/www/md2htmlを提案します
ステップ2:リソースフォルダーをWebアクセス可能なURLにリンクします
ln -ls /var/www/md2html/resources /var/www/html/md2html-resources
ステップ3: QuickStartデモフォルダーをWebフォルダーにコピーすると、サイトがライブになります!
ステップ4:新しいページを作成するには、 index.mdでサブフォルダーを作成します
このリポジトリには、すぐに実行できるデモサイトがあります。
docker-compose up -dを実行し、http:// localhost:8081に移動します
Markdownファイルには、 {{mustache}}テキストがテンプレート内で置き換えられるものをカスタマイズするためのフロントマタンを含むオプションのヘッダーを持つことができます。デフォルトの交換はsettings.phpで定義されており、ヘッダーで定義されている値は、設定ファイルで定義されている値をオーバーライドします。
---
title: this text becomes the title element in the header
description: this text becomes header metadata for search engines to display
---
# My Markdown Article
The rest of the ***Markdown*** text goes here...
このリポジトリは、 .htaccessを使用してApache(mod_rewriteを使用)に指示し、 index.mdローカルPHPスクリプトに含むフォルダーにリクエストをルーティングして処理します。 Apacheまたはmod_rewriteを使用しない場合は、Directory Indexリクエストを同様にルーティングするために必要なシステムを使用してください。
フラットファイルのWebサイトは、 git使用してWebサーバーにクローニングできます。PHPはgit pullを実行してコンテンツを更新できます。 GitHubアクションを設定して、新しいコミットがリポジトリにプッシュされるたびにPHPアップデートスクリプトを実行するHTTPリクエストを作成することにより、GitHubリポジトリと同期してWebサイトを継続的かつ自動的に保持することができます。
wwwroot象徴的にWebアクセス可能なパスにリンクしますAPI_KEYを作成しますapi.keyにルートフォルダーに保存します(CHMOD 400 )API_KEYベアラートークンとして使用して、新しいコミットがプッシュされたら、httpリクエストdeploy.phpにgithubアクションを構成します(deploy.ymlを参照) このPHPベースのシステムを数ヶ月間使用した後、私は100ページの大きなサイトでそれを楽しむようになりましたが、ほんの数ページの非常に小さなサイトでは、小さなページの編集を行うためだけにDockerインスタンスを起動するのは面倒だと感じました。
このニーズを満たすためにPalilaを作成しました - index.mdをindex.htmlに変換する小さなpythonスクリプトで、ローカルで(編集するとき)またはリモート(展開時)。