優れたソフトウェアと実用的なチュートリアル
無料の映画ウェブサイトを構築するには? Apple CMSによる無料映画ウェブサイト構築チュートリアル
Apple CMS構築チュートリアル 無料の映画ウェブサイト構築 Linux環境で映画ウェブサイトを素早く構築する方法。インターネットで検索したところ、アップルCMSオープンソースであり、その機能は映画ウェブサイトの基本要件を満たしています。Apple CMS構築まず、サーバー上に LNMP 環境をセットアップするか、各種のフールパネルを使用してインストールします。
- Windows プラットフォーム: IIS/Apache/Nginx/その他 + PHP(5.5+) + MySQL(5.5+)
- Linux/Unix プラットフォーム: Apache/Nginx/その他 + PHP (5.5 以上) + MySQL (5.5 以上) (PHP は非セキュア モードで実行する必要があります)
- 注意:PHP8ではエラーが多く発生するため、PHP8は使用しないでください。PHP7.2のインストールをお勧めします。
Apple CMSとは
Apple CMSプログラムは、PHP + MYSQL環境で動作する、完全かつ強力な高速ウェブサイト構築システムです。長年の開発経験と技術の蓄積を経て、Apple CMSプログラムは徐々に成熟し、使いやすさと機能性において業界をリードする存在となっています。プログラムはサイズが小さく、動作が速く、プログラムコードの最適化と効率的なキャッシュにより、一般的な仮想ホストで完璧に構築でき、ウェブサイト構築コストは非常に低く抑えられます。MVCのようなテンプレート分離、組み込みタグ、カスタム関数タグインターフェース、強力なカスタムコレクション機能により、HTMLの知識があれば、簡単にパーソナライズされたウェブサイトを作成できます。プログラムの使いやすさと機能性の面では、私たちは常に多くのウェブマスターから寄せられた様々な優れた提案を積極的に採用し、さまざまな緊急の問題に迅速に対応してきました。私たちのサービスコンセプトは、すべてのウェブマスターがすべてのリンクに落ち着いて対処できるようにするために貫かれています。
Apple CMS 構築チュートリアル Github ソースコード:https://github.com/magicblack
Apple CMS:http://www.maccms.la
Apple CMS セットアップチュートリアル Apple CMS のインストール
SSH経由でサーバーにログインした後、cdコマンドを使用してWebストレージディレクトリ(通常は/home/www)に入ります。
cd /home/www
www ディレクトリに入ったら、Apple CMS ウェブサイトのソースコードの複製と取得を開始します。
git クローン https://github.com/magicblack/maccms10.git

chown nginx:nginx -R /home/uzbox/maccms10

次に、インストール操作を開始します。Nginxの設定ファイル内のサーバーモジュールを修正し、ウェブサイトの保存ディレクトリを/home/uzbox/maccms10に変更し、location/ルートディレクトリの内容を変更します。具体的な変更内容は以下のとおりです。
# 疑似静的ページの場所 / { if (!-e $request_filename) { rewrite ^/index.php(.*)$ /index.php?s=$1 last; rewrite ^/admin.php(.*)$ /admin.php?s=$1 last; rewrite ^/api.php(.*)$ /api.php?s=$1 last; rewrite ^(.*)$ /index.php?s=$1 last; break; } }
server.conf の完全なコードは次のとおりです。
#ドメイン名ポート301リダイレクトhttps #uzbox.tk server { listen 80; listen [::]:80; server_name uzbox.tk www.uzbox.tk; return 301 https://uzbox.tk$request_uri; } #Webサイト構成コアブロック server { listen 443 ssl http2; listen [::]:443 http2; server_name uzbox.tk; index index.php index.html index.htm; root /home/vod; include /etc/nginx/default.d/*.conf; # /etc/nginx/default.dからデフォルトサーバーブロックの構成ファイルをロードします。 # TLSv1.3の0-RTTの構成 ssl_certificate /data/uzbox.tk.crt; ssl_certificate_key /data/uzbox.tk.key; ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; ssl_ciphers TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:TLS13-AES-128-CCM-8-SHA256:TLS13-AES-128-CCM-SHA256:EECDH+CHACHA20:EECDH+CH ACHA20-draft:EECDH+ECDSA+AES128:EECDH+aRSA+AES128:RSA+AES128:EECDH+ECDSA+AES256:EECDH+aRSA+AES256:RSA+AES256:EECDH+ECDSA+3DES:EECDH+aRSA+3DES:RSA+3DES:!MD5; ssl_early_data オン; ssl_stapling_verify オン; add_header Strict-Transport-Security "max-age=31536000"; # 疑似静的ページの位置 / { if (!-e $request_filename) { rewrite ^/index.php(.*)$ /index.php?s=$1 last; rewrite ^/admin.php(.*)$ /admin.php?s=$1 last; rewrite ^/api.php(.*)$ /api.php?s=$1 last; rewrite ^(.*)$ /index.php?s=$1 last; break; }
Nginxを変更したら、Nginxサービスを再起動するか、サーバーを再起動して次のように入力します。 nginx -t 構成情報を確認します。

