نحوه نصب بستر سبد خرید LiteCart در اوبونتو 16.04
LiteCart یک بستر سبد خرید آزاد و منبع باز است که به زبان های PHP ، jQuery و HTML 5 نوشته شده است. این نرم افزار ساده ، سبک و با کاربرد آسان است.
Hubzilla یک بستر مبتنی بر وب منبع باز برای ایجاد وب سایتهای داخلی است. در اکوسیستم Hubzilla ، سروری که Hubzilla را اداره می کند "هاب" نامیده می شود و گروهی از هاب های متعدد "شبکه" نامیده می شوند. هاب های درون یک شبکه برای به اشتراک گذاشتن اطلاعاتی مانند هویت با یکدیگر ارتباط برقرار می کنند. هر کس می تواند مطالب را به صورت عمومی یا خصوصی با استفاده از "کانال" منتشر کند ، که می تواند یک شخص ، یک وبلاگ یا یک انجمن باشد. از یک چارچوب Zot مبتنی بر JSON برای پیاده سازی امن ارتباطات و خدمات غیر متمرکز استفاده می کند. Hubzilla مملو از امکاناتی همچون موضوعات بحث در شبکه های اجتماعی ، ذخیره سازی فایل های ابری ، تقویم و مخاطبین ، میزبانی وب صفحه با سیستم مدیریت محتوا ، ویکی و موارد دیگر می باشد.
برای این آموزش ، ما به hubzilla.example.com
عنوان نام دامنه که به سمت نمونه Vultr اشاره شده است ، استفاده خواهیم کرد. لطفاً حتماً تمام وقایع نام دامنه را با نمونه واقعی جایگزین کنید.
سیستم پایه خود را با استفاده از راهنمای نحوه به روزرسانی اوبونتو 16.04 به روز کنید . پس از به روزرسانی سیستم ، نصب وابستگی ها را انجام دهید.
Nginx یک وب سرور تولیدی است که برنامه های وب را اجرا می کند.
Nginx را نصب کنید.
sudo apt -y install nginx
Nginx را شروع کنید و آن را فعال کنید تا به طور خودکار در زمان بوت اجرا شود.
sudo systemctl start nginx
sudo systemctl enable nginx
Hubzilla از نسخه های PHP بالاتر از 5.6 پشتیبانی می کند. ما PHP 7.1 را برای اطمینان از حداکثر سرعت ، امنیت و سازگاری نصب خواهیم کرد. مخزن اوبونتو را برای PHP 7.1 اضافه کنید.
sudo add-apt-repository --yes ppa:ondrej/php
sudo apt update
نسخه PHP 7.1 را به همراه ماژول های مورد نیاز Hubzilla نصب کنید.
sudo apt -y install php7.1 php7.1-mysql php7.1-curl php7.1-json php7.1-cli php7.1-gd php7.1-xml php7.1-mbstring php7.1-fpm imagemagick php7.1-zip
پرونده پیکربندی PHP را ویرایش کنید.
sudo nano /etc/php/7.1/fpm/php.ini
خط زیر را پیدا کنید. آن را اظهارنظر کنید و منطقه زمانی مناسب را تنظیم کنید.
date.timezone = Asia/Kolkata
;Replace "Asia/Kolkata" with your appropriate time zone
یک مقدار حافظه مناسب را در تنظیمات بعدی تنظیم کنید. تنظیم آن به -1
حافظه نامحدود در دسترس به یک اسکریپت می دهد. همچنین ، حداکثر محدودیت بارگذاری پرونده را افزایش دهید.
memory_limit = -1
upload_max_filesize = 100M
post_max_size = 100M
بعد ، خط زیر را پیدا کنید و 0
بعد از عدم اظهار نظر ، مقدار آن را تنظیم کنید.
cgi.fix_pathinfo=0
آن را شروع کرده php7.1-fpm
و فعال کنید تا به طور خودکار در زمان بوت شروع شود.
sudo systemctl restart php7.1-fpm
sudo systemctl enable php7.1-fpm
دایرکتوری جلسه ایجاد کنید و مجوزهای نوشتن را ارائه دهید.
sudo mkdir /var/lib/php/session
sudo chmod -R 777 /var/lib/php/session
اکنون ، به نصب MariaDB بروید.
MariaDB یک چنگال از MySQL است. مخزن MariaDB را به سیستم خود اضافه کنید ، زیرا مخزن پیش فرض اوبونتو دارای نسخه قدیمی MariDB است.
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://mirror.nodesdirect.com/mariadb/repo/10.2/ubuntu xenial main'
sudo apt update
MariaDB را نصب کنید.
sudo apt -y install mariadb-server
در صورت درخواست یک رمزعبور قوی برای کاربر ریشه MariaDB تهیه کنید. MariaDB را شروع کنید و آن را فعال کنید تا به طور خودکار در زمان بوت شروع شود.
sudo systemctl start mariadb
sudo systemctl enable mariadb
قبل از پیکربندی پایگاه داده ، باید MariaDB را ایمن کنید. با اجرای mysql_secure_installation
اسکریپت می توانید آن را ایمن کنید .
sudo mysql_secure_installation
از شما گذرواژه اصلی rootDD MariaDB خواسته می شود. گذرواژه ای را که هنگام نصب تنظیم کرده اید ، تهیه کنید. از شما سؤال می شود که آیا می خواهید رمزعبور موجود کاربر اصلی سرور MariaDB خود را تغییر دهید. می توانید از یک گذرواژه جدید صرفنظر کنید ، زیرا قبلاً در هنگام نصب یک رمزعبور قوی ارائه داده اید. Y
به همه سؤالهای دیگر "" پاسخ دهید .
به عنوان root وارد پوسته MySQL شوید.
mysql -u root -p
رمز ورود را برای کاربر root MariaDB فراهم کنید تا وارد سیستم شود.
برای ایجاد یک بانک اطلاعاتی و کاربر پایگاه داده برای نصب Hubzilla سؤالات زیر را اجرا کنید.
CREATE DATABASE hubzilla_data;
CREATE USER 'hubzilla_user'@'localhost' IDENTIFIED BY 'StrongPassword';
GRANT ALL PRIVILEGES ON hubzilla_data.* TO 'hubzilla_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
می توانید نام hubzilla_data
و نام کاربری داده را hubzilla_user
مطابق انتخاب خود جایگزین کنید. لطفاً مطمئن شوید که StrongPassword
به یک رمزعبور بسیار قوی تغییر دهید .
Git را نصب کنید. Git برای کلون کردن مخزن Hubzilla از Github مورد نیاز است.
sudo apt -y install git
به فهرست دایرکتوری وب بروید و مخزن Hubzilla را کلون کنید.
cd /var/www
sudo git clone https://github.com/redmatrix/hubzilla.git hubzilla
برای ذخیره داده های Hubzilla یک فهرست جدید ایجاد کنید.
cd hubzilla
sudo mkdir -p "store/[data]/smarty3"
sudo chmod -R 777 store
افزونه های Hubzilla را کلون کرده و نصب کنید.
sudo util/add_addon_repo https://github.com/redmatrix/hubzilla-addons.git hzaddons
sudo util/update_addon_repo hzaddons
مالکیت دایرکتوری و پرونده ها را به کاربر Nginx ارائه دهید.
sudo chown -R www-data:www-data /var/www/hubzilla
مهم است که SSL را در سایت Hubzilla نصب کنید ، زیرا در صورت رمزگذاری ، ورود به سیستم و سایر داده ها به خطر می افتد. در این آموزش ، ما از گواهینامه های SSL به دست آمده توسط مرجع صدور گواهینامه رمزگذاری استفاده خواهیم کرد.
مخزن Certbot را اضافه کنید.
sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update
Certbot را نصب کنید ، که برنامه مشتری برای Let Encrypt CA است.
sudo apt -y install certbot
توجه: برای به دست آوردن گواهینامه ها از Let Encrypt CA ، دامنه تولید شده برای صدور گواهینامه ها باید به سمت سرور هدایت شود. در این صورت ، تغییرات لازم را در سوابق DNS دامنه ایجاد کرده و منتظر انتشار DNS قبل از درخواست مجوز مجدد باشید. Certbot قبل از ارائه گواهینامه ها ، دامنه را بررسی می کند.
صدور گواهینامه SSL را ایجاد کنید.
sudo certbot certonly --webroot -w /var/www/html -d hubzilla.example.com
گواهینامه های تولید شده احتمالاً در آنها ذخیره می شوند /etc/letsencrypt/live/hubzilla.example.com/
. گواهینامه SSL ذخیره می شود fullchain.pem
و کلید خصوصی نیز به عنوان ذخیره می شود privkey.pem
.
بیایید مجوزهای رمزگذاری در مدت 90 روز منقضی شوند ، از این رو توصیه می شود با استفاده از مشاغل Cron ، تمدید خودکار گواهینامه ها را تنظیم کنید.
پرونده کار cron را باز کنید.
sudo crontab -e
در انتهای پرونده خط زیر را اضافه کنید.
30 5 * * * /usr/bin/certbot renew --quiet
کار cron فوق هر روز در 5:30 دقیقه صبح انجام می شود. اگر گواهی برای انقضا موقت باشد ، به طور خودکار تمدید می شود.
یک فایل پیکربندی جدید برای Hubzilla Server ایجاد کنید.
sudo nano /etc/nginx/sites-available/hubzilla
پرونده را جمع کنید.
server {
listen 80;
server_name hubzilla.example.com;
index index.php;
root /var/www/hubzilla;
rewrite ^ https://hubzilla.example.com$request_uri? permanent;
}
server {
listen 443 ssl;
server_name hubzilla.example.com;
ssl on;
ssl_certificate /etc/letsencrypt/live/hubzilla.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/hubzilla.example.com/privkey.pem;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS;
ssl_prefer_server_ciphers on;
fastcgi_param HTTPS on;
index index.php;
charset utf-8;
root /var/www/hubzilla;
access_log /var/log/nginx/hubzilla.log;
client_max_body_size 20m;
client_body_buffer_size 128k;
location / {
if ($is_args != "") {
rewrite ^/(.*) /index.php?q=$uri&$args last;
}
rewrite ^/(.*) /index.php?q=$uri last;
}
location ^~ /.well-known/ {
allow all;
rewrite ^/(.*) /index.php?q=$uri&$args last;
}
location ~* \.(jpg|jpeg|gif|png|ico|css|js|htm|html|map|ttf|woff|woff2|svg)$ {
expires 30d;
try_files $uri /index.php?q=$uri&$args;
}
location ~* \.(tpl|md|tgz|log|out)$ {
deny all;
}
location ~* \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/run/php/php7.1-fpm.sock;
include fastcgi_params;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location ~ /\. {
deny all;
}
location ~ /store {
deny all;
}
}
پیکربندی را فعال کنید.
sudo ln -s /etc/nginx/sites-available/hubzilla /etc/nginx/sites-enabled/hubzilla
پیکربندی سرور وب Nginx را تست کنید.
sudo nginx -t
خروجی زیر را مشاهده خواهید کرد.
user@vultr:~$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
اگر خطایی در پیکربندی مشاهده نشد ، Nginx را مجدداً راه اندازی کنید تا پیکربندی جدید بتواند اثر بگذارد.
sudo systemctl restart nginx
به https://hubzilla.example.com
استفاده از مرورگر مورد علاقه خود بروید و صفحه وب رابط کاربری "بررسی سیستم" را مشاهده خواهید کرد. خواهید دید که هر موردی در بررسی سیستم عبور می کند. در رابط بعدی جزئیات بانک اطلاعاتی را که قبلاً ایجاد کرده اید ، تهیه کنید. بعد ، ایمیل سرپرست ، URL وب سایت و منطقه زمانی را تهیه کنید. Hubzilla اکنون روی سرور شما نصب شده است ، می توانید با استفاده از ایمیل سرپرستی که در حین نصب از آن استفاده کرده اید ، کاربر سرپرست خود را ایجاد کنید.
سرانجام ، شما نیاز به تنظیم cron برای انجام کارهای برنامه ریزی شده در هر ده دقیقه دارید.
یک پرونده جدید برای کار cron ایجاد کنید.
sudo nano /etc/cron.d/hubzilla
پرونده را با موارد زیر جمع کنید.
*/10 * * * * www-data cd /var/www/hubzilla; /usr/bin/php Zotlabs/Daemon/Master.php Cron
سرویس Cron را مجدداً راه اندازی کنید.
sudo systemctl restart cron
اگر می خواهید مجموعه ای از اسناد محلی را ایجاد کنید ، دستورات زیر را اجرا کنید.
cd /var/www/hubzilla
util/importdoc
sudo chown www-data:www-data -R /var/www/hubzilla
Hubzilla اکنون نصب و پیکربندی شده است ، می توانید دوستان خود را دعوت کرده و طبق دلخواه از این سکو استفاده کنید.
LiteCart یک بستر سبد خرید آزاد و منبع باز است که به زبان های PHP ، jQuery و HTML 5 نوشته شده است. این نرم افزار ساده ، سبک و با کاربرد آسان است.
با استفاده از یک سیستم متفاوت؟ Anchor CMS یک سیستم مدیریت محتوا (CMS) بسیار ساده و بسیار سبک ، بسیار آزاد و آزاد است.
NFS یک سیستم فایل مبتنی بر شبکه است که به رایانه ها اجازه می دهد تا از طریق شبکه رایانه ای به فایلها دسترسی پیدا کنند. این راهنما توضیح می دهد که چگونه می توانید پوشه ها را روی NF قرار دهید
هنگام راه اندازی سرور جدید لینوکس ، به روزرسانی سیستم های هسته و سایر بسته ها تا آخرین نسخه پایدار یک روش توصیه شده است. در این مقاله
با استفاده از یک سیستم متفاوت؟ Matomo (سابقا پیویک) یک بستر تحلیلی منبع باز است ، یک جایگزین باز برای Google Analytics. منبع Matomo میزبان o
TeamTalk یک سیستم کنفرانس است که به کاربران امکان می دهد مکالمات صوتی / تصویری با کیفیت بالا ، چت متنی ، انتقال فایل ها و صفحه های به اشتراک بگذارند. من
Vultr یک ویژگی را فراهم می کند که به شما امکان می دهد با ایجاد یک نمونه جدید ، کلیدهای SSH را از قبل نصب کنید. این اجازه می دهد تا به کاربر root دسترسی داشته باشید ، با این حال ، th
با استفاده از یک سیستم متفاوت؟ NodeBB یک نرم افزار انجمن مبتنی بر Node.js است. از سوکت های وب برای تعامل فوری و اعلامیه های زمان واقعی استفاده می کند. NodeB
ZNC یک پیشرانه پیشرفته شبکه IRC است که تمام وقت بهم متصل می شود تا مشتری IRC بتواند بدون از دست دادن جلسه گپ قطع یا وصل شود.
رنجر یک مدیر فایل مبتنی بر خط فرمان است که دارای کلیدهای اتصال VI است. این برنامه یک رابط لعنتی مینیمالیستی و زیبا با نمای سلسله مراتب فهرست ارائه می دهد