بلاگ

  • مواد لازم برای تینکر شدن!

    یک عدد آردوئینو! از هر نوعی… فقط رابط یو اس بی داشته باشه کافی ه!

    یک عدد سیم رابط یو اس بی مناسب با آردوئینوی تهیه شده!

    و دانلود آی‌دی‌ئی آردویینو!

    تامام!

    می‌خوای خیلی کارا کنی؟ یکی دوتا ماژول ماتریس ال‌ئی‌دی و یا یه بسته ال‌ئی‌دی ۴پین آرجی‌بی یا نهایت چندتا ال‌ئی‌دی معولی + یه سری سیم جامپر نر و ماده… و نهایت یه بردبورد… یه دنیا سرگرمی و خلاقیت برات به همراه می‌آره!

  • چگونه یک سایت وردپرس راه‌اندازی کنیم؟ مدلی که من دوست دارم.

    اینجا سرزمین منه! پس هرجوری دلم بخواد حکومت می‌کنم.

    ماکیاولی

    خوب اول باید یک سیستم گنو\لینوکس ترجیجا دبین نصب کنید و اون رو ایمن کنید و روی اون…
    – یک وب سرور انجین‌اکس که ترجیحا پروتوکل سرویس امن وب رو هم فعال کرده باشید
    – یک سکوول سرور ماریا‌-‌دی‌بی
    – پی‌اچ‌پی روش نصب کنید

    حالا بریم سراغ نصب وردپرس روی لمپ!

    مرحله ۱ – ایجاد پایگاه داده و کاربر برای وردپرس

    وردپرس برای ذخیره و مدیریت اطلاعات سایت و کاربر به یک پایگاه داده مبتنی بر MySQL نیاز دارد. ما در تنظیمات خود از MariaDB ، یک فورک انجمنی از پروژه اصلی MySQL توسط Oracle، استفاده می‌کنیم. MariaDB در حال حاضر سرور پایگاه داده پیش‌فرض سازگار با MySQL است که در مدیریت بسته مبتنی بر دبیان repossudo systemctl status php* | grep fpmitories موجود است.

    برای شروع، وارد حساب کاربری root (administrative) در MariaDB شوید. اگر MariaDB طوری پیکربندی شده باشد که auth_socketاز افزونه احراز هویت استفاده کند، که پیش‌فرض است، می‌توانید با استفاده از دستور زیر وارد حساب کاربری admin در MariaDB شوید sudo:

    sudo mariadb

    اگر روش احراز هویت را به استفاده از رمز عبور برای حساب کاربری root در MariaDB تغییر داده‌اید، از فرمت زیر استفاده کنید:

    mariadb -u root -p

    از شما خواسته می‌شود رمز عبوری را که برای حساب کاربری روت MariaDB تنظیم کرده‌اید، وارد کنید.

    ابتدا، می‌توانیم یک پایگاه داده جداگانه ایجاد کنیم که وردپرس بتواند آن را کنترل کند. می‌توانید این را هر نامی که دوست دارید بگذارید، اما ما wordpressدر این راهنما برای ساده نگه داشتن آن از این نام استفاده خواهیم کرد. می‌توانید با تایپ کردن دستور زیر، پایگاه داده را برای وردپرس ایجاد کنید:

    CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

    ر مرحله بعد، ما قصد داریم یک حساب کاربری MariaDB جداگانه ایجاد کنیم که منحصراً برای کار با پایگاه داده جدید خود از آن استفاده خواهیم کرد. ایجاد پایگاه‌های داده و حساب‌های تک‌کاربره از دیدگاه مدیریتی و امنیتی ایده خوبی است. ما wordpress_userدر این راهنما از این نام استفاده خواهیم کرد. در صورت تمایل می‌توانید آن را تغییر دهید.

    دستور زیر این حساب کاربری را ایجاد می‌کند، یک رمز عبور تنظیم می‌کند و به پایگاه داده‌ای که ایجاد کرده‌ایم دسترسی می‌دهد. به یاد داشته باشید که یک رمز عبور قوی برای کاربر پایگاه داده خود انتخاب کنید:

    GRANT ALL ON wordpress.* TO 'wordpress_user'@'localhost' IDENTIFIED BY 'password';

    اکنون شما یک پایگاه داده و یک حساب کاربری دارید که هر کدام به طور خاص برای وردپرس ساخته شده‌اند. ما باید امتیازات را پاک کنیم تا نمونه فعلی سرور پایگاه داده از تغییرات اخیر ما مطلع شود:

    FLUSH PRIVILEGES;

    با تایپ کردن دستور زیر از MariaDB خارج شوید:

    EXIT;

    جلسه MariaDB خاتمه می‌یابد و شما را به پوسته معمولی لینوکس بازمی‌گرداند.

    مرحله ۲ — نصب افزونه‌های اضافی PHP

    هنگام راه‌اندازی پشته LEMP، ما فقط به مجموعه‌ای بسیار کم از افزونه‌ها نیاز داشتیم تا PHP بتواند با MariaDB ارتباط برقرار کند. وردپرس و بسیاری از افزونه‌های آن از افزونه‌های اضافی PHP استفاده می‌کنند.

    ما می‌توانیم برخی از محبوب‌ترین افزونه‌های PHP را برای استفاده در وردپرس با تایپ کردن دستور زیر دانلود و نصب کنیم:

    sudo apt update
    sudo apt install php-curl php-gd php-intl php-mbstring php-soap php-xml php-xmlrpc php-zip

    هر افزونه وردپرس مجموعه الزامات خاص خود را دارد. برخی ممکن است نیاز به نصب بسته‌های PHP اضافی داشته باشند. برای اطلاع از الزامات PHP افزونه، مستندات آن را بررسی کنید.

    پس از اتمام نصب افزونه‌های جدید، باید فرآیند PHP-FPM را مجدداً راه‌اندازی کنید تا پردازنده PHP در حال اجرا بتواند از ویژگی‌های تازه نصب شده استفاده کند:

    sudo systemctl restart php7.3-fpm.service


    ممکن است لازم باشد بخش هایلایت شده دستور را با نسخه خاص PHP-FPM خود تنظیم کنید، زیرا این نسخه می‌تواند متفاوت باشد. برای تأیید نام دقیق سرویسی که باید در systemctlدستورات استفاده کنید، می‌توانید از دستور زیر استفاده کنید:

    sudo systemctl status php* | grep fpm.service


    خروجی مانند این را خواهید دید:

    Output
    ● php7.3-fpm.service - The PHP 7.3 FastCGI Process Manager
    Loaded: loaded (/lib/systemd/system/php7.3-fpm.service; enabled; vendor preset: enabled)
    CGroup: /system.slice/php7.3-fpm.service


    systemctlرشته‌ی هایلایت شده، نامی است که هنگام مدیریت سرویس PHP-FPM با دستورات باید از آن استفاده کنید .

    افزونه‌های PHP ما اکنون نصب شده‌اند. در بخش بعدی، Nginx را برای استفاده از PHP-FPM برای مدیریت صفحات PHP پیکربندی خواهیم کرد.

    مرحله ۳ – پیکربندی Nginx

    اکنون چند تنظیم جزئی در فایل‌های بلوک سرور Nginx خود انجام خواهیم داد. بر اساس آموزش‌های پیش‌نیاز، شما باید یک فایل پیکربندی برای سایت خود در /etc/nginx/sites-available/دایرکتوری داشته باشید که برای پاسخگویی به نام دامنه سرور شما پیکربندی شده و توسط یک گواهی TLS/SSL محافظت می‌شود. ما در اینجا به عنوان مثال استفاده خواهیم کرد، اما شما باید مسیر فایل پیکربندی خود را در صورت لزوم جایگزین کنید./etc/nginx/sites-available/your_domain

    علاوه بر این، ما از دایرکتوری ریشه (root directory) برای نصب وردپرس استفاده خواهیم کرد. شما باید از ریشه وب (web root) مشخص شده در پیکربندی خود استفاده کنید./var/www/your_domain

    نکته: ممکن است از /etc/nginx/sites-available/defaultپیکربندی پیش‌فرض (با /var/www/htmlنام ریشه وب) استفاده کنید. اگر قرار است فقط یک وب‌سایت روی این سرور میزبانی کنید، استفاده از این پیکربندی مناسب است. در غیر این صورت، بهتر است پیکربندی لازم را به بخش‌های منطقی تقسیم کنید، یک فایل برای هر سایت.

    sudoبرای شروع، فایل پیکربندی Nginx سایت خود را با امتیازات لازم باز کنید :

    sudo nano /etc/nginx/sites-available/your_domain

    ما باید چند locationدستورالعمل به بلوک اصلی خود اضافه کنیم server. پس از افزودن گواهینامه‌های SSL، پیکربندی شما ممکن است دو server بلوک داشته باشد. در این صورت، بلوکی را که شامل دستورالعمل‌های دیگر شما می‌شود پیدا کنید و تغییرات خود را در آنجا اعمال کنید.root /var/www/your_domainlocation

    با ایجاد بلوک‌های مکان دقیقاً منطبق برای درخواست‌های ارسالی به /favicon.icoو شروع کنید /robots.txt، که نمی‌خواهیم درخواست‌های مربوط به هر دو را ثبت کنیم.

    ما از یک مکان با عبارت منظم برای مطابقت با هرگونه درخواست برای فایل‌های استاتیک استفاده خواهیم کرد. ما دوباره ثبت وقایع این درخواست‌ها را غیرفعال می‌کنیم و آنها را به عنوان درخواست‌های با قابلیت ذخیره‌سازی بالا علامت‌گذاری می‌کنیم، زیرا این درخواست‌ها معمولاً منابع گران‌قیمتی برای ارائه هستند. می‌توانید این لیست فایل‌های استاتیک را طوری تنظیم کنید که شامل هر پسوند فایل دیگری که سایت شما ممکن است استفاده کند، باشد:

    /etc/nginx/sites-available/your_domain
    server {
    . . .
    location = /favicon.ico { log_not_found off; access_log off; }
    location = /robots.txt { log_not_found off; access_log off; allow all; }
    location ~* \.(css|gif|ico|jpeg|jpg|js|png)$ {
        expires max;
        log_not_found off;
    }
    . . .

    }
    درون location /بلوک موجود، باید try_filesلیست را طوری تنظیم کنیم که به جای بازگرداندن خطای ۴۰۴ به عنوان گزینه پیش‌فرض، کنترل به index.phpفایلی با آرگومان‌های درخواست منتقل شود.

    این باید چیزی شبیه به این باشد:

    /etc/nginx/sites-available/wordpress
    server {
    . . .
    location / {
    #try_files $uri $uri/ =404;
    try_files $uri $uri/ /index.php$is_args$args;
    }
    . . .
    }


    وقتی کارتان تمام شد، فایل را ذخیره کنید و ببندید.

    اکنون می‌توانیم با تایپ دستور زیر، پیکربندی خود را برای خطاهای نحوی بررسی کنیم:

    sudo nginx -t

    اگر هیچ خطایی گزارش نشد، Nginx را با تایپ دستور زیر مجدداً بارگذاری کنید:

    sudo systemctl reload nginx

    در مرحله بعد، خود وردپرس را دانلود و راه‌اندازی خواهیم کرد.


    مرحله ۴ – دانلود وردپرس


    اکنون که نرم‌افزار سرور ما پیکربندی شده است، می‌توانیم وردپرس را دانلود و راه‌اندازی کنیم. به دلایل امنیتی، همیشه توصیه می‌شود آخرین نسخه وردپرس را از سایت خودشان دریافت کنید.

    به یک دایرکتوری قابل نوشتن بروید و سپس با تایپ دستور زیر، نسخه فشرده شده را دانلود کنید:

    cd /tmp
    curl -LO https://wordpress.org/latest.tar.gz

    فایل فشرده را برای ایجاد ساختار دایرکتوری وردپرس استخراج کنید:

    tar xzvf latest.tar.gz

    ما این فایل‌ها را به زودی به ریشه سند خود منتقل خواهیم کرد. قبل از انجام این کار، می‌توانیم فایل پیکربندی نمونه را به نام فایلی که وردپرس در واقع می‌خواند، کپی کنیم:

    cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php

    حالا می‌توانیم کل محتویات دایرکتوری را در ریشه سند خود کپی کنیم. ما از این -aپرچم استفاده می‌کنیم تا مطمئن شویم که مجوزهای ما حفظ می‌شوند. ما از یک نقطه در انتهای دایرکتوری منبع خود استفاده می‌کنیم تا نشان دهیم که همه چیز در داخل دایرکتوری باید کپی شود، از جمله هر فایل مخفی:

    sudo cp -a /tmp/wordpress/. /var/www/your_domain

    حالا که فایل‌های ما سر جای خود قرار گرفتند، مالکیت آنها را به کاربر و گروه اختصاص می‌دهیم www-data. این کاربر و گروهی است که Nginx با آن اجرا می‌شود و Nginx برای ارائه خدمات به وب‌سایت و انجام به‌روزرسانی‌های خودکار، باید بتواند فایل‌های وردپرس را بخواند و بنویسد.

    sudo chown -R www-data:www-data /var/www/your_domain

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

    مرحله ۵ – تنظیم فایل پیکربندی وردپرس


    در مرحله بعد، باید چند تغییر در فایل پیکربندی اصلی وردپرس ایجاد کنیم.

    وقتی فایل را باز می‌کنیم، اولین کاری که باید انجام دهیم تنظیم کلیدهای مخفی برای تأمین امنیت نصب است. وردپرس یک مولد امن برای این مقادیر ارائه می‌دهد تا مجبور نباشید خودتان سعی کنید مقادیر خوبی پیدا کنید. این مقادیر فقط به صورت داخلی استفاده می‌شوند، بنابراین داشتن مقادیر پیچیده و امن در اینجا به قابلیت استفاده آسیبی نمی‌رساند.

    برای دریافت مقادیر امن از مولد کلید مخفی وردپرس، تایپ کنید:

    curl -s https://api.wordpress.org/secret-key/1.1/salt/

    شما مقادیر منحصر به فردی را دریافت خواهید کرد که چیزی شبیه به این هستند:

    output
    define('AUTH_KEY',         '1jl/vqf9 ... c_j{k<J@4H');
    define('SECURE_AUTH_KEY',  'E2N-h2]X ... {Ka(fgLi-3');
    define('LOGGED_IN_KEY',    'W(50,{WF ... 2;y&,2md88');
    define('NONCE_KEY',        'll,!4VM+ ... #DXF+[$d7g');
    define('AUTH_SALT',        'koMlG}kf ... 07VC*Lj#d-'); 
    define('SECURE_AUTH_SALT', 'p32*u:VY ... CF|0h{!_xY'); 
    define('LOGGED_IN_SALT',   'i^/G+t$3 ... t[Hi])-qS|'); 
    define('NONCE_SALT',       'Q6]Uh^q7 ... 1&xqHcdsaN');

    هشدار: مهم است که هر بار مقادیر منحصر به فردی را درخواست کنید. مقادیر نشان داده شده در زیر را کپی نکنید !

    اینها خطوط پیکربندی هستند که می‌توانیم مستقیماً در فایل پیکربندی خود برای تنظیم کلیدهای امن قرار دهیم. خروجی‌ای که اکنون دریافت کردید را کپی کنید.

    حالا، فایل پیکربندی وردپرس را باز کنید:

    nano /var/www/your_domain/wp-config.php

    بخشی را که شامل مقادیر ساختگی برای آن تنظیمات است پیدا کنید. چیزی شبیه به این خواهد بود:

    /var/www/wordpress/wp-config.php
    . . .
    define('AUTH_KEY',         'put your unique phrase here');
    define('SECURE_AUTH_KEY',  'put your unique phrase here');
    define('LOGGED_IN_KEY',    'put your unique phrase here');
    define('NONCE_KEY',        'put your unique phrase here');
    define('AUTH_SALT',        'put your unique phrase here');
    define('SECURE_AUTH_SALT', 'put your unique phrase here');
    define('LOGGED_IN_SALT',   'put your unique phrase here');
    define('NONCE_SALT',       'put your unique phrase here');
    . . .


    آن خطوط را حذف کنید و مقادیری را که از خط فرمان کپی کرده‌اید، جایگذاری کنید:

    /var/www/wordpress/wp-config.php
    . . .
    define('AUTH_KEY',         'مقادیر کپی شده از خط فرمان');
    define('SECURE_AUTH_KEY',  'مقادیر کپی شده از خط فرمان');
    define('LOGGED_IN_KEY',    'مقادیر کپی شده از خط فرمان');
    define('NONCE_KEY',        'مقادیر کپی شده از خط فرمان');
    define('AUTH_SALT',        'مقادیر کپی شده از خط فرمان');
    define('SECURE_AUTH_SALT', 'مقادیر کپی شده از خط فرمان');
    define('LOGGED_IN_SALT',   'مقادیر کپی شده از خط فرمان');
    define('NONCE_SALT',       'مقادیر کپی شده از خط فرمان');
    . . .

    در مرحله بعد، باید برخی از تنظیمات اتصال پایگاه داده را در ابتدای فایل تغییر دهیم. شما باید نام پایگاه داده، کاربر پایگاه داده و رمز عبور مرتبط را که در MariaDB پیکربندی کرده‌ایم، تنظیم کنید.

    تغییر دیگری که باید ایجاد کنیم، تنظیم روشی است که وردپرس باید برای نوشتن در سیستم فایل استفاده کند. از آنجایی که به وب سرور اجازه داده‌ایم در جایی که نیاز دارد بنویسد، می‌توانیم صریحاً روش سیستم فایل را روی «direct» تنظیم کنیم. عدم تنظیم این مورد با تنظیمات فعلی ما منجر به درخواست اعتبارنامه FTP توسط وردپرس هنگام انجام برخی اقدامات می‌شود. این تنظیم را می‌توان در زیر تنظیمات اتصال پایگاه داده یا هر جای دیگری در فایل اضافه کرد:

    /var/www/wordpress/wp-config.php
    . . .
    define('DB_NAME', 'wordpress');
    /** MySQL database username */
    define('DB_USER', 'wordpress_user');
    /** MySQL database password */
    define('DB_PASSWORD', 'password');
    . . .
    define('FS_METHOD', 'direct');

    وقتی کارتان تمام شد، فایل را ذخیره کنید و ببندید.

    مرحله ۶ – تکمیل نصب از طریق رابط وب


    اکنون که پیکربندی سرور کامل شده است، می‌توانیم نصب را از طریق رابط وب به پایان برسانیم.

    در مرورگر وب خود، به نام دامنه یا آدرس IP عمومی سرور خود بروید:

    http://server_domain_or_IP

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

    انتخاب زبان وردپرس

    در مرحله بعد، به صفحه اصلی تنظیمات خواهید رسید.

    یک نام برای سایت وردپرس خود انتخاب کنید و یک نام کاربری نیز انتخاب کنید (توصیه می‌شود برای اهداف امنیتی چیزی مانند «admin» انتخاب نکنید). یک رمز عبور قوی به طور خودکار ایجاد می‌شود. این رمز عبور را ذخیره کنید یا یک رمز عبور قوی دیگر انتخاب کنید.

    آدرس ایمیل خود را وارد کنید و انتخاب کنید که آیا می‌خواهید موتورهای جستجو را از ایندکس کردن سایت خود منصرف کنید یا خیر:

    نصب و راه اندازی وردپرس

    وقتی روی ادامه کلیک کنید، به صفحه‌ای هدایت می‌شوید که از شما می‌خواهد وارد سیستم شوید:

    راهنمای ورود به وردپرس

    پس از ورود به سیستم، به داشبورد مدیریت وردپرس هدایت خواهید شد:

    پنل مدیریت وردپرس

    از داشبورد، می‌توانید شروع به ایجاد تغییرات در قالب سایت و انتشار محتوا کنید.

    نتیجه‌گیری

    وردپرس باید نصب شده و آماده استفاده باشد! برخی از مراحل بعدی رایج، انتخاب تنظیمات پیوندهای یکتا برای پست‌های شما (که می‌توانید در آن پیدا کنید Settings > Permalinks) یا انتخاب یک قالب جدید (در آن Appearance > Themes) است. اگر این اولین بار است که از وردپرس استفاده می‌کنید، کمی رابط کاربری را بررسی کنید تا با CMS جدید خود آشنا شوید، یا راهنمای «اولین گام‌ها با وردپرس» را در مستندات رسمی آنها بررسی کنید.

  • سلام دنیا!

    بالاخره طلسم شکسته شد و من بالاخره سایت ۴سو رو برپا کردم.

    این پس رو برای این گذاشتم که هم طلسم تولید نکردن محتوا رو شکسته باشم. و هم به دیگران نشون بدم که از کی شروع کردم به نوشتن. و چجوری شروع به نوشتن کردم.

    چیا قراره توی ۴سو منتشر کنم؟
    همه چیز! از شیر مرغ گرفته تا جون آدمیزاد. شوخی کردم. موضوعاتی که الآن به ذهنم می‌رسه ممکن در آینده کمتر یا بیشتر بشن، اما برخی از چیزایی که به ذهنم می‌رسه اینایی هستند که در زیر براتون می‌نویسم.

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

    حالا ببینیم چطور پیش می‌ره!

    آرزوی موفقیت برای این وب‌سایت دارم!