アパッチ、MariaDB、PHPはWindowsに個別にインストールされます

App初期の段階でAppServシェルフを使用していたWebサイトがハッキングされた,一直查不出原因,Apacheを更新したい、PHP、MySQLのバージョンは、Joomlaパッケージの互換性の問題によって制限され、実行できません,之後又要遇到需要另外新增一個網站的需求,当初はXAMPPを使用する予定でした,しかし、公式のXAMPPドキュメントを読むとき,赫然看到官方並不建議將此軟體用於正式環境,若非得使用,官方雖有建議調整部份設定值,以提高安全性,但又提醒你,這只能稍微增加一點點安全性而已 (好直白的官方啊~哈),そこで、Apacheを個別に調査してインストールし始めました。、MariaDB、PHPおよびphpMyAdmin。

次のように各キットのインストールプロセスがあります:

【アパッチ】

  • アパッチハウス zipファイルをダウンロード (x64)。
  • 減圧,最初にreadme_first.htmlの説明を読んでください。
  • 目的の場所Apache24にディレクトリをコピーします。。
  • オープンのhttpd.conf,SRVROOTパスの定義を設定,Dとして:\ウェブ Apache24。
  • オプションインデックスの検索httpd.confのFollowSymLinks,インデックスを削除する,されたカタログの回避を閲覧。
  • httpd.exeを直接実行する,起動プロセス中にエラーがあるかどうかを確認します,次に、ブラウザでlocalhostを参照します,正しいかどうかを確認するには。
  • CMD入力”httpd.exe -kインストール”,Apacheをサービスとして設定する (削除手順は “httpd.exe -kアンインストール”)。

 


【PHP】

PHPには、非スレッドセーフとスレッドセーフの2つのバージョンがあります。,ここでは、2つの選択肢を説明するために2つの記事を引用しています。:

 

PHP非スレッドセーフとスレッドセーフの違い – Weimaiブログ” 言及:

なしスレッドセーフは非スレッドセーフです,実行中のスレッド安全性チェックはありません。

スレッドセーフはスレッドセーフです,実行中にスレッド安全性チェックが実行されます,新しいスレッドが開始されないようにするには,システムリソースを使い果たす。

…略

FastCGIの実行方法は、単一のスレッドで操作を実行することです,したがって、スレッドセーフティチェックを実行する必要はありません。,スレッドセーフティチェックの保護を削除しますが、実行効率を向上させることができます。

ISAPI PHPのスレッドセーフティチェックが準備されています,IIS用に準備されています,スレッドセーフではない多くのphpモジュールがあるため,だからスレッドセーフなPHPを使用する必要があります。

そう,PHPがFastCGIで実行されている場合 ,非スレッドセーフPHP(zipインストールパッケージ)の使用をお勧めします。

PS. 詳細については、この記事にアクセスすることをお勧めします。

 

WindowsのPHPスレッドセーフおよび非スレッドセーフ – スタックオーバーフロー” 言及されたクラック:

つまり、PHPをどのように使用したいかによります。:

アパッチ + LoadModule: スレッドセーフ
アパッチ + FastCGI: 非スレッドセーフ
IIS: スレッドセーフ
IIS + FastCGI: 非スレッドセーフ

PHPマニュアルにはすばらしいインストール手順があります.

FastCGIでPHPを実行するAFAIRが望ましい方法です, より高速に実行され、よりきめの細かいセキュリティ構成が可能になります.

 

above上記の2つの記事から、,FastCGIを使用する + スレッドセーフでないPHPの方が良い選択です。そして実際の使用感,元のスレッドセーフから非スレッドセーフに変更した後,Joomlaウェブサイトを閲覧している間,実際にページを開く速さを実感できます,少し驚いた。

Non非スレッドセーフとスレッドセーフを設定する次の2つの方法。

 