次に、Nginx で設定されている Web サイトのドメイン名を入力して、Apple CMS-V10 のインストールを開始します。

青いボタンをクリックして契約に同意し、システムをインストールします。

ディレクトリのパーミッションを正しく設定する必要があります。正しく設定されていない場合、「読み取りできません」というメッセージが表示されます。例えば、サーバーにインストールされているNginxサービスのユーザーグループがnginxの場合、Webサイトが保存されているディレクトリのユーザーグループとユーザーもnginxに変更する必要があります。ディレクトリのデフォルトのフォルダパーミッションは755です。
PHP関数拡張機能はこちらです。インストールされていない場合は、サーバー側で使用する必要があります。 dnfインストール コマンドによるインストール。具体的なインストール方法については、以下を参照してください。PHP8をインストールする

インストールをクリックするとすぐに開始されます。Apple CMSのインストールはたった3つのステップで完了します。次に、admin.phpファイルを変更します。



ディレクトリ構造
- アプリケーション: プログラムのすべてのモデル、コントローラー、および構成ファイルを格納する標準の tp5 アプリケーション ディレクトリ。
- application/extra/maccms.php: すべてのバックエンド構成パラメータ。
- application/extra/addons.php: インストールされているサードパーティ製アプリケーションの構成。
- application/extra/domain.php: サイト グループのドメイン名の構成。
- application/extra/timming.php: カスタムタスク構成。
- application/extra/vodplayer.php: プレーヤー構成がインストールされました。
- application/extra/voddowner.php: インストールされたダウンローダー構成。
- application/data/backup: バックアップ データ ディレクトリ。バックグラウンド バックアップ データはこのディレクトリにあります。
- application/data/config: バックグラウンドのカスタム メニュー構成。
- application/data/install: 初期インストールディレクトリ。再インストールが必要な場合は、install.lock ファイルを削除してインストールプロセスを再度実行してください。
- application/route.php: 擬似静的ルーティングファイル。ルーティングの誤りによりバックエンドにアクセスできない場合は、このファイルを削除すると正常に戻ります。
- application/database.php: MySQL データベース接続構成ファイル。
- addons: サードパーティ製アプリケーションのプラグインのディレクトリを保存するために使用されます。購入したプラグインはここに配置できます。
- template: フロントエンドテンプレートを保存するために使用されるテーマテンプレートディレクトリ。
- static: デフォルトの CSS や JS などの静的ファイルを保存するために使用されます。
セキュリティ設定
プログラムをより安全にするために、次のフォルダーでの PHP プログラム ファイルの実行を禁止することをお勧めします。
- /application: PHP ファイルへのアクセスを制限します。
- /addons: PHP ファイルへのアクセスを制限します。
- /extend : PHP ファイルへのアクセスを制限します。
- /thinkphp: PHP ファイルへのアクセスを制限します。
- /vendor : PHP ファイルへのアクセスを制限します。
- /upload: PHP ファイルへのアクセスを制限します。
Nginx はディレクトリ内の PHP スクリプトのアクセスを無効にします:
Nginxでは、指定されたディレクトリ内でのPHPスクリプトの実行は禁止されています。サーバー設定にパラメータを追加することで、場所の条件に一致したディレクトリ内での実行を禁止できます。
注意: 次のコードを有効にするには、PHP 解析コード Fastcgi の上に配置する必要があります。
# 単一ディレクトリの禁止場所 ~* ^/upload/.*\.(php|php5)$ { deny all; } # 複数ディレクトリの禁止場所 ~* ^/(upload|vendor|thinkphp|extend|addons|application)/.*\.(php|php5)$ { deny all; }
この時点でApple CMSがインストールされ、ウェブサイトのフレームワークが構築されました。次に、様々なコレクションルールとフロントエンドテンプレートを追加する必要があります。
Apple CMS構築チュートリアルインストールテンプレート
Apple CMSにはデフォルトでフロントエンドテンプレートが用意されていません。独自のテンプレートを作成するか、サードパーティ製のテンプレートを使用する必要があります。テンプレートがあって初めて、ウェブサイトは完成形となります。テンプレートのインストールも非常に簡単です。
まず、Apple CMSテンプレート「Conch Template V4.0」をダウンロードしてください。いくつか小さな問題がありますが、修正済みで正常に使用できます。多くのjs問題は、hlexpand.js、hlhtml.js、hlstem.jsの3つのファイルに関連しています。jsファイルは暗号化されており、オンラインで代替ファイルが見つかります。Conch Templateを使用するには、PHP sg11拡張機能をインストールする必要があります。このテンプレートは比較的古いため、現在のsgバージョンは12にリリースされており、sg12への対応はテストされていません。
クリックしてダウンロード:Conchテンプレートv4.0完全修復版+Dplayerプレーヤーエラーフリー版ダウンロード
クリックしてダウンロード:Conchテンプレートの最新バージョン。SG11のサポートは不要で、完璧でエラーのないバージョンです。
- テンプレートをテンプレートディレクトリにアップロードする
- PHPはsg11拡張機能をインストールする必要があります
- 背景ショートカット メニュー構成が追加されました:
Conch テーマ設定、/admin.php/admin/conch/theme - ウェブサイト テンプレートとモバイル テンプレートはすべて [conch] テンプレート ディレクトリ [moban] にあります。キャッシュをクリアしてください。
- WeChat表示機能は、conch/js/jquery.stem.jsフォルダの301行目の対応するコンテンツを変更する必要があることに注意してください。
- スライドショーの推奨事項 9 大きな画像モードではポスター画像をアップロードする必要があります。推奨サイズは 1680px*580px です。小さな画像モードでは 3 つの推奨事項を表示する必要があります。
- ホットなおすすめ1 ベストなおすすめ18選をおすすめします(適応変更機能)。

