نحوه نصب بستر سبد خرید LiteCart در اوبونتو 16.04
LiteCart یک بستر سبد خرید آزاد و منبع باز است که به زبان های PHP ، jQuery و HTML 5 نوشته شده است. این نرم افزار ساده ، سبک و با کاربرد آسان است.
Meteor.js یک چارچوب متن باز ، JavaScript است که با Node.js در ذهن نوشته شده است. به دلیل دیدگاه خود در ساخت برنامه های وب در JavaScript خالص محبوب است. Meteor از پشتیبانی JavaScript جلویی که در مرورگر وب اجرا می شود ، و همچنین JavaScript با پشتیبان ، که روی سرور میزبان اجرا می شود ، استفاده می کند. این برنامه با چهارچوبهای جلویی JavaScript ، مانند React و Angular.js و همچنین MongoDB ، یک پایگاه داده محبوب NoSQL ، بسیار خوب ادغام می شود. چند دلیل مهم برای انتخاب Meteor.js به شرح زیر است:
Meteor.js یک چارچوب کامل پشته است. بنابراین با استفاده از آن ، همه چیزهایی را که می توانستید به آن نیاز داشته باشید بدست می آورید: بانک اطلاعاتی ، قسمت جلویی ، باطن. Meteor یک کار شگفت انگیز در پیوند دادن همه آنها با هم انجام می دهد.
سرعت. سیستم بسته بصری Meteor ابزارهای بسیاری را در اختیار شما قرار می دهد که شاید برای تکمیل برنامه خود نیاز داشته باشید.
این پشتیبانی خوب از گروه توسعه دهندگان Meteor ، و همچنین توسعه دهندگان دیگر که از آن استفاده می کنند. شما به راحتی قادر خواهید بود مشکلاتی را که پیدا کرده اید دریابید و آنها را به سرعت برطرف کنید.
در این آموزش اهداف زیر را در Ubuntu 16.04 محقق خواهیم کرد:
Node.js
زمان اجرا Javascript را نصب کنید .
نصب Meteor.js
.
MongoDB
پایگاه داده مورد نظر شهاب را نصب کنید .
Apache
پروکسی معکوس مورد نظر خود را نصب کنید و در صورت امکان دامنه خود را تنظیم کنید.
وب سایت ما را امتحان کنید.
وب سایت ما را برای تولید تنظیم کنید.
ابتدا باید Node.js را که مترجم جاوا اسکریپت و هسته Meteor است ، نصب کنید. این امکان را به ما می دهد تا شهاب و سایر برنامه های Node.js را که ممکن است در آینده داشته باشیم اجرا کنیم. در این شرایط ما Node.js 8. را نصب خواهیم کرد. برای شروع بارگیری ، به سادگی موارد زیر را در ترمینال خود اجرا کنید.
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
منتظر اتمام بارگیری و نصب باشید.
بعد ، ما پایگاه داده خود را نصب خواهیم کرد: MongoDB. MongoDB یک پایگاه داده اسناد NoSQL منبع باز و منبع آزاد است و پایگاه داده مورد نظر Meteor است. این یک قالب JSON مانند برای اسناد خود استفاده می کند ، برخلاف جداول ساختاری در یک پایگاه داده سنتی SQL.
کلید عمومی MongoDB را که توسط APT
(ترمینال پیشرفته بسته بندی) استفاده می شود وارد کنید. این به APT اجازه می دهد تا بسته را بررسی کند. در این حالت ، MongoDB.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
پرونده لیست لازم را برای اوبونتو 16.04 ایجاد کنید.
echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
نصب MongoDB را شروع کنید و صبر کنید تا نصب تمام شود.
sudo apt update && sudo apt install mongodb-org -y
سرویس systemd را برای ویرایش باز کنید.
sudo nano /etc/systemd/system/mongodb.service
برای تکمیل خدمات سیستم شده ، موارد زیر را کپی و چسباندن کنید.
[Unit]
Description=High-performance, schema-free document-oriented database
After=network.target
[Service]
User=mongodb
ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf
[Install]
WantedBy=multi-user.target
از " Control-O
" برای ذخیره و " Control-X
" برای خارج شدن استفاده کنید.
سرویس سیستمی MongoDB را با تایپ کردن sudo systemctl start mongodb
در ترمینال خود اجرا کنید.
برای تأیید صحت موفقیت آمیز ، موارد زیر را تایپ کنید.
sudo systemctl status mongodb
خواهید دید که این سرویس فعال است.
بعد ، آپاچی را نصب خواهیم کرد. Apache یک نرم افزار سرور وب منبع آزاد و آزاد است که به عنوان یک پروکسی معکوس نیز عمل می کند ، همان چیزی است که ما در این آموزش از آن استفاده خواهیم کرد. یک پراکسی معکوس برای اتصال برنامه Meteor.js ما به آن لازم است port 80
. Node.js برنامه های کاربردی را بدون دسترسی به ریشه در آن پورت مسدود می کند. آپاچی به root
صورت خودکار و همچنین به هم متصل می شود port 80
، بنابراین دیگر لازم نیست نگران این موضوع باشیم وقتی زمان اجرای وب سایت ما فرا رسید.
آپاچی را نصب کنید.
sudo apt update && sudo apt install apache2
برای اینکه امکان دسترسی به پورت های وب خارجی از جمله port 80
، ما باید دیوار آتش خود را برای آپاچی پیکربندی کنیم. ما این کار را از طریق UFW
(فایروال بدون عارضه) انجام می دهیم.
sudo ufw allow 'Apache Full'
این امکان دسترسی به Apache Full
نمایه "" را می دهد. این به ما ترافیک ورودی را می دهد port 80
، و این همان چیزی است که برنامه ما در حال اجرا خواهد بود.
اکنون چارچوب وب خود را نصب خواهیم کرد: Meteor.js. ما از یک اسکریپت ساده bash تهیه شده توسط تیم Meteor برای نصب آن استفاده خواهیم کرد.
curl https://install.meteor.com/ | sh
صبر کنید تا نصب تمام شود. اساساً آنچه اسکریپت انجام می دهد این است که شهاب را از وب سایت رسمی بارگیری می کند ، و آن را در سطح جهان نصب می کند ، بنابراین ما می توانیم از هر کجا استفاده کنیم. پس از اتمام ، می توانیم دایرکتوری برنامه خود را ایجاد کنیم. شهاب یک ابزار کوچک مفید برای ما دارد که می توانیم از آن استفاده کنیم meteor create
. برای ایجاد فهرست برنامه خود ، موارد زیر را تایپ کنید.
meteor create <projectname>
پوشه با نام مشخص شده ( <projectname>
) ایجاد می شود.
اکنون که دایرکتوری برنامه ما تنظیم شده است ، می توانیم پروکسی معکوس خود را تنظیم کنیم. آپاچی از ماژولی به نام استفاده می کند mod_proxy
، که پروکسی را برای آپاچی پیاده سازی می کند.
sudo apt-get install libapache2-mod-proxy-html libxml2-dev -y
با استفاده از این ماژول ، ماژول را نصب کرده و در اختیار Apache قرار می دهد.
در مرحله بعد ، ما نیاز به فعال کردن همه ماژول های لازم برای اجرای Apache داریم. ما این کار را با a2enmod
ابزاری انجام می دهیم که ماژول هایی را برای Apache فراهم می کند. این ماژولها به ما این امکان را می دهد تا از پروکسی معکوس استفاده کنیم. به سادگی این دستورات را در ترمینال خود تایپ کنید.
sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod proxy_ajp
sudo a2enmod rewrite
sudo a2enmod deflate
sudo a2enmod headers
sudo a2enmod proxy_balancer
sudo a2enmod proxy_connect
sudo a2enmod proxy_html
پس از آن ، ما باید از راه اندازی سایت پیش فرض آپاچی غیرفعال کنیم ، بنابراین می توانیم خودمان را راه اندازی کنیم. در غیر این صورت ، برنامه پیش فرض آپاچی بر ما غلبه خواهد کرد. برای غیرفعال کردن سایت پیش فرض ، موارد زیر را به سادگی اجرا کنید.
sudo a2dissite 000-default
اکنون پرونده میزبان مجازی خود را ایجاد خواهیم کرد. برای انجام این کار ، فقط یک ویرایشگر متن را باز کنید.
sudo nano /etc/apache2/sites-available/<projectname>
موارد زیر را کپی و جایگذاری کنید.
<VirtualHost *:80>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
ProxyPreserveHost On
# Servers to proxy the connection, or
# List of application servers Usage
ProxyPass / http://0.0.0.0:3000/
ServerName localhost
</VirtualHost>
VirtualHost *:80
: به Apache می گوید که به پورت 80 وصل شود ، همان چیزی است که ما برای برنامه وب خود می خواهیم.
ProxyPass
: آدرس IP سایتی که می خواهید به پروکسی معکوس ارسال کنید. این به احتمال زیاد IP VPS شما خواهد بود
ServerName
: نام سرور شما (معمولاً نام پیش فرض localhost
) است.
پس از تمام شدن تنظیمات لازم ، " Control-O
" برای ذخیره و " Control-X
" از آن برای خروج از سیستم استفاده شد.
برای آزمایش و اطمینان از اجرای وب سایت ، موارد زیر را در فهرست پروژه تایپ کنید.
meteor
خروجی زیر را نشان می دهد که سایت شما با موفقیت شروع شده است.
=> App running at: http://localhost:3000/
توجه داشته باشید که Meteor ، به طور پیش فرض گوش می کند port 3000
.
برای اینکه مطمئن شویم برنامه ما قادر به اجرای برنامه نیست ، از یک سرویس سیستمدل استفاده خواهیم کرد. این سرویس سیستم ، مشابه آنچه در بالا با MongoDB انجام دادیم ، اطمینان خواهد داد که وب سایت ما هر زمان که سیستم ما شروع به کار کند ، راه اندازی می شود و در حال اجراست. همچنین در صورت خراب شدن به هر دلیلی ، برنامه ما را مجدداً راه اندازی می کند. برای راه اندازی سرویس سیستم شده ما ، موارد زیر را در ترمینال خود تایپ کنید.
sudo nano /etc/systemd/system/<projectname>.service
در اینجا آنچه می خواهید پرونده شما به نظر برسد ، اینجاست.
[Service]
WorkingDirectory=/home/<yourusername>/<projectname>
ExecStart=/usr/local/bin/meteor --production
Restart=always
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=<projectName>
User=<yourusername>
Environment=NODE_ENV=production
Environment=PWD=/home/<yourusername>/<projectname>
Environment=PORT=3000
Environment=HTTP_FORWARDED_COUNT=1
توجه : فراموش نکنید projectname
که نام پروژه و yourusername
نام کاربری VPS را جایگزین کنید .
در اینجا چند خط اصلی برای یادآوری شما آورده شده است.
WorkingDirectory
: فهرست برنامه شما.
Restart
: آیا مجدداً راه اندازی مجدد برنامه آن به هر دلیلی متوقف می شود.
User
: نام کاربری شما.
Environment=PWD
: یکسان به WorkingDirectory
.
Environment=PORT
: پورتي كه برنامه شما در حال اجراست. پیش فرض است 3000
.
ذخیره کنید و فایل را ببندید.
اکنون سرویس را فعال و شروع می کنیم.
sudo systemctl enable <projectname>.service
<projectname>
نام پرونده خدمتی که ایجاد کردیم کجاست .
سپس خدمات را شروع می کنیم.
sudo systemctl start <projectname>.service
درخواست شما شروع می شود برای تأیید اینکه راه اندازی شده است ، فقط موارد زیر را اجرا کنید.
sudo systemctl status <projectname>
شما تأیید می کنید که این سرویس با موفقیت شروع شده است ، فعال است.
در مرحله بعد ، وب سایت خود را بررسی خواهیم کرد. در مرورگر وب مورد نظر خود ، به آدرس IP خود بروید.
http://your-server-ip/
صفحه نمونه شهاب را مشاهده خواهید کرد ، تصدیق می کند که همه کارها را به درستی انجام داده اید.
اکنون که برنامه خود را شروع کرده ایم ، باید آنرا مدیریت کنیم.
sudo systemctl restart <projectname>
sudo systemctl stop <projectname>
sudo systemctl status <projectname>
journalctl -u <projectname>
اکنون با موفقیت پیکربندی MongoDB ، Apache و Meteor را تنظیم کرده و یک وب سرور Meteor.js را برای تولید ایجاد کرده اید. حال بقیه به عهده شماست ، تا وب سایت خود را در قسمت جلویی و قسمت عقب طراحی کنید. شما می توانید به MongoDB دسترسی داشته باشید تا بتوانید داده های مورد نیاز خود را ذخیره کنید ، و Node.js که ماژول های متنوعی را از طریق Node Package Manager ( NPM
) برای تقویت بیشتر باطن شما ارائه می دهد. برای مستندات بیشتر ، به سایت Meteor مراجعه کنید ، جایی که می توانید نحوه سفارشی سازی وب سایت خود را به دلخواه خود بیاموزید. همچنین ، هنگام انجام عملیات پایگاه داده ، می توانید به مستندات MongoDB مراجعه کنید .
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 است. این برنامه یک رابط لعنتی مینیمالیستی و زیبا با نمای سلسله مراتب فهرست ارائه می دهد