【PHP – 非スレッドセーフ】(お勧め)

  • 公式ページ 非スレッドセーフアーカイブをダウンロード。
  • 減圧,目的の場所にディレクトリをコピー,php.ini-productionをphp.iniに変更します。
  • php.iniを開きます,以下の内容を変更します。:
  • # 搜尋 extension_dir = "ext",改成:  extension_dir = "D:\Web\php-7.4.3\ext"  或  ./ext    # 搜尋 file_uploads = On,改成:  file_uploads = Off  # 如果網站沒有用到檔案上傳功能,建議關閉,  # 有需要使用時再開啟,避免被上傳病毒檔案。  # 之前我們 ESET 防毒常攔截到網站伺服器被上傳惡意檔案,  # 直到關閉此設定才沒再發生。    # 搜尋 upload_max_filesize = 2M,改成適合的大小:  upload_max_filesize = 30M  # Joomla 4 的建議值為 30M    # 搜尋 allow_url_fopen = On,改成:  allow_url_fopen = Off  # 如果網站沒有用到檔案上傳功能,建議關閉,  # 有需要使用時再開啟,避免被上傳病毒檔案。  # 之前我們 ESET 防毒常攔截到網站伺服器被上傳惡意檔案,  # 直到關閉此設定才沒再發生。    # 搜尋 ;date.timezone =,改成:  date.timezone ="Asia/Taipei"  # 建議要設,避免部份網站程式的時間有時差。
  • アパッチハウス 「Apache 2.4.x x64のMod FCGIDをダウンロード」。
  • 解壓縮後,mod_fcgid.soを変更します,にコピー アパッチ モジュールの下。
  • 開啟 アパッチ Httpd.conf,次の内容を追加します。:
  • LoadModule fcgid_module modules/mod_fcgid.so  # 載入 FastCGI 的模組。    # 搜尋 DirectoryIndex,在後面增加:  index.php  

次にそれを行うには2つの方法があります,1つは標準的な方法です,1つは簡単です。

【FastCGI 設定 – 標準的な慣行]

  • FastCGIディレクトリのconf / extraの下にあるhttpd-fcgid.confを変更します,にコピー アパッチ conf / extraの下。
  • httpd-fcgid.confを開きます,以下の内容を変更します。:
  • # 搜尋 FcgidInitialEnv PHPRC "C:\\php",改成:  FcgidInitialEnv PHPRC "D:\\Web\\php-7.4.6"  # 讓 FastCGI 知道 php.ini 所在目錄。  # 其他的 FcgidInitialEnv 環境參數可視實際環境修正。    FcgidMaxRequestLen 15360000  # 此參數可選擇性增加。  # 根據「壞蛋的密室」文章的說明,  # 此參數為用戶端送來的最大長度資料,預設值為 139072 (135K)。    # 搜尋 FcgidWrapper "C:/php/php-cgi.exe" .php,改成:  FcgidWrapper "D:/Web/php-7.4.6/php-cgi.exe" .php  # FastCGI 設定。  
  • 開啟 アパッチ Httpd.conf,以下の内容を変更します。:
  •   # 搜尋 Include conf/extra/httpd-fcgid.conf,  # 將前面的註解井字號拿掉。  

