امروزه لینوکس یکی از سیستم عاملهای محبوب است که در زمینههای زیادی کاربرد دارد. یکی از آنها سرورها هستند. بنابراین در این مطلب قصد داریم به سوال lamp چیست؟ پاسخ دهیم. پس تا انتها همراه ما باشید.
LAMP به چه چیزی گفته می شود ؟
LAMP گروهی از نرمافزارهای متن باز است که برای توسعه وب از آن استفاده میشود و از چهار لایه تشکیل شدهاند که عبارتند از: لینوکس به عنوان سیستم عامل، آپاچی در نقش وب سرور، از MySQL برای سیستم مدیریت دادههای بومی استفاده میکنند و PHP زبان برنامهنویسی اصلی است که گاهی Perl یا پایتون جای آن را میگیرند.
مزایای LAMP
- همانطور که اشاره شد LAMP از 4 لایه تشکیل شده است که در دسترس هستند و میتوان آنها را بهراحتی دانلود کرد. به همین علت کاربران زیادی تمایل دارند از lamp server استفاده کنند.
- پشته LAMP یا LAMP Stack یک پلتفرم امن است و میتوان از آن بهسادگی استفاده کرد.
- یکی از مزایای اصلی سرویس LAMP سفارشیسازی راحت آن است.
کاربرد Lamp و مولفههای آن
LAMP به شکل گسترده برای توسعه وب استفاده میشود. 4 لایه این پلتفرم متن باز را در زیر کاملتر توضیح میدهیم.
لینوکس
لینوکس سیستم عامل و ستون اصلی lamp server است و تمام اجزای دیگر سرویس LAMP براساس آن اجرا میشوند.
کاربران میتوانند بقیه اجزا را روی سیستم عاملهای مختلف مانند ویندوز یا macOS نیز مدیریت کنند. لینوکس علاوه بر متن باز بودن، به علت انعطافپذیری، شخصیسازی و استفاده راحت از آن، به بهترین و محبوبترین ابزار در توسعه وب تبدیل شده است. همچنین این لایه، زبان برنامهنویسی و دادهها را مدیریت میکند.
زبانهای برنامهنویسی PHP و MySQL برای لینوکس و SQL، ASP.NET برای ویندوزها مناسبتر هستند.
Apache
آپاچی وب سرور است و روی سیستم عامل لینوکس راهاندازی میشود. از این لایه بیشتر برای سرورها و وبسایتها استفاده میشود. نقش این لایه، پردازش اطلاعات از اینترنت با استفاده از HTTP است.
گزینه جایگزین برای آپاچی، NGINX است. سروری که از سال 2008 به بعد، بسیار محبوب شده است. گرچه بهطور کلی به کاربر بستگی دارد که از کدام سرور میخواهد استفاده کند.
NGINX بهترین انتخاب برای محتوای استاتیک است. اگر از آن برای محتوای پویا استفاده کنید، تفاوت بین این دو بارز خواهد بود. همچنین از آپاچی بیشتر برای هاست اشتراکی استفاده میشود در حالی که NGINX برای هاست اختصاصی کاربرد دارد.
MYSQL
SQL مخفف عبارت Structured Query Language و شایعترین زبان کوئری است. کوئری دادههای ذخیره شده در جدول دیتابیس یا درخواستی است که برای دریافت اطلاعات ثبت میکنیم.
MySQL به دلیل پشتیبانی از SQL، به عنوان یک دیتابیس مشهور شناخته شده است. با این پشتیبانی ساخت دیتابیسهای شرکتی و پویا راحتتر است. تحت شرایط زیر بهتر است از MySQL استفاده کنید.
- باید محتوای وبسایت خود را اغلب عوض کنید.
- محتوای تولید شده توسط کاربر زیادی دارید.
- بازخورد کاربر برایتان مهم است.
- محتوای زیادی دارید که باید ذخیره و بازیابی شوند.
سیستم مدیریت دیتابیس دیگری که میتواند قسمتی از سرویس LAMP باشد، MariaDB نام دارد. هر دو بسیار به یکدیگر شباهت دارند و MariaDB کاملا با MySQL سازگار است. همچنین به کاربران اجازه میدهد تا دیتابیس را بدون هیچ دردسر یا از دست دادن دادهها منتقل کنند. در نهایت مجددا کاربر تصمیم میگیرد که از کدام استفاده کند.
PHP
PHP یا Hypertext Preprocessor زبان برنامهنویسی است که وظیفه دارد تمام المانهای سرویس LAMP را ترکیب کند و به وبسایت یا اپلیکیشن اجازه دهد بهطور موثر راه اندازی شوند. بهطور خلاصه، هنگامی که کاربری صفحهای را باز میکند، سرور کدهای PHP را پردازش میکند و نتایج را برای مرورگر کاربر میفرستد.
PHP چهارمین لایه سرور است، زیرا بهخوبی با MySQL تعامل دارد. از این نوع زبان برنامه نویسی برای توسعه وب استفاده میشود، زیرا یک زبان پویا است تا کار با آن سریع و راحت باشد.
این ویژگی بهویژه اگر مبتدی هستید بسیار جذاب است. دلیل استفاده راحت از PHP جاسازی آن در HTML است.
در سرویس LAMP، حرف p میتواند به دو زبان برنامهنویسی Perl یا Python نیز اشاره کند. با وجود این، هر سه زبان برنامهنویسی مورد نظر ابزارهای ساده و با این حال مفید و پویا هستند که کاربر میتواند اپلیکیشنهای خود را با آنها توسعه دهد. امروزه زبانهای برنامهریزی زیادی مانند جاوا اسکریپت، روبی و تعداد بسیار دیگر وجود دارند که میتوانید از بین آنها نیز انتخاب کنید.
نحوه نصب یک سرور LAMP
با توجه به این که به سوال LAMP چیست؟ کامل توضیح دادیم، به نحوه نصب این سرویس میرسیم. قبل از نصب LAMP باید نکاتی را رعایت کرد. ابتدا باید مطمئن شد که سختافزار مورد نظر برای نصب و عملکردهای مختلف LAMP فضای کافی دارد.
در اصل سرویس LAMP به محاسبات با سطح عملکرد بالا نیازی ندارد. بلکه همه چیز به محتوای صفحات وبی بستگی دارد که بازدیدکنندگان از آن دیدن میکنند.
زمانی که ظرفیت سختافزار مشخص شد، قدم بعدی تعیین توزیع لینکوس است. رد هت، openSUSE، اوبونتو، دبیان یا CentOS هر کدام مزایای خاص خود را دارند که باید آنها را براساس هدف خود از نصب سرویس Lamp و همچنین سطح آگاهی خود از لینوکس انتخاب کنید.
زمانی که به این نکات توجه شد، میتوانیم سرویس و نصب سرویس LAMP را آغاز کنیم. در زیر مراحل نصب این سرور را بهطور مختصر آوردیم.
سیستم عامل درستی را انتخاب کنید
- براساس نیاز خود باید سیستم عامل درستی را انتخاب کنید. معمولا اوبونتو سیستم عامل LAMP است که میتوانید آن را رایگان تهیه کنید. سپس زبان مورد نظرتان را باید انتخاب کرده و نصب سرور را شروع کنید.
- چیدمان صفحه کلید، پیکربندی شبکه، نام هاست، منطقه زمانی و رمزهای عبور را انتخاب یا وارد کنید.
- سپس هارد دیسک را پیکربندی کنید.
- در مرحله آخر بعد از نصب سیستم عامل، سیستم را ریاستارت کنید و کد زیر را در خط فرمان وارد کنید:
sudo apt-get update
وب سرور را نصب کنید
اگر وب سرور آپاچی با موفقیت در مرحله نصب اوبونتو نصب نشده است، دستور زیر را اجرا کنید:
<pre class="wp-block-code"><code></code></pre>
- مطمئن باشید که Apache2 با توجه به دسترسی به صفحه لوکال هاست یا آی پی هاست نصب شده است. (منظور از عدد 2، جدیدترین نسخه آپاچی است.)
- میتوانید برای اجرای سریعتر سایت خود KeepAlive را فعال کنید، گرچه به مقدار قابل توجهی حافظه کاری نیاز دارد.
- ماژول MPM برای آپاچی بهترین ماژول است، در حالی که PHP از ماژول Prefork استفاده میکند.
- در مرحله بعد ماژول prefork را با فرمان زیر روشن کنید:
sudo a2dismod mpm_event
sudo a2enmod mpm_prefork
- در آخر سرور باید با این فرمان ریاستارت شود:
sudo service apache2 restart
دیتابیس را نصب کنید
سیستم مدیریت دیتابیس MySQL به عنوان یک سرور عمل میکند و اجازه میدهد چندین دیتابیس روی آن ایجاد شود. برای هر دیتابیس میتوانید جداول زیادی ایجاد کنید. در طول مرحله نصب دیتابیس، میتوانید برای MySQL رمز تعیین کنید.
با کمک فرمان زیر میتوانید MySQL را نصب کنید:
sudo apt-get install mysql-server
در طول مرحله نصب همچنین میتوانید با فرمان زیر برای کاربر روت MySQL پسورد تعیین کنید:
sudo mysql_secure_installation
در نهایت برای ایجاد یک دیتابیس باید از فرمان زیر استفاده کنید:
MySQL-u root-p
پس از آن با این فرمان دیتابیس از جمله با کاربران و حقوق دسترسی ساخته خواهد شد:
create database webdata; grant all on webdata.* to “some user” identified by “password”;
نصب زبان برنامهنویسی
PHP و PEAR در این مرحله به سرور LAMP اضافه میشوند. PEAR شامل ماژول و افزونههای باارزشی برای PHP است. برای نصب آن باید دستور زیر انجام شود:
sudo apt-get install php5 php-pear
نصب پشتیبانی MySQL از PHP5 باید در این مرحله با فرمان زیر انجام شود:
sudo apt-get install php5-mysql
زمانی که مراحل نصب تمام شد، فایل پیکربندی PHP باید تغییر داده شود. از آدرس /etc/php5/apache2/php.ini میتوانید به آن دسترسی داشته باشید. تغییر با انجام دستور زیر خواهد بود:
error_reporting = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR error_log = /var/log/php/error.log max_input_time = 30
در بین این مرحله، کاربر اطلاعات بیشتری در مورد خطاها دریافت میکند. ذخیرهسازی خطاها در فایل error.log امکانپذیر است. در مرحله بعد یک دایرکتوری گزارش باید برای PHP ساخته شود و به سرور آپاچی باید حقوق مالکیت داده شود.
sudo mkdir /var/log/php
sudo chown www-data /var/log/php
پس از بارگذاری مجدد آپاچی، نصب تمام سرویس LAMP باید با فرمان زیر کامل شود:
sudo service apache2 reload
در این مطلب توضیح دادیم که LAMP چیست و گفتیم چطور میتوانید یک lamp server نصب کنید. با این حال، همانطور که متوجه شدید راهاندازی چنین سروری به دانش فنی نیاز دارد و تیم متخصص دوریس میتواند در کنار متقاضیان استفاده از سرورهای لینوکس باشد که با توجه به مزیت خود روزبهروز بیشتر محبوب میشوند.