テンプレートファイルを解凍したら、 テンプレート ディレクトリ。アップロード時にテンプレートファイルディレクトリの名前を変更し、テンプレートファイルディレクトリのユーザーとユーザーグループを変更してください。デフォルトのアップロード所有者はrootユーザーです。

アップロード後、ファイルディレクトリのアクセス権限を変更します。
chown nginx:nginx -R /home/uzbox/maccms10/template/movie
テンプレートファイルの所有者を変更したら、Apple CMSのバックエンドにアクセスし、「システム」>「ウェブサイトパラメータ設定」>「基本設定」ページでウェブサイトテンプレートのオプションを見つけます。ドロップダウンメニューで「movie」を選択します。テスト済みのウェブサイトテンプレートはモバイル端末に対応しているため、ここではシングルドメインを選択し、「保存」をクリックします。テンプレートが追加されます。

一部のテンプレートでは、PHP SG11拡張機能のインストールが必要です。SG11はSourceGuardianの略称で、11はバージョンを表します。SourceGuardianはPHPを暗号化できるツールで、ユーザーはPHPプログラムを迅速かつ安全にエンコードおよびコンパイルできます。SG11拡張機能は手動でインストールする必要があります。まず、SG11拡張機能パッケージをダウンロードしてください。
SG11 拡張パックをダウンロードするにはここをクリックしてください:SG11 WIN LINUX.ZIP
サーバー上で uname -a コマンドを実行し、システムバージョンを確認します。64ビットの場合は x86_64 と表示されます。

次に、ダウンロードした拡張パッケージから対応する拡張ファイルを探します。例えば、サーバーにphp7.2バージョンがインストールされている場合は、Linux x64ディレクトリにあるixed.7.2.linファイルを探します。

ixed.7.2.lin ファイルをサーバーの /usr/lib64/php ディレクトリにアップロードします。

アップロード後、以下で使用する ixed.7.2.lin の場所を保存します。/usr/lib64/php/ixed.7.2.lin
/etc/php.ini ファイルを編集し、ファイルの一番下の行に extension=/usr/lib64/php/ixed.7.2.lin を追加します。
拡張子=/usr/lib64/php/ixed.7.2.lin

