אַפָּשׁ、MariaDB、PHP מותקן באופן עצמאי ב- Windows

האתר שהשתמש במדף AppServ בשנים הראשונות נפרץ,一直查不出原因,רוצה לעדכן את אפאצ'י、PHP、גרסת MySQL מוגבלת על ידי סוגת התאימות של חבילת ג'ומלה ואינה ניתנת לביצוע,之後又要遇到需要另外新增一個網站的需求,במקור תכנן להשתמש ב- XAMPP,אבל כשקוראים את מסמכי ה- XAMPP הרשמיים,赫然看到官方並不建議將此軟體用於正式環境,若非得使用,官方雖有建議調整部份設定值,以提高安全性,但又提醒你,這只能稍微增加一點點安全性而已 (好直白的官方啊~哈),אז התחלתי לחקור ולהתקין Apache באופן עצמאי.、MariaDB、PHP ו- phpMyAdmin。

כל תהליך התקנת ערכה הוא כדלקמן:

【】 אפאצ'י

  • אל בית אפאצ'י הורד את קובץ ה- zip (x64)。
  • שחרור לחץ,ראשית קרא את ההוראות readme_first.html。
  • העתק את הספרייה למיקום הרצוי Apache24。
  • httpd.conf Open,הגדר הגדרת נתיב SRVROOT,כמו ד:\אינטרנט Apache24。
  • מצא אפשרויות אינדקסים FollowSymLinks ב- httpd.conf,מחק אינדקסים,עיון להימנע קטלוג להיות。
  • בצע ישירות את httpd.exe,בדוק אם יש שגיאה במהלך תהליך ההפעלה,ואז דפדף localhost באמצעות הדפדפן,כדי לבדוק האם הנכון。
  • קלט CMD”httpd.exe -k להתקין”,הגדר את אפאצ'י כשירות (הוראות ההסרה הן “הסרת ההתקנה של httpd.exe -k”)。

 


【】 PHP

PHP מחולק לשתי גרסאות, Safe Thread Safe ו- Thread Safe,כאן מובאים שני מאמרים להמחשת בחירתם של השניים:

 

ההבדל בין PHP Non Thread Safe ו- Thread Safe – הבלוג של וויימאי” להזכיר:

אף חוט בטוח אינו בטוח בחוט,אין בדיקת בטיחות חוט במהלך ביצוע。

חוט בטוח הוא בטיחות חוט,בדיקת בטיחות חוט תתבצע במהלך הביצוע,כדי למנוע התחלת חוטים חדשים,משאבי מערכת פליטה。

…略

שיטת ביצוע FastCGI היא לבצע פעולות בחוט יחיד,כך שאין צורך לבצע בדיקות בטיחות פתיל,הסר את ההגנה של בדיקות בטיחות פתיל אך יכול לשפר את יעילות הביצוע。

בדיקת בטיחות השרשור מוכנה ל- ISAPI PHP,זה מוכן ל- IIS,מכיוון שיש הרבה מודולי php שאינם בטוחים לחוט,אז צריך להשתמש ב- PHP בטוח。

וכך,אם PHP מבוצע באמצעות FastCGI ,מומלץ להשתמש ב- PHP Safe Thread (חבילת התקנת מיקוד).。

נ.ב.. מומלץ לעבור למאמר זה לתיאור המלא。

 

חוט PHP בטוח ואינו הברגה פתיל עבור Windows – הצפת מחסנית” הסדק הזכיר:

אז זה באמת תלוי בדרך בה תרצו להשתמש ב- PHP:

אַפָּשׁ + LoadModule: חוט בטוח
אַפָּשׁ + FastCGI: לא חוט בטוח
IIS: חוט בטוח
IIS + FastCGI: לא חוט בטוח

במדריך PHP הוראות התקנה נחמדות.

AFAIR שמריץ PHP עם FastCGI זו הדרך העדיפה, זה מבצע מהר יותר ומאפשר תצורת אבטחה עדינה יותר.

 

משני המאמרים לעיל,,השתמש ב- FastCGI + PHP בטוח שאינו הברגה יהיה בחירה טובה יותר。והשימוש בפועל בתחושה,לאחר שהחלפתי מ- Thread Safe ל- Safe Thread,תוך כדי גלישה באתר ג'ומלה,אתה יכול ממש להרגיש את מהירות פתיחת העמוד,הפתיע אותי קצת。

שתי הדרכים הבאות להגדרת Safe Thread ו- Thread Safe。

 

【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"
    # 建議要設,避免部份網站程式的時間有時差。
  • אל בית אפאצ'י הורד את "Mod FCGID עבור Apache 2.4.x x64"。
  • 解壓縮後,שנה את mod_fcgid.so,העתק ל- אַפָּשׁ תחת המודולים。
  • 開啟 אַפָּשׁ Httpd.conf,להוסיף את התוכן הבא:
  • LoadModule fcgid_module modules/mod_fcgid.so
    # 載入 FastCGI 的模組。
    
    # 搜尋 DirectoryIndex,在後面增加:
    index.php
    

ישנן שתי דרכים לעשות זאת בהמשך,האחד הוא פרקטיקה סטנדרטית,אחד פשוט。

[הגדרות FastCGI – אימון רגיל]

  • שנה את httpd-fcgid.conf תחת conf / extra בספריית FastCGI,העתק ל- אַפָּשׁ תחת conf / תוספת。
  • פתח את 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:\האינטרנט php-7.4.6 יקפוץ לא נכון,שנה ל- D:/האינטרנט / 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'’ משתמש】,כדי להפחית את הסיכון。
    • 勾 【השתמש ב- UTF8 כערכת התווים של ברירת המחדל.。

     


    【】 PhpMyAdmin

    • הורד את קובץ ה- zip,שחרור לחץ,העתק ל- Apache24 htdocs。
    • פתח את php.ini של PHP。
    • הסר את #extension_dir = “שלוחה” 的 # הערה,”שלוחה” 改成 “D:\ אינטרנט PHP-7.1.5 שלוחה”。
    • הסר # סיומת = php_mbstring.dll # הערה。
    • הסר # סיומת = php_mysqli.dll # הערה。

    –2019/01/05 לעדכן

    • Config.sample.inc.php שינתה את שמה ל config.inc.php。
    • config.inc.php Open,הפעל את $cfg["Blowfish_secret"],מלאו גרשיים מאוחר 32 סיסמא ספרות,ישיר למצוא מחולל סיסמאות לייצר מספיק。
    • הוסף את השורה $cfg["PmaNoRelation_DisableWarning"] = "נכון";,כדי להימנע מהודעת השגיאה מ- phpMyAdmin,שיחות על השולחן הממסד。

     
    【參考連結】

    תגובה אחת

    1. אפצ'י עדכונים、MariaDB、PHP | טוסון צ'אנג טאן הישן אומר |

      […] בנייה מהירה אך לפיתוח בלבד, כמו appserv,במקום זאת בנה את אפאצ'י באופן ידני、MariaDB ו- PHP,אחרי המתחדש מדי שישה חודשים עם תדירות התחזוקה לעשות,Benpian אפאצ'י הוא עדכון שיא、MariaDB […]

    השאיר תגובה

    שים לב: תגובת התמתנות מופעלת ועלולה לעכב את התגובה שלך. אין צורך להגיש מחדש את התגובה שלך.