كيفية انشاء خادم ويب مخصص مجانا

() translation by (you can also view the original English article)
تحتوي جميع المواقع الرائعة على خادم رائع خلفها. في هذا البرنامج التعليمي ، سأوضح لك كيفية إعداد خادم ويب مخصص (مع Apache و MySQL و PHP) باستخدام هذا الكمبيوتر القديم الذي تملكه في المنزل وبعض البرامج المجانية.
1. لمحة سريعة
في هذا البرنامج التعليمي ، نهدف إلى تحقيق عدة أمور:
- سنقوم بتركيب نظام تشغيل Ubuntu Server. أنا عادة استخدام أوبونتو بسبب سهولة استخدامه و
إدارة بسيطة. كما أن لديها مجتمع كبير ونشط للغاية إلى حد ما وراء ذلك ، مما يجعل الحصول عليها
نسيم مدعوم. - سنقوم بتركيب خادم OpenSSH. هذا يسمح لك بإدارة الخادم الخاص بك من أجهزة الكمبيوتر البعيدة
- سيتم تثبيت حزمة LAMP (Linux و Apache و MySQL و PHP). هذا يوفر القاعده التي سيتم تشغيلها
موقع الويب الخاص بك. Apache هو خادم الويب القياسي في صناعة أنظمة التشغيل المستندة إلى Unix ؛ هذا ما يستضيفه معظم الويب
استخدام (NETTUTS يستخدمه الآن!) وهذا ما سنستخدمه. - سنقوم بتثبيت جدار حماية لحماية الخادم الخاص بك من الوصول غير المصرح به.
لمتابعة هذا البرنامج التعليمي ، ستحتاج إلى بعض العناصر:
- جهاز كمبيوتر لاستخدامه كخادمك. لا يجب أن تكون قوية ؛ طالما أنها ليست قديمة ، ستعمل بشكل جيد. رجاء
لا تفعل هذا على كمبيوتر سطح المكتب الخاص بك ؛ سوف Ubuntu يمسح جهاز الكمبيوتر الخاص بك تماما. - ناسخ أقراص مضغوطة و قرص مضغوط فارغ. هذه بحيث يمكنك حرق Ubuntu على قرص لتثبيته.
- زمن. على محمل الجد ، هذه العملية تستغرق وقتا طويلا ، وخاصة إذا واجهت مشاكل. حاول أن تضع جانبا بعد ظهر اليوم
لمتابعة هذا البرنامج التعليمي.
قد تسأل لماذا تريد أن يكون لديك خادم الويب الخاص بك. هناك عدة أسباب ، عدد قليل منها: يمكنك إجراء الاختبار الخاص بك
الاساس لمواقع الويب الخاصة بك ؛ مع القليل من التعديل ، يمكنك استضافة موقعك الخاص ؛ وسوف تتعلم الكثير عن Linux / Unix كما تذهب.
و مع ذلك، دعونا نبدأ!
2. قم بتنزيل Ubuntu Server
أولاً وقبل كل شيء ، سنحتاج إلى قرص مضغوط يحتوي على Ubuntu عليه. وجه متصفح الويب الخاص بك إلى http://www.ubuntu.com/ ،
وانقر فوق تنزيل من القائمة إلى اليسار. سيتم الآن عرض مربع يحتوي على علامتي تبويب: "Desktop Edition" و
"إصدار الخادم". انقر فوق علامة التبويب "إصدار الخادم" ، وحدد "Ubuntu 8.04 LTS". بعد ذلك ، حدد موقع التنزيل من
اسقط الصندوق. أخيرا ، اضغط على زر "بدء التنزيل"