php.ini を編集したら、保存してアップロードし、PHP サービスを再起動するか、サーバーを再起動します。
SG11 が正常にインストールされていることを確認します。
php --ri ソースガーディアン

Apple CMSのテンプレートファイルがインストールされました。簡単な設定を行うと、フロントデスクからウェブページにアクセスできるようになります。この時点では、フロントデスクのウェブページは空です。次のステップは、データの収集と入力です。
Apple CMS構築チュートリアルデータ収集
Apple CMS用のデータ収集リソースウェブサイトはインターネット上に多数あります。収集インターフェースを設定すれば、ワンクリックでデータをインポートできます。
以下はコレクションのインポートの例です。
まず、インターネットで Apple CMS コレクション リソース ステーションを検索し、Apple CMS コレクション リソース ステーション内のコレクション インターフェイスの URL リンクを見つけます。
スカイリソースネットワーク総合リソース:
https://api.tiankongapi.com/api.php/provide/vod/at/xml/
m3u8 リソース:
https://m3u8.tiankongapi.com/api.php/provide/vod/at/xml/
データ収集を行う前に、リソースステーションのプレーヤーを追加する必要があります。プレーヤーを追加しないと、データ収集後に再生アドレスが表示されません。各リソースステーションにはそれぞれ対応するプレーヤーがあり、プレーヤーは汎用的ではありません。
コレクション リソース サイトからダウンロードして解凍し、Apple CMS バックグラウンドでプレーヤーをインポートできます (Super Console > ビデオ > プレーヤー > インポート):

プレーヤーをインポートしたら、Apple CMSのバックグラウンドに取得インターフェースを追加します。具体的な手順は以下のとおりです。
スーパーコンソール > コレクション > カスタムインターフェース > 追加:

リソース名はカスタマイズ可能で、インターフェースアドレスには上記で取得した取得インターフェースのURLリンクを入力し、インターフェースタイプを選択できる。 xmlここでのインターフェースタイプは、主にAPIインターフェースアドレスのタイプによって異なります。コレクションインターフェースアドレスがJSONの場合、インターフェースタイプでJSONを選択してください。リソースタイプの選択 ビデオ 、データ操作の選択 新着 + 更新、フィルターアドレスのデフォルト フィルターなし設定が完了したら、「保存」をクリックします。
カスタムインターフェースページで、収集したいリソースサイトを選択します。収集オプションで、まず収集日をクリックします。


カテゴリーの後に「バインド」をクリックします。ここでのカテゴリーは、「基本」>「カテゴリー管理」で作成されます。まだカテゴリーを作成していない場合は、コレクションサイトのカテゴリーに合わせて作成する必要があります。

すべてのカテゴリが作成されたら、カスタム インターフェイスのカテゴリ バインディング ページに戻り、カテゴリの後の [バインド] をクリックして、カテゴリを選択してカテゴリをバインドします。


カテゴリがバインドされたら、カスタムインターフェースを閉じ、「コレクション」>「カスタムインターフェース」を再度開いて収集します。注: カテゴリ内にバインドされたカテゴリがない場合、バインドされていないカテゴリの内容は収集されません。

ビデオデータが収集されるのを待った後、プレイリストデータを収集します。
リソースステーションの専用プレーヤーを事前に追加していない場合、データ収集後にプレイリストを表示することができません。プレーヤーを追加してから再度データを収集し、プレイリストを追加する必要があります。
Super Console > コレクション > カスタムインターフェースで、収集したリソースサイトのリンクをクリックしてリソースライブラリに入ります。映画リストの左下にある「すべて収集」をクリックします。


映画のプレイリストは収集され保存されているので、あとは辛抱強く待つだけです。

プレーヤー
Apple cmsV10 で次のエピソードを自動的に再生するように設定するにはどうすればよいですか?
Apple CMSV10を追加して次のエピソードを自動再生し、メモリ再生とP2P再生機能も追加しましたが、この方法ではm3u8形式の動画しか再生できません。まず、dplayerプレーヤーのコードを置き換えてください。置き換え後のパスはstatic/player/dplayer.htmlです。
コードを変更した後、バックグラウンドでプレーヤーを設定する必要があります。スーパーコンソール>ビデオ>プレーヤー>追加
新しいプレイヤーを追加し、コードに間違いがないか確認してください。例えば、tkm3u8というコードでプレイヤーを追加します。プレイヤーを追加したら、プレイヤーコードに以下のコードを入力します。その後、キャッシュをクリアしてください。
データ収集中に発生した問題

