تم اختراق موقع الويب الذي استخدم رف AppServ في السنوات الأولى,一直查不出原因,تريد تحديث اباتشي、PHP、إصدار MySQL محدود بسبب مشكلة التوافق في حزمة Joomla ولا يمكن تنفيذه,之後又要遇到需要另外新增一個網站的需求,خططت أصلاً لاستخدام XAMPP,ولكن عند قراءة وثائق XAMPP الرسمية,赫然看到官方並不建議將此軟體用於正式環境,若非得使用,官方雖有建議調整部份設定值,以提高安全性,但又提醒你,這只能稍微增加一點點安全性而已 (好直白的官方啊~哈),لذلك بدأت في البحث وتثبيت Apache بشكل مستقل.、MariaDB ل、PHP و phpMyAdmin。
كل عملية تركيب عدة على النحو التالي:
【】 أباتشي
- إلى منزل أباتشي تحميل ملف مضغوط (x64)。
- إزالة الضغط,اقرأ أولاً إرشادات readme_first.html。
- نسخ الدليل إلى الموقع المطلوب Apache24。
- فتح httpd.conf,تعيين تحديد مسار SRVROOT,كما د:\على شبكة الإنترنت Apache24。
- ابحث عن فهارس الخيارات FollowSymLinks في httpd.conf,حذف الفهارس,تصفح الكتالوج تجنب التعرض لل。
- تنفيذ httpd.exe مباشرة,تحقق مما إذا كان هناك خطأ أثناء عملية بدء التشغيل,ثم تصفح localhost باستخدام متصفح,لمعرفة ما إذا كانت صحيحة。
- إدخال CMD”httpd.exe كيلو تثبيت”,تعيين أباتشي كخدمة (تعليمات الإزالة “httpd.exe -k إلغاء التثبيت”)。
【】 PHP
تنقسم PHP إلى نسختين ، Non Thread Thread و Thread Safe,تم الاستشهاد بمقالين هنا لتوضيح اختيار الاثنين:
“الفرق بين PHP Non Safe و Thread Safe – مدونة Weimai” أشير:
لا يوجد مؤشر ترابط آمن غير آمن لمؤشر الترابط,لا يوجد فحص سلامة الموضوع أثناء التنفيذ。
خيط آمن هو سلامة الخيط,سيتم تنفيذ فحص سلامة الخيط أثناء التنفيذ,لمنع بدء سلاسل المحادثات الجديدة,موارد نظام العادم。
…略
طريقة تنفيذ FastCGI هي تنفيذ العمليات بمؤشر ترابط واحد,لذلك ليس هناك حاجة لإجراء فحوصات سلامة الخيط,قم بإزالة حماية فحوصات سلامة الخيط ولكن يمكن أن تحسن كفاءة التنفيذ。
تم تحضير اختبار سلامة مؤشر الترابط لـ ISAPI PHP,تم تحضير IIS,لأن هناك العديد من وحدات php التي ليست آمنة,لذلك تحتاج إلى استخدام Thread Safe PHP。
وهكذا,إذا تم تنفيذ PHP مع FastCGI ,من المستحسن استخدام PHP غير الخيط الآمن (حزمة التثبيت المضغوطة)。
PS. من المستحسن الانتقال إلى هذه المقالة للحصول على الوصف الكامل。
“PHP Thread Safe و Non-Thread Safe لنظام Windows – تجاوز المكدس” ذكر الكراك:
لذلك يعتمد الأمر حقًا على الطريقة التي تريد بها استخدام PHP:
أباتشي + LoadModule: خيط آمن
أباتشي + FastCGI: غير خيط آمن
IIS: خيط آمن
IIS + FastCGI: غير خيط آمنيحتوي دليل PHP على تعليمات تثبيت لطيفة.
AFAIR التي تعمل PHP مع FastCGI هي الطريقة المفضلة, يعمل بشكل أسرع ويسمح بتكوين أمان أكثر دقة.
من المادتين أعلاه ،,استخدم FastCGI + سيكون PHP الآمن بدون سلسلة اختيارًا أفضل。والاستخدام الفعلي للشعور,بعد أن قمت بالتغيير من سلسلة الرسائل الأصلية الآمنة إلى سلسلة الرسائل غير الآمنة,أثناء تصفح موقع جملة,يمكنك أن تشعر بسرعة سرعة فتح الصفحة,فاجأني قليلا。
الطريقتان التاليتان لتعيين Non Thread Thread و Thread Safe。
【بي أتش بي – بدون خيط آمن】(نوصي)
- إلى الصفحة الرسمية تنزيل أرشيف غير موضوعي آمن。
- إزالة الضغط,نسخ الدليل إلى الموقع المطلوب,تغيير إنتاج php.ini إلى 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" # 建議要設,避免部份網站程式的時間有時差。
LoadModule fcgid_module modules/mod_fcgid.so # 載入 FastCGI 的模組。 # 搜尋 DirectoryIndex,在後面增加: index.php
هناك طريقتان للقيام بذلك بعد ذلك,واحد هو الممارسة القياسية,واحد بسيط。
[إعدادات FastCGI – الممارسة القياسية]
- قم بتغيير httpd-fcgid.conf ضمن conf / extra في دليل FastCGI,نسخ الى أباتشي تحت أسيوط / اضافية。
- افتح 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 設定。
# 搜尋 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 的權限。
<?php phpinfo(); ?>
تذكير:إذا قمت بتنفيذ httpd.exe,هناك خطأ خارج المسار,تحقق من اتجاه الخط المائل للمسار المطلق لـ httpd.conf,يرجى استخدام الشرطة المائلة(/)استبدل الخط المائل العكسي(\)。كنت أصلا D:\Web php-7.4.6 سيقفز بشكل خاطئ,التغيير إلى د:/الويب / php-7.4.6 على ما يرام。
【بي أتش بي – خيط آمن】
- إلى الصفحة الرسمية تحميل ملف مضغوط مؤشر الترابط الآمن。
- إزالة الضغط,نسخ الدليل إلى الموقع المطلوب,تغيير إنتاج php.ini إلى 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" # 建議要設,避免部份網站程式的時間有時差。
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
<?php phpinfo(); ?>
【MariaDB】
- إلى الصفحة الرسمية تنزيل MSI(x64),直接安裝。
- قم بتعيين كلمة مرور الجذر。
- قم بإلغاء تحديد [تمكين الوصول من الأجهزة البعيدة لـ "الجذر’ المستعمل】,للحد من مخاطر。
- 勾 【استخدم UTF8 كمجموعة أحرف للخادم الافتراضي】。
【】 بريس
- تحميل ملف مضغوط,إزالة الضغط,نسخ إلى Apache24 htdocs。
- افتح php.ini الخاص بـ PHP。
- إزالة #extension_dir = “تحويلة” 的 # تعليق,”تحويلة” 改成 “D:\على شبكة الإنترنت فب-7.1.5 تحويلة”。
- إزالة # extension = php_mbstring.dll # تعليق。
- إزالة # extension = php_mysqli.dll # تعليق。
–2019/01/05 التحديث
- غيرت اسمها إلى config.sample.inc.php config.inc.php。
- فتح config.inc.php,در $س ف ج["blowfish_secret"],ملء علامات الاقتباس المفردة في وقت لاحق 32 كلمة السر أرقام,مباشرة لإيجاد مولد كلمة السر لتوليد ما يكفي。
- أضف السطر $س ف ج["PmaNoRelation_DisableWarning"] = 'صحيح';,لتجنب رسالة الخطأ من phpMyAdmin,يدعو إلى إنشاء الجدول。
【參考連結】
- نوافذ 7 安裝 Apache + MySQL + PHP ~ JxL Blog 技術札記
- تثبيت أباتشي يدويا、MySQL、PHP والإعدادات ذات الصلة – OA’s blog
- في نظام التشغيل Windows تثبيت أباتشي يدويا、PHP、MySQL、بريس | Beyond The Time
- XYZ的筆記本: WINDOWS7 64 بت المثبت أباتشي、PHP、MySQL
- المحيط الأزرق استوديوهات – عرض الموضوع – وضع بريس
- بريس 設定 سر السمكة المنتفخة
- الفرق بين PHP Non Safe و Thread Safe – مدونة Weimai
- تعدد – PHP Thread Safe و Non-Thread Safe لنظام Windows – تجاوز المكدس
- PHP على Windows + طريقة تثبيت أباتشي mod_fcgid | غرفة سيئة
[…] appserv هذا البناء السريع ولكن فقط لبيئة تطوير عدة,تغييره يدويا لبناء أباتشي、MariaDB لوPHP,بعد تجدد كل ستة أشهر ومع تواتر الصيانة للقيام,Benpian أباتشي هو تحديث سجل、MariaDB ل […]