الآن تحتاج إلى حرق ISO (الملف الذي قمت بتنزيله) إلى قرص مضغوط فارغ. إذا كنت لا تعرف كيفية القيام بذلك ، هناك
دليل ممتاز على https://help.ubuntu.com/community/BurningIsoHowto
3. قم بتثبيت خادم Ubuntu
الآن بعد أن قمت بتنزيل ISO وحرقها ، دعنا نجعل Ubuntu مثبتًا على الخادم الخاص بك. ضع القرص في محرك الأقراص ، ثم قم بالتمهيد من القرص المضغوط. في معظم أجهزة الكمبيوتر الحديثة ، سيحدث هذا افتراضيًا إذا كان القرص في محرك الأقراص عند تشغيله. إذا لم يحدث ذلك ، فأنت بحاجة إلى الضغط على مفتاح على لوحة المفاتيح الخاصة بك مباشرة عند تشغيله. بالنسبة لجهاز الكمبيوتر المحمول الخاص بي ، فهو F12 ، وبالنسبة إلى الخادم الخاص بي ، فهو F2. يعتمد فقط على جهاز الكمبيوتر الخاص بك. يمكنك العثور عليه من خلال النظر إلى النص على الشاشة مباشرة عند تشغيل الكمبيوتر ، أثناء BIOS. سترى شيئًا مثل "اضغط [KEY] لتغيير ترتيب التمهيد". اضغط على هذا المفتاح ، وحدد محرك الأقراص المضغوطة.
لا يزال معي؟ جيد. الآن بعد أن قمت بتشغيل Ubuntu ، سترى الشاشة التالية:



اختر لغتك ، واضغط على Enter. سترى الآن هذه الشاشة:



حدد "تثبيت خادم ubuntu" ، ونذهب بعيدا!
سيسألك المثبت الآن ما إذا كنت تريد أن يكشف عن تخطيط لوحة المفاتيح. شخصيا ، أنا دائما اختيار لا ، لأن
من الأسرع اختيار لوحة مفاتيح أمريكية قياسية من القائمة بدلاً من اكتشاف أداة التثبيت لها. الخيار على ما يرام ،
فقط اتبع التعليمات التي تظهر على الشاشة.
بعد الانتهاء من ذلك ، سترى الآن مجموعة من شاشات التحميل تقول أشياء مثل "اكتشاف محركات الأقراص المضغوطة" وهكذا.
هذه يجب أن تمر بسرعة ودون مشاكل. ومع ذلك ، أثناء هذه الشاشات ، سيحاول المثبّت تهيئة إعداداتك تلقائيًا
اعدادات الشبكة. بالنسبة لمعظم الحالات ، سيعمل هذا دون شكوى. ومع ذلك ، إذا لم ينجح معك ، فقط اتبع
التعليمات التي تظهر على الشاشة للحصول عليها عملها.
بعد الانتهاء من ذلك كله ، سيطلب منك اسم المضيف. يمكنك عادة تعيين هذا إلى أي شيء ؛ أنا دائما
خصوصا إلى "خادم الويب".



سيطلب منك النظام الآن تعيين المنطقة الزمنية لساعتك. بالنسبة لي ، إنه المحيط الهادئ. اختر الذي ينطبق
اليك.
الآن ، سيقوم النظام باكتشاف المزيد من الأجهزة ، وستتم مطالبتك بـ "تقسيم القرص (الأقراص)". حدد "توجيه - استخدم كل
الاقراص ".



ستحتاج الآن إلى تحديد القرص الذي ترغب في تقسيمه. بالنسبة لمعظم الإعدادات ، سيكون هناك قرص واحد فقط متاح ؛ ومع ذلك،
لمزيد من الأنظمة المتخصصة ، ستتوفر المزيد من الخيارات هنا. اختر الذي ينطبق عليك.



سيسألك ما إذا كنت تريد كتابة التغييرات على القرص. اختر "نعم" واضغط على Enter. سيبدأ المثبت الآن
لتهيئة محرك الأقراص وإعداد الأقسام.
الآن السحر يحدث. سيبدأ النظام في التثبيت. بينما يحدث هذا ، اذهب للحصول على كوب من القهوة. هذا يمكن أن يأخذ في أي مكان
من 10 دقائق إلى ساعة. يعتمد فقط على النظام الخاص بك. قد يكون هناك أوقات يبدو أنها ثابته. لا تقلق،
لا عليك. فقط دعها تفعل الشيء ، إذا كانت عالقة في شيء واحد لمدة ساعة ،ثم نعم، ثم تثبيت.



الآن بعد تثبيت النظام ، يجب إعداد الحساب الذي ستقوم بتسجيل الدخول إليه. أولاً ، امنحيها بالكامل
الاسم وضع"متابعة".



أعطه الآن اسم المستخدم الخاص بك. عادةً ما تقوم بتعيينه كاسمك الأول ،
لكن يمكنك تغييرها. اسم واحد قد لا تستخدمه هو "الاصل".