【FastCGI 設定 – 簡単な方法]

  • 開啟 アパッチ Httpd.conf,次のコンテンツを追加します:
  • FcgidInitialEnv PHPRC "D:/Web/php-7.4.6"   # 讓 FastCGI 知道 php.ini 所在目錄。    AddHandler fcgid-script .php  # 設定 FastCGI 處理 php 檔案。    FcgidWrapper "D:/Web/php-7.4.6/php-cgi.exe" .php  # FastCGI 設定。    FcgidMaxRequestLen 15360000  # 此參數可選擇性增加。  # 根據「壞蛋的密室」文章的說明,  # 此參數為用戶端送來的最大長度資料,預設值為 139072 (135K)。    # 搜尋 Options FollowSymLinks  # (或 Options Indexes FollowSymLinks,  # 若未在上面 Apache 步驟中去除 Indexes),在後面增加:  ExecCGI  # 讓網頁目錄有執行 CGI 的權限。  
  • FastCGIが設定された後,index.phpファイルを追加できます (テスト用),Dを入れて:\ウェブ Apache24 htdocsに,次の:
  • <?php  phpinfo();  ?>
  • ブラウザでindex.phpを開きます ,PHP情報を表示できることを確認します。
  • 思い出させる:httpd.exeを実行すると,パスの外にエラーがあります,httpd.confの絶対パスのスラッシュ方向を確認してください,スラッシュを使用してください(/)バックスラッシュを置き換える(\)。私はもともとDを使いました:\Web php-7.4.6は間違ってジャンプします,Dに変更:/Web / php-7.4.6は問題ありません。

     

    【PHP – スレッドセーフ】

    • 公式ページ スレッドセーフ圧縮ファイルをダウンロードする。
    • 減圧,目的の場所にディレクトリをコピー,php.ini-productionをphp.iniに変更します。
    • php.iniを開きます,以下の内容を変更します。:
    • # 搜尋 extension_dir = "ext",改成:  extension_dir = "D:\Web\php-7.4.3\ext"    # 搜尋 file_uploads = On,改成:  file_uploads = Off  # 如果網站沒有用到檔案上傳功能,建議關閉,  # 有需要使用時再開啟,避免被上傳病毒檔案。  # 之前我們 ESET 防毒常攔截到網站伺服器被上傳惡意檔案,  # 直到關閉此設定才沒再發生。    # 搜尋 upload_max_filesize = 2M,改成適合的大小:  upload_max_filesize = 30M  # Joomla 4 的建議值為 30M    # 搜尋 allow_url_fopen = On,改成:  allow_url_fopen = Off  # 如果網站沒有用到檔案上傳功能,建議關閉,  # 有需要使用時再開啟,避免被上傳病毒檔案。  # 之前我們 ESET 防毒常攔截到網站伺服器被上傳惡意檔案,  # 直到關閉此設定才沒再發生。    # 搜尋 ;date.timezone =,改成:  date.timezone ="Asia/Taipei"  # 建議要設,避免部份網站程式的時間有時差。
    • 開啟 アパッチ Httpd.conf,次の内容を追加します。:
    • PHPIniDir "D:\Web\php-7.1.5"  # 指定 php.ini 存放的資料夾位置。    LoadModule php7_module "D:\Web\php-7.1.5\php7apache2_4.dll"  # 載入 php 的模組。    AddType application/x-httpd-php .php .php3 .phtml .inc  # 指定附檔名是 .php .php3 .phtml .inc 的程式都為 php 程式。    AddType application/x-httpd-php-source .phps .phpsource  # 指定附檔名是 .phps 時,  # 把內容視為 hightlight 的原始碼輸出到網頁。    # 搜尋 DirectoryIndex,在後面增加:  index.php
    • index.phpファイルを追加する (テスト用),Dを入れて:\ウェブ Apache24 htdocsに,次の:
    • <?php phpinfo(); ?>
    • ブラウザでindex.phpを開きます ,PHP情報を表示できることを確認します。

     


    【MariaDB】

    • 公式ページ msiをダウンロード(x64),直接安裝。
    • rootパスワードを設定する。
    • [「rootのリモートマシンからのアクセスを有効にする’ ユーザー】,リスクを軽減するために、。
    • 勾【UTF8をデフォルトのサーバーの文字セットとして使用します】。

     


    【phpMyAdminに】

    • zipファイルをダウンロード,減圧,Apache24 htdocsにコピーします。
    • PHPのphp.iniを開きます。。
    • #extension_dir =を削除 “ext” 的 # コメント,”ext” 変更 “D:\Web\php-7.1.5\ext”。
    • #extension = php_mbstring.dllを削除します # コメント。
    • #extension = php_mysqli.dllを削除します # コメント。

    –2019/01/05 更新

    • config.sample.inc.phpはconfig.inc.phpファイルに社名変更しました。
    • オープンconfig.inc.phpを,上げる $CFG[「blowfish_secret」],後に単一引用符を記入 32 桁のパスワード,十分に生成するパスワード生成器を見つけることが直接。
    • 行を追加します。 $CFG[「PmaNoRelation_DisableWarning」] =「真」;,phpMyAdminからのエラーメッセージを回避するには,確立テーブルを呼びかけ。

     
    【參考連結】

    1つの応答

    1. Apacheのアップデート、MariaDB、PHP | 古いセンチャンタン と言う |

      […] Appservは迅速に構築されるパッケージですが、開発環境にのみ適しています,Apacheを手動でビルドするように変更する、MariaDBやPHP,後、半年ごとに更新して行うためのメンテナンスの頻度で,Benpian Apacheはレコード更新です、MariaDB […]

    コメントを残す

    注意してください: コメントモデレーションが有効になって、あなたのコメントを遅らせる可能性があります. コメントを再送信する必要はありません.