エラー: SQLSTATE[22001]: 文字列データ、右側切り捨て: 1406 行 1 の列 "vod_actor" のデータが長すぎます
エラーの原因: MySQL データベースの選択モード (厳密モード) で挿入されたフィールドの長さが、設定された長さを超えています。
解決策: sql_mode を設定します。
mysql -u ルート -p
サーバー上の MySQL にログインし、MySQL パスワードを入力して、mysql> コマンドラインに移動します。

@@sql_mode を選択します。

sql_modeは主にデータと正当性を検証するために使用されます: ONLY_FULL_GROUP_BY、STRICT_TRANS_TABLES、日付にゼロがありません、日付にゼロがありません、ゼロによる除算のエラーです、エンジン置換がありません
あなたはできるSTRICT_TRANS_TABLES、sql_mode のパラメータを削除またはクリアします。
SET @@global.sql_mode=''; SET @@sql_mode='';
クリア後、コマンドを使用して照会します
@@global.sql_mode を選択します。@@sql_mode を選択します。

設定が完了したら、MySQLを終了してください。MySQLサービスを再起動すると上記の方法は無効になります。永続的に有効にしたい場合は、MySQL設定ファイルも変更する必要があります。
vi /etc/my.cnf.d/mysql-default-authentication-plugin.cnf
VI mysql-default-authentication-plugin.cnf 構成ファイルを編集し、[mysqld] の下に次の行を追加します。
key_buffer_size=16M、max_allowed_packet=8M、sql_mode=ANSI
- key_buffer_size: インデックスバッファのサイズを指定するために使用されます
- max_allowed_packet: メッセージ送信の最大値を設定する
- sql_mode: SQLモードを示すパラメータ。このパラメータを使用して、SQL文の検証の厳密さを設定できます。
追加したら、保存して VI モードを終了し、MySQL を再起動します。
systemctl で mysqld を再起動します。
最後に、sql_mode モードが正常に設定され、ANSI ルーズ モードになっていることを確認します。