سيطلب منك الآن تقديم كلمة مرور. من الضروري اختيار كلمة مرور قوية ، وإلا فلن يقوم الخادم الخاص بك
كن آمنًا على الإطلاق. أوصي في LAST بخليط من الأرقام والأحرف الصغيرة والأحرف الكبيرة. ومع ذلك ، للخدمه
أستخدم الرموز ، بالإضافة إلى مزيج من ما سبق. لا تستخدم كلمة مرور أقصر من 7 أحرف



ثم أعد إدخال كلمة المرور الخاصة بك للتحقق من أنك قمت بكتابتها بشكل صحيح.
سيحاول النظام الآن تهيئة "مدير العمليات التجاريه" (سنصل إلى ما هو قريب). مع توفير لكم
معلومات الوكيل ، أو اتركها فارغة إذا كنت لا تستخدم وكيل ، واختر "متابعة"



سيقوم النظام الآن بمسح العديد من الخوادم للبحث عن التحديثات وإعدادات التكوين



بعد اكتمال ذلك ، سيتم تقديمك مع العديد من الخيارات لتثبيت برنامج الخادم. الآن ، استمع جيدا.
حدد خادم OpenSSH ، ثم اضغط على SPACE ، وليس ENTER. إذا قمت بالضغط على Enter ، فستستمر عملية التثبيت بدون تثبيت خادم OpenSSH.
يمكنك تثبيت "LAMP server" أيضًا ، ولكن ليس لدي أي خبرة في هذا الخيار ، لذا سنقوم بتثبيته جميعًا باستخدام
الأمر في وقت لاحق.



سيقوم النظام الآن بتثبيت البرنامج المحدد ، بالإضافة إلى مكونات النظام الأخرى.



وأخيرًا ، ستنتهي عملية التثبيت. قم بإزالة القرص المضغوط ، ثم اضغط على Enter. سيتم إعادة تشغيل الكمبيوتر. إذا سارت الأمور على ما يرام ، فسوف تكون كذلك
المقدمة مع شاشة تشبه ما يلي:



تهانينا! لقد انتهيت للتو من الجزء الأصعب. تم تثبيت Ubuntu الآن ، وحان الوقت لتشغيل هذا الكمبيوتر
خادم الويب.
4. قم بتحديث خادمك الجديد
قبل أن نذهب إلى أبعد من ذلك ، نحتاج إلى التأكد من تحديث خادمك. للقيام بذلك ، تحتاج إلى تسجيل الدخول. أولاً ، اكتب اسم المستخدم الخاص بك
(الذي اخترته سابقًا) ، ثم اضغط على Enter ، ثم اكتب كلمة المرور الخاصة بك. أثناء كتابة كلمة المرور ، ستلاحظ عدم وجود شيء
لا بد أن يحدث. لا تقلق ، هذه هي الطريقة التي تم تصميمها للعمل. بعد الانتهاء من كتابة كلمة المرور الخاصة بك ، اضغط على Enter ،
ويجب أن تبدو شاشتك مشابهة للشاشة أدناه إذا سارت الأمور على ما يرام:



الآن ، اكتب:
1 |
sudo aptitude update && sudo aptitude dist-upgrade |
سوف يطلب منك كلمة المرور ، ومرة أخرى ، لن ترى أي شيء أثناء كتابته. بعد القيام بذلك ، سوف يسألك إذا
تريد المتابعة. اكتب "y" واضغط على Enter. ستبدو الشاشة مشابهة لما يلي:



