فروشگاه ساز ناپ کامرس - ناپ فارسی
شما هیچ موردی در سبد خرید خود ندارید

نصب روی لینوکس

این فصل نحوه نصب نرم‌افزار nopCommerce روی سیستم لینوکس با مثال Xubuntu 22.04 را توضیح می‌دهد:

فهرست مطالب

نصب و پیکربندی نرم‌افزار

.NET در مخزن بسته‌های بک‌پورت Ubuntu موجود است.

اضافه کردن مخزن .Net

یک ترمینال باز کنید و دستورات زیر را اجرا کنید:

sudo add-apt-repository ppa:dotnet/backports
نصب nopCommerce

نصب .NET Core Runtime

محصولات موجود برای نصب را به‌روزرسانی کنید، سپس runtime .NET را نصب کنید:

sudo apt-get update

sudo apt-get install -y aspnetcore-runtime-9.0

اگر خطایی دریافت کردید، اطلاعات بیشتر را در صفحه نصب .NET SDK یا .NET Runtime روی Ubuntu ببینید.

می‌توانید تمام runtime‌های نصب‌شده .Net Core را با دستور زیر مشاهده کنید:

dotnet --list-runtimes

نصب MySql Server

نسخه 8.0 سرور MySql را نصب کنید:

sudo apt-get install mysql-server-8.0
نصب nopCommerce

به‌طور پیش‌فرض، رمز عبور root خالی است؛ بیایید آن را تنظیم کنیم. دستور زیر را برای دسترسی به prompt MySQL اجرا کنید:

sudo mysql

دستور ALTER USER زیر را برای تغییر روش احراز هویت کاربر root به mysql_native_password اجرا کنید که از رمز عبور استفاده می‌کند. 'password' را با رمز عبور جدید مورد نظر خود جایگزین کنید و مطمئن شوید که نقل‌قول‌های تکی دور رمز عبور باقی بمانند:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

انتخاب یک رمز عبور قوی و منحصر به فرد برای کاربر root MySQL بسیار مهم است. یک رمز عبور قوی باید حداقل 12 کاراکتر طول داشته باشد، شامل ترکیبی از حروف بزرگ و کوچک، اعداد و کاراکترهای خاص باشد.

exit را تایپ کنید و Enter را بزنید تا از prompt MySQL خارج شوید.

نصب nopCommerce

اگر در تنظیم رمز عبور root روی سرور MySql خود مشکلی دارید، لطفاً مقالات زیر را بخوانید: نحوه بازنشانی رمز عبور Root و خطای MySQL: 'دسترسی برای کاربر 'root'@'localhost' رد شد'.

نصب nginx

بسته nginx را نصب کنید:

sudo apt-get install nginx
نصب nopCommerce

سرویس nginx را اجرا کنید:

sudo systemctl start nginx

و وضعیت آن را بررسی کنید:

sudo systemctl status nginx
نصب nopCommerce

برای پیکربندی nginx به عنوان یک پروکسی معکوس برای ارسال درخواست‌ها به برنامه ASP.NET Core خود، فایل /etc/nginx/sites-available/default را تغییر دهید. آن را در یک ویرایشگر متن باز کنید و محتویات آن را با موارد زیر جایگزین کنید:

# پیکربندی پیش‌فرض سرور
#
server {
    listen 80 default_server;
    listen [::]:80 default_server;

    server_name   nopCommerce.com;

    location / {
    proxy_pass         http://localhost:5000;
    proxy_http_version 1.1;
    proxy_set_header   Upgrade $http_upgrade;
    proxy_set_header   Connection keep-alive;
    proxy_set_header   Host $host;
    proxy_cache_bypass $http_upgrade;
    proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header   X-Forwarded-Proto $scheme;
    }

    # پیکربندی SSL
    #
    # listen 443 ssl default_server;
    # listen [::]:443 ssl default_server;
    #
    # توجه: باید gzip را برای ترافیک SSL غیرفعال کنید.
    # ببینید: https://bugs.debian.org/773332
    #
    # در مورد ssl_ciphers بخوانید تا یک پیکربندی ایمن داشته باشید.
    # ببینید: https://bugs.debian.org/765782
    #
    # گواهی‌های خودامضا تولید شده توسط بسته ssl-cert
    # از آن‌ها در یک سرور تولید استفاده نکنید!
    #
    # include snippets/snakeoil.conf;
}

دریافت nopCommerce

یک دایرکتوری ایجاد کنید:

sudo mkdir /var/www/nopCommerce

nopCommerce را دانلود و از حالت فشرده خارج کنید:

cd /var/www/nopCommerce

sudo wget https://github.com/nopSolutions/nopCommerce/releases/download/release-4.80.4/nopCommerce_4.80.4_NoSource_linux_x64.zip

sudo apt-get install unzip

sudo unzip nopCommerce_4.80.4_NoSource_linux_x64.zip

چند دایرکتوری برای اجرای nopCommerce ایجاد کنید:

sudo mkdir bin
sudo mkdir logs

مجوزهای فایل را تغییر دهید:

cd ..
sudo chgrp -R www-data nopCommerce/
sudo chown -R www-data nopCommerce/

ایجاد سرویس nopCommerce

فایل /etc/systemd/system/nopCommerce.service را با محتویات زیر ایجاد کنید:

[Unit]
Description=Example nopCommerce app running on Xubuntu

[Service]
WorkingDirectory=/var/www/nopCommerce
ExecStart=/usr/bin/dotnet /var/www/nopCommerce/Nop.Web.dll
Restart=always
# Restart service after 10 seconds if the dotnet service crashes:
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=nopCommerce-example
User=www-data
Environment=ASPNETCORE_ENVIRONMENT=Production
Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false

[Install]
WantedBy=multi-user.target

سرویس را شروع کنید:

sudo systemctl start nopCommerce.service

وضعیت سرویس nopCommerce را بررسی کنید:

sudo systemctl status nopCommerce.service
نصب nopCommerce

سرور nginx را مجدداً راه‌اندازی کنید:

sudo systemctl restart nginx

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

فرآیند نصب

فرآیند نصب بیشتر برای nopCommerce همانند فرآیند نصب روی ویندوز است؛ می‌توانید دستورالعمل را با دنبال کردن این لینک مشاهده کنید.

رفع مشکلات

Gdip

اگر در بارگذاری تصاویر در RichText Box مشکلی دارید (The type initializer for 'Gdip' threw an exception)، فقط کتابخانه libgdiplus را نصب کنید:

sudo apt-get install libgdiplus

SSL

اگر می‌خواهید از SSL در سایت خود استفاده کنید، فراموش نکنید که تنظیم UseProxy را در فایل appsettings.json روی true تنظیم کنید.

همچنین ببینید