sql_mode モード:
SQLモード 全部で3つのモードがあります。 ANSI、伝統的 そして STRICT_TRANS_TABLES。
ANSI モード:Looseモードでは、構文と動作が変更され、標準SQLとの一貫性が向上します。挿入されたデータは検証され、定義された型または長さに準拠していない場合は、保存前にデータ型を調整するか切り捨て、警告が報告されます。この記事の冒頭で説明したエラーについては、まずsql_modeをANSIモードに設定することでデータを挿入できるようになります。除数の結果のフィールド値が0の場合、データベースはそれをNULL値に置き換えます。
トラディショナルモード:厳密モードでは、MySQLデータベースにデータを挿入する際に、誤ったデータが挿入されないよう厳密なデータ検証が実行され、警告だけでなくエラーも報告されます。トランザクションで使用する場合、トランザクションはロールバックされます。注意:エラーが見つかった場合は、INSERT/UPDATEを直ちに中止してください。非トランザクションストレージエンジンを使用している場合、この方法は適していません。エラー発生前に行われたデータ変更は「ロールバック」されず、「部分的な更新」しか行われないためです。
STRICT_TRANS_TABLES モード:厳密モードでは、厳密なデータ検証が実行されます。不正なデータは挿入できず、エラーが報告されます。指定された値がトランザクションテーブルに挿入できない場合、ステートメントは破棄されます。非トランザクションテーブルの場合、値が単一行ステートメントまたは複数行ステートメントの最初の行に出現する場合、ステートメントは破棄されます。
sql_mode の詳細:
完全グループ化のみ
GROUP BY 集計操作の場合、SELECT 内の列が GROUP BY に表示されない場合は、列が GROUP BY 句にないため、SQL は無効になります。
ゼロの自動値なし
この値は、自動インクリメント列の挿入に影響します。デフォルトでは、0またはNULLを挿入すると、次の自動インクリメント値が生成されます。ユーザーが0の値を挿入したい場合、かつ列が自動インクリメントされている場合、このオプションは便利です。
STRICT_TRANS_TABLES
トランザクションに値を挿入できない場合、非トランザクション テーブルでは現在の操作は制限なく中止されます。
日付にゼロがない
日と月の値をゼロにすることはできません。
日付なし
MySQLデータベースでは、ゼロ日付の挿入は許可されません。ゼロ日付を挿入すると、警告ではなくエラーが発生します。
ゼロ除算エラー
挿入または更新中にデータがゼロで割られると、警告ではなくエラーが生成されます。このモードが指定されていない場合、MySQLはデータがゼロで割られるとNULLを返します。
自動作成ユーザーなし
GRANT が空のパスワードを持つユーザーを作成することを無効にします。
エンジン代替なし
必要なストレージエンジンが無効になっているか、コンパイルされていない場合はエラーがスローされます。この値が設定されていない場合は、代わりにデフォルトのストレージエンジンが使用され、例外がスローされます。
パイプAS_CONCAT
「||」を OR 演算子ではなく文字列連結演算子として扱います。これは Oracle データベースと同じであり、文字列連結関数 Concat に似ています。
ANSI_QUOTES
二重引用符は識別子として解釈されるため、文字列を引用符で囲むことはできません。
Apple CMS構築チュートリアル中に注意する必要があるいくつかの問題
エラー: 致命的なエラー: 未定義の関数 curl_init() を呼び出しました
PHPにはcurlモジュールがないので、php-curl拡張機能をインストールしてください。
yum で php-curl をインストール
エラー: 致命的なエラー: キャッチされないエラー: 定義されていない関数 mb_check_encoding() の呼び出し
mb_check_encoding() が失敗した場合は、以下をインストールします。
yum で php-mbstring をインストール
次に、php.ini を変更します。vim /etc/php.ini を実行し、extension=/usr/lib64/php/modules/mbstring.so を追加し、mbstring.so が保存されているディレクトリに応じて変更を加えます。通常は変更は必要ありません。
エラー: インターフェース 'JsonSerializable' が見つかりません
エラーの原因は、PHPにJSON拡張機能がないか、JSON拡張機能が有効になっていないことです。
Linux で JSON 拡張機能をインストールします。
yum -y php-json をインストール
エラー: CMS バックグラウンド検証コードが無効です
何度も正しい認証コードを入力したのですが、常に認証コードが間違っていると表示されます。これはPHPの小さな問題です。
セッション パス (たとえば、/var/lib/php/session) のユーザー グループと権限を変更し、対応するセッション パスに移動します。
cd /var/lib/php chown nginx:nginx ./session chmod -R 777 ./session
エラー: 致命的なエラー: 未定義の関数 app\common\model\simplexml_load_string() を呼び出しました
このエラーはphp-xmlがインストールされていないために発生します。php-xmlをインストールすることで問題を解決できます。
dnf で php-xml をインストール
ホームページを除いて、他のページは存在しないと表示され、ページが見つかりません (404)。
ホームページ以外のすべてのページが nginx で 404 になる場合はどうすればよいでしょうか?擬似静的ルールは概ね解決できます。バックグラウンドファイルのエントリadmin.phpが変更された場合は、対応するファイル名に変更してください。例えば、バックグラウンド管理をdianyingzhanhoutai.phpに変更した場合、擬似静的ページ内のadmin.phpも対応するファイル名に置き換える必要があります。
場所 / { if (!-e $request_filename) { ^/index.php(.*)$ /index.php?s=$1 を最後に書き換えます。 ^/admin_yingyinjia.php(.*)$ /admin_yingyinjia.php?s=$1 を最後に書き換えます。 ^/api.php(.*)$ /api.php?s=$1 を最後に書き換えます。 ^(.*)$ /index.php?s=$1 を最後に書き換えます。 break; } }
sg11のインストールの問題に関しては、PHPの上位バージョンの暗号化ファイルをサポートしていません。
SG11 は SourceGuardian 11 の略称です。 SourceGuardian公式バージョンは SourceGuardian 13 に更新されており、SG11 の最高の PHP 暗号化バージョンは PHP 7.3 であるため、SG11 Web プログラムをインストールする必要がある場合、PHP バージョンは 7.3 より高くすることはできません。
注意: Conch テンプレートは SourceGuardian 11 を使用して暗号化されています。SourceGuardian 13 を使用して Conch テンプレートをインストールすると、エラーが発生します。
PHPのバージョンが7.3以降の場合は、復号ファイルをオンラインでインストールする必要があります。まず、新しいPHPinfoプローブページを作成してください。
https://www.sourceguardian.com/loaders/download.php