سيقوم نظامك الآن بتنزيل كافة التحديثات الأخيرة وتثبيتها. سيستغرق هذا بعض الوقت حسب اتصال الإنترنت الخاص بك. بعد ما
ينتهى ، سوف تحتاج إلى إعادة تشغيل جهاز الكمبيوتر الخاص بك. للقيام بذلك ، اكتب:
1 |
sudo shutdown -r now |
ضع إعادة التشغيل. تم الآن تحديث الخادم الخاص بك بالكامل.
ملاحظة سريعة حول "sudo"
الآن ، قد تكون لاحظت أن جميع الأوامر التي كتبتها قد بدأت بـ "sudo". هذا لأنهم يحتاجون
امتيازات المسؤول ، وهذا ما يفعله "sudo". يقوم بتشغيل الأمر (أي "إيقاف التشغيل") كمسؤول ، مما يسمح له بالعمل
بصورة صحيحة. هذا هو السبب أيضا يطلب منك كلمة المرور الخاصة بك. ومع ذلك ، بعد كتابة "sudo" مرة واحدة وإدخال كلمة المرور الخاصة بك
ليس عليك إدخال كلمة المرور مرة أخرى لمدة خمس دقائق. ليست كل الأوامر تتطلب sudo ، فقط تلك التي تقوم بتعديل أجزاء من النظام.
حصلت على كل ذلك؟ جيد.
5. قم بتثبيت Apache و MySQL و PHP
لقد حان الوقت الآن لتثبيت بعض البرامج. للوصول إلى مواقعك من الإنترنت ، سنحتاج إلى تثبيت خادم ويب (Apache). إضافة إلى خادم الويب ، سنقوم بذلك,سنحتاج
أيضًا خادم قاعدة بيانات (MySQL) ولغة من جانب الخادم (PHP) حتى يمكننا تشغيل تطبيقات شائعة مثل WordPress. بعد ذلك
دعنا نذهب اليها!
تثبيت البرامج على أوبونتو يختلف كثيرا عن تثبيت البرامج على ويندوز أو
OS X ، في ذلك Ubuntu سيقوم بتنزيل وتثبيت البرامج لك بأمر بسيط. هذا لأن أوبونتو لديه شيء يسمى
مدير العمليات التجاريه، الذي يدير جميع البرامج تقريبًا على نظامك. كل ما علينا القيام به هو إخبار إدارة العمليات التجاريه
(تسمى "aptitude") التي نريدها أن تقوم بتثبيت Apache و MySQL و PHP. للقيام بذلك ، اكتب الأمر التالي:
1 |
sudo aptitude install apache2 php5-mysql libapache2-mod-php5 mysql-server |
واضغط على دخول. ستقوم Aptitude بتنزيل وتثبيت البرامج التي حددتها. كما سيتم تنزيل وتثبيت أي
تبعيات.



أثناء عملية التثبيت ، سيطلب منك MySQL كلمة مرور اساسيه. يمكنك تعيين هذا إلى أي شيء ، فقط تأكد من جعلها طويلة وآمنة.
مهما فعلت ، لا تترك هذا فارغًا.



بعد الانتهاء من كل ذلك ، لديك الآن خادم ويب يعمل بشكل كامل. لاختبار ذلك ، ابحث أولاً عن عنوان IP لخادمك عن طريق كتابة:
1 |
ifconfig | grep inet
|



عادة ما يكون أول رقم Ip معاد. في حالتي ، هو 192.168.177.129. الآن بعد أن عرفت IP ، افتح متصفح الويب الخاص بك
خادم IP الخاص بك. إذا رأيت رسالة "إنه يعمل!" ،تهانينا ، أنه يعمل.



ومع ذلك ، لم ننته بعد. لا نريد أن يقوم Apache أو PHP بالإفصاح عن أي معلومات عن أنفسهم ، لأن هذه المعلومات غير محتاجه
من قبل المستخدمين ويمكن أن تشكل مخاطر أمنية. أولاً ، قم بعمل نسخة احتياطية من ملف تكوين Apache الأصلي:
1 |
sudo cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf.bak
|
الآن افتح ملف التكوين:
1 |
sudo nano /etc/apache2/apache2.conf
|
قم بالتمرير لأسفل (سهم لأسفل) إلى حيث تقول "ServerTokens Full" وقم بتغييره ليصبح "ServerTokens Prod"



الآن ، قم بالتمرير لأسفل قليلاً وتغيير "ServerSignature On" إلى "ServerSignature Off"



وأخيرًا ، اضغط على Control-O متبوعًا بـ Control-X. سيؤدي ذلك إلى حفظ الملف والخروج من محرر النص.
الآن ، نحن بحاجة إلى أن نفعل نفس الشيء لـ PHP. أولاً ، قم بعمل نسخة احتياطية من ملف إعدادات PHP الأصلي:
1 |
sudo cp /etc/php5/apache2/php.ini /etc/php5/apache2/php.ini.bak
|
افتح ملف التكوين:
1 |
sudo nano /etc/php5/apache2/php.ini
|
تغيير "expose_php = On" إلى "expose_php = Off"



