مدیریت محتوای وب سایت بصورت ایستا

این یه تجربه پراکنده دیگه!

تا معمولا سر صحبت رو با یه کامپیوتری که با وب هم آشنایی داشته باشه، معمولا اولین پیشنهاد که اصلا هم پیشنهاد بدی نیست استفاده از سیستم‌های مدیریت پویای محتوا مثل وردپرس یا جوملا و .. میشه. همچنین تا بحث به محتوای استاتیک یا همون ایستا (صفحات HTML) میرسه، اونها به یاد تجربه‌های قدیمی خودشون با سایت‌های مختلف میفته و شدیدا راه شما رو برای استفاده از محتوای ایستا میزنن.

اما اخیرا من داشتم از سر کنجکاوی تو سایت کرنل لینوکس میگشتم که متوجه شدم تمام صفحات بصورت ایستا نوشته شده. تعجب کردم که چطور میشه جمعی از قوی‌ترین برنامه‌نویسای دنیا که روی پروژه خفنی مثل کرنل لینوکس هم کار میکنن از بشینن از صفحات ایستا استفاده میکنن و یکی یکی صفحات رو درست میکنن و با دردسر زیاد اونها رو سر هم میکنن. کنجاکاوی من رو واداشت تا بیشتر بررسی کنم و ببینم اونها نتها دردسرها محتوای ایستا رو ندارن بلکه یه سیستم خیلی جالب و قابل بررسی دارن که محتوا رو شما اضافه می‌کنید و اونها محتوای ایستای معادل رو براتون ایجاد میکنن. یعنی شما بجای اینکه از وردپرس بخواید که صفحات رو بصورت پویا ایجاد کنه، این سیستم بصورت ایستا تمامی صفحات لینکا و … رو آماده میکنه و خیلی هم قابل پیکربندی و انعطاف پذیر هست.

در اینجا من یکم در مورد مزایا و معایب این سیستم‌ها میگم و یه معرفی کوتاه سرنخ وار از این سیستم‌ها میدم و امیدوارم به درد کسی بخوره:

بزرگترین مزیت این سیستم اینه که صفحات ایستا به شدت با سرعت خوبی نشون داده شده و سربار اضافی روی سرور ندارن. از این مزیت که بگذریم یکی دیگه از بهترین نکات اینه که صفحات بصورت فایل‌هایی ذخیره میشن که می‌تونن ورژن گذاری بشن و نحوه تغییراتشون با استفاده از نرم‌افزارهای مانند GIT و Subversion و … ثبت بشن و تمامی نسخه‌هاشون در دسترس باشه.

اما بزرگترین ایرادشون هم اینه که کارهایی که نیاز به محاسبه زمان اجرا داره، مثل گذاشتن کامنت، یا پیاده‌سازی یک سایت خرید آنلاین و از این دست کارها رو نمیشه به راحتی و خوبی انجام داد. که معمولا این سیستم‌ها راه‌حل‌هایی برای حل برخی از این مشکلات دارن اما معمولا این راه‌حل‌ها وابسته به سرویس‌هایی هستن که سایت‌های دیگه ارائه میدن هست.

خب حالا نوبت به اسم این سیستم ها میرسه:

  • Jekyll/Octopress: یک سیستم نوشته شده با استفاده از زبان ruby که الان صفحات مربوط به پروژه های سایت گیت هاب با استفاده از این تکنولوژی تولید و نگهداری می‌شن. یکی از خوبی‌های این سیستم اینه که میشه کامنت‌ها رو بصورت ایستا مدیریت کرد.
  • Pelican: سیستمی است که تو سایت کرنل لینوکس مورد استفاده قرار گرفته و به زبان python نوشته شده. این سیستم امکانات بسیاری داره و طرفداران زیادی رو برای خودش جمع کرده.
  • Blosxom: یکی دیگه از این سیستم ها که به زبان Perl نوشته شده و یکی از خوبیاش اینه که همه جا قابل اجراست. یکی از ویژگی‌های خوب این سیستم قدرت زیاد برای نوشتن افزونه‌ها برای بهبود کارایی سیستم فعلی است.
  • Second Crack با استفاده از زبان PHP نوشته شده و جوری طراحی شده که صفحات با استفاده از dropbox قابل میزبانی باشه.
  • Blacksmith یکی از جدید ترین سیستم‌های موجود هست که با استفاده از Node.js استفاده کرده

منبع این نوشته اینجاست.

 

داشتن یا نداشتن وبسایت شخصی مساله این است؟

خب مساله داشتن وبلاگ و سایت و داشتن یه جایی که آدم بتونه کارهای متفاوتی بکنه (از نوشتن بلاگ، تا معرفی خودش و گذاشتن رزومش تا کارهای دیگه که ممکنه نیازمندش باشه) همیشه واسه من وجود داشته و داره.

همیشه سوالات متعددی واسه جواب دادن وجود داشته و داره که تصمیم گیری صریح و سریع در این مورد رو با مشکل مواجه میکرده در این حد که همین وبلاگ نصفه نیمه من خیلی دیرتر از اونی که من انتظار داشتم بوجود اومد و هنوز هم به اون کیفیتی که من دوست دارم نرسیده بخاطر همون سوالا. فعلا نمیخوام برم سراغ این سوالا اما یکی از مهترین سوالا نحوه مدیریت محتوای سایت هست. یعنی اینکه من چطور میخوام اطلاعات به راحت‌ترین و کاراترین شکلی ارائه بدم که دیگران بتونن ازش استفاده کنن و هدف من از ارائه این محتوا برآورده بشه.

بعد از مدتها کلنجار رفتن با این مورد میخوام نتایجی که خودم بهش رسیدم رو بگم شاید به درد کسی هم خورد. از نظر من در وحله اول از سیستم‌هایی که بزرگان (آدمهایی که تجربه کافی در حوزه وب دارن) یا همگان استفاده میکنن نقطه شروع خوبیه. یعنی اگه فلان آدم خفن (گیک) داره از وردپرس استفاده میکنه یا خیلی‌ها ازش استفاده میکنن پس واسه یک فرد مبتدی هم خوبه. اما اگه زیادی به این ماجرا فکر کرده باشید و زیاد عملیاتی کاری انجام نداده باشید همیشه انواع سوالات «اگه نشد و …» تو ذهنتون نقش میبنده که هنوز هم تو ذهن من نقش میبنده. که به نظر من قابل اغماضه.

همین!

پ.ن. این پست یه قسمت دوم هم داره که در مورد سیستم‌های مدیریت محتوا بصورت استاتیک صحبت می‌کنه. که دیدم کار داره به دراز میکشه و پست رو همینجا تموم کردم