php7.2はモジュールストリームにバインドされているため、nginx1.14しかインストールできず、それ以上のバージョンはインストールできません。どうすればよいでしょうか?
最初にNginx 1.20をインストールし、その後php7.2をインストールできます。php7.2を先にインストールした場合、Nginx 1.14のみインストールできます。
Mozilla/5.0 (iPhone; CPU iPhone OS 18_5_0 (Mac OS X のような)) AppleWebKit/605.1.15 (KHTML、Gecko のような) CriOS/139.0.7258.76 Mobile/15E148 Safari/604.1
# MACCMSバックエンドに高リスクの脆弱性セキュリティ通知があります
## 📌 脆弱性の概要
MACCMSには、認証なしでバックエンド操作を行える高リスクの脆弱性があり、2022年には複数のバージョンに影響が出る可能性があります。この脆弱性はまだ修正されておらず、複数のウェブサイトが攻撃を受けています。
## 🧨 既知の攻撃者の特徴
### 攻撃者1: プラグインが侵入を偽装し、JSファイルを改ざんする
関連文書:
- {ウェブサイトディレクトリ}/application/extra/addons.php
判定方法:
プラグインが有効になっていない場合、通常のファイルの内容は次のようになります。
間違い、
'hooks' => 配列(),
'ルート' => 配列(),
);
ファイルサイズが20〜30KBで、複雑な構造になっている場合は、基本的に悪意のあるコードが埋め込まれていると判断できます。
攻撃的な行動:
すべての JS ファイルを変更します。
- {ウェブサイトのルートディレクトリ}/static/js/ の下にあるすべての .js ファイル
- {ウェブサイトのルートディレクトリ}/template/theme file/ の下にあるすべての .js ファイル
感染特性: JSファイルの末尾に暗号化されたJavaScriptトロイの木馬コードを追加する
検査方法:
1. JSファイルのタイムスタンプを一つずつ確認する
2. JSファイルを開き、一番下までスクロールします。不明な暗号化コード(一貫性のないスタイル)が見つかった場合は、感染している可能性があります。
3. コードをChatGPTまたはAIツールにコピーして解読分析を行うことができます。
治療方法:
1. addons.php ファイルをクリーンなバージョンで上書きします (注: プラグインを有効にしている場合は、置き換えるとプラグインが非アクティブになる可能性があります)
2. 改ざんされたJSファイルを削除または復元する
3. ウイルスコードの拡散を防ぐためにCDNキャッシュをクリーンアップする
### 攻撃者2: トロイの木馬を偽装して設定し、権限昇格を試みる
関連ファイル(表示されると感染します):
- {ウェブサイトのルートディレクトリ}/application/extra/active.php
- {ウェブサイトのルートディレクトリ}/application/extra/system.php
攻撃的な行動:
- system.phpファイルは、最初の実行後、より複雑なトロイの木馬コードをリリースし、その後、痕跡を隠すために自動的に消去されます。
- トロイの木馬は権限の昇格を試みます。例えば、PHPが「shell_exec」を許可している場合、攻撃者はサーバーをさらに制御し、システムを再インストールすることさえ可能です。
後期感染の方法には以下のものがあります:
- HTMLページに悪意のあるジャンプコードをランダムに挿入する
- 隠されたバックドア
治療方法:
1.通常の業務に影響を与えずに、上記の2つのファイルを直ちに削除します。
2. 確認:
- {ウェブサイトのルートディレクトリ}/static/js/ すべてのJSファイル
- {ウェブサイトのルートディレクトリ}/テンプレート/テーマファイル/すべてのJSファイル
改ざんされた場合は、時間内にクリーンなバージョンを復元してください。
## 🔒 強化の提案(さらなる侵入を防ぐため)
### ✅ 不要な機能をオフにする
ウェブサイトがユーザーログインや POST リクエストを必要としない場合:
- すべてのPOSTリクエストを無効にする
- CDN/Cloudflare/ローカルNGINXレイヤーで傍受される可能性がある
### ✅ センシティブなリンクを制限する
ビジネスで POST を使用する必要がある場合 (ログイン、登録など) :
- 管理者を含むURLへのすべてのPOSTリクエストを傍受する
- セキュリティポリシーを強化するためにルールをカスタマイズする
### ✅ セキュリティ保護をオンにする
- パゴダパネルの改ざん防止を有効にする
- または、コマンドライン ツール chattr を使用してキー ディレクトリをロックします。
> 注意: +i 以降はファイルを変更できません。また、アップデートを展開する前に chattr -i を実行する必要があります。