مرة أخرى ، اضغط على Control-O متبوعًا بـ Control-X. والآن بعد أن يتم تحديث ملفات التكوين ، أعد تشغيل Apache:
1 |
sudo /etc/init.d/apache2 restart
|
انتهيت من إعداد Apache و MySQL و PHP.
6. تثبيت جدار حماية
نحن الآن بصدد تأمين الخادم الخاص بنا أكثر قليلاً عن طريق تثبيت Shorewall ، جدار حماية صف أوامر. لتثبيته:
1 |
sudo aptitude install shorewall |
بشكل افتراضي ، يتم تثبيت Shorewall بدون قواعد ، مما يسمح للوصول بالكامل. ومع ذلك ، ليس هذا هو السلوك الذي نريده
بدلاً من ذلك ، سنقوم بحجب جميع الاتصالات إلى أي شيء آخر غير المنفذ 80 (HTTP) والمنفذ 22 (SSH). أولاً ، انسخ التكوين
الملفات إلى دليل Shorewall:
1 |
sudo cp /usr/share/doc/shorewall-common/examples/one-interface/* /etc/shorewall/ |
الآن ، افتح ملف "القواعد":
1 |
sudo nano /etc/shorewall/rules
|
أضف هذه السطور أعلى حيث تقول "#LAST LINE"
1 |
HTTP/ACCEPT net $FW |
2 |
SSH/ACCEPT net $FW |



ثم اضغط على Control-O و Control-X. يتم الآن تكوين جدار الحماية الخاص بك لقبول حركة مرور HTTP و SSH فقط. آخر شيء نحتاج إليه
هو قول Shorewall لبدء في التمهيد. لذلك، افتح ملف تهيئة Shorewall الرئيسي:
1 |
sudo nano /etc/shorewall/shorewall.conf
|
مرر لأسفل إلى "STARTUP_ENABLED = لا" واضبطه على "STARTUP_ENABLED = نعم"



اضغط على Control-O و Control-X. الآن ، افتح ملف التكوين الافتراضي Shorewall:
1 |
sudo nano /etc/default/shorewall
|
وتغيير "startup = 0" إلى "startup = 1". اضغط على Control-O و Control-X. أخيرًا ، ابدأ تشغيل جدار الحماية:
1 |
sudo /etc/init.d/shorewall start
|
تهانينا! تم الآن إعداد جدار الحماية الخاص بك وحماية الخادم الخاص بك.
7. إضافة موقع الويب الخاص بك إلى خادم الويب الخاص بك
الآن بعد الانتهاء من إعداد كل شيء ، قد ترغب في إضافة موقع ويب إليه. افتراضيًا ، يتم عرض جميع ملفات Apache
تصل إلى الإنترنت في "/ var / www /". ومع ذلك ، لا يمكنك الكتابة إلى هذا المجلد. دعونا نصنعه حتى تتمكن من:
1 |
sudo usermod -g www-data [YOUR USERNAME] |
2 |
sudo chown -R www-data:www-data /var/www |
3 |
sudo chmod -R 775 /var/www |
ما حدث هو أنك أضفت نفسك إلى مجموعة "www-data" ، وجعلت مجلد موقع الويب قابلًا لأعضاء "www-data"
مجموعة.
الآن ، ستقوم بتسجيل الدخول إلى خادمك باستخدام SFTP (يجب عدم الخلط بينه وبين FTPS). بعض العملاء الذين يدعمون SFTP هم:
WinSCP (Windows, Free), FileZilla (Windows, Linux, OS X, Free),
Cyberduck (OS X, Free), and, my personal favorite, Transmit
(OS X ، 30 دولارًا)
قم بالاتصال بخادمك باستخدام اسم المستخدم وكلمة المرور الخاصة بك ، وإذا كان العميل يدعمها ، فإن المسار الافتراضي هو "/ var / www" (إذا لم يكن كذلك ،
ببساطة تصفح إلى / var / www بمجرد تسجيل الدخول): (نقل الصورة)



يمكنك الآن إضافة ملفاتك إلى هذا المجلد (/ var / www) وستظهر على خادمك عندما تتصفحها مع
متصفح الإنترنت.
الآن ، قد تتساءل لماذا نستخدم SFTP بدلاً من FTP. أساسا ، لأن SFTP بنيت بالفعل في OpenSSH (التي قمت بتثبيتها
سابقا). ومع ذلك ، فهو أيضًا أكثر أمانًا من بروتوكول FTP ، ويجعل من الصعب (إن لم يكن مستحيلاً) الوصول إلى المستخدمين المتطفلين
الى بيانات اعتماد تسجيل الدخول الخاصة بك.
8. اجعل خادمك قابل للدخول إلى الإنترنت
معظم الشبكات المنزلية الحديثة وراء جهاز التوجيه في هذه الأيام. وبسبب هذا ، لن يكون خادم الويب الخاص بك مرئيًا للإنترنت بدونه
القليل من العمل. نظرًا لأنني لا أمتلك كل الموجهات المتاحة للاختبار ، يمكنني فقط إعطائك توجيهات عامة في هذا المجال.
هناك طريقتان لفتح الخادم الخاص بك إلى الإنترنت: DMZ أو Port Forwarding. الفرق الرئيسي الذي ستلاحظه هو أنه باستخدام DMZ ، يستخدم خادمك
جدار الحماية قمنا بتثبيت في وقت سابق لحماية نفسها. ومع ذلك ، مع "إعادة توجيه المنفذ" ، سيتم حماية الخادم الخاص بك بواسطة جدار الحماية الخاص بالموجه.
ومع ذلك ، قبل أن نمضي ، سترغب في إعطاء خادمك عنوان شبكة اتصال ثابتة. للقيام بذلك ، قم بتسجيل الدخول إلى جهاز التوجيه الخاص بك ، وابحث عن شيء ما
على طول خطوط "عناوين IP الثابتة" أو "التوجيه الثابت". بعد أن تعطي خادمك عنوان شبكة LAN ثابت ، يمكنك القيام بهذه الأجزاء التالية. تذكر،
جوجل هو صديقك.
الى port foward ، هناك موقع ويب ممتاز ، PortForward.com ، أنه ، بينما هو قبيح ، يستطيع
مساعدتك في إنجاز المهمة لأي جهاز توجيه تقريبًا. المنافذ التي تريد إعادة توجيهها هي 22 و 80.
لإنشاء DMZ ، تحتاج إلى تسجيل الدخول إلى جهاز التوجيه والبحث عن شيء مثل "إعدادات DMZ". بمجرد العثور عليه ، أضف خادمك إلى
dmz، وسيتم تعيينك. مرة أخرى ، تساعد Google في مواقف مثل هذه.
الآن ، ابحث عن IP الخاص بك ، و Voila! يمكنك الوصول إلى الخادم الخاص بك من أي مكان طويل
لأن عنوان IP الخاص بك لا يتغير.
9. إدارة الخادم الخاص بك عن بعد
بجانب السماح لك بتحميل الملفات ، يتيح لك OpenSSH تسجيل الدخول إلى خادمك من أي مكان طالما أنك تعرف أنه IP. لويندوز ، عليك
بحاجة إلى عميل SSH. أوصي putty. بالنسبة إلى OS X ، SSH هو
مثبت مسبقا. ببساطة فتح محطة ، واكتب "ssh you @ yourip". من أجل putty، اختر SSH ، وأدخل عنوان IP واسم المستخدم وكلمة المرور
عندما يطلب ذلك. ستلاحظ أنه بمجرد تسجيل الدخول ، سيبدو تمامًا مثل الشاشة على الخادم:



يمكنك القيام بأي شيء من هنا أنك ستفعل بالفعل في الخادم. للخروج من الخادم ، اكتب ببساطة "الخروج" واضغط على Enter.
10. هذا كل شيء!
لديك الآن خادم ويب يعمل بشكل كامل. فهي توفر أرضية اختبار رائعة ، وقد تكون مناسبة لاستضافة مواقع الويب ذات عدد الزيارات المنخفض إلى حد كبير. من الواضح أن هناك الكثير مما يمكن تعلمه ، ولكن نأمل أن تكون قد اكتسبت القليل من المعرفة حول كيفية عمل خوادم الويب.
اذا كنت ترغب في قراءة المزيد حول الموضوعات التي تمت تغطيتها ، فإليك بعض الأدلة الرائعة:
ايضا ، تأكد من التحقق من الآلاف من مخطوطات PHP مفيدة في سوق Envato. مع كل شيء بدءًا من النماذج وعربات التسوق وصولاً إلى تجريدات قواعد البيانات ، من المؤكد أن هناك شيئًا لمساعدتك في المرحلة التالية من عملك كمطور


