{"id":18748,"date":"2024-12-16T11:32:57","date_gmt":"2024-12-16T11:32:57","guid":{"rendered":"https:\/\/cloudkul.com\/blog\/?p=18748"},"modified":"2024-12-24T12:06:08","modified_gmt":"2024-12-24T12:06:08","slug":"how-to-setup-unopim-using-nginx-server","status":"publish","type":"post","link":"https:\/\/cloudkul.com\/blog\/how-to-setup-unopim-using-nginx-server\/","title":{"rendered":"How to Setup UnoPim Using Nginx Server"},"content":{"rendered":"\n<p>UnoPim is a user-friendly,<a href=\"https:\/\/unopim.com\/\"> Open-source<\/a> <a href=\"https:\/\/webkul.com\/product-information-manager\/\">product information management<\/a> (PIM) solution designed to streamline both, the management and distribution of product data.<\/p>\n\n\n\n<p>Built on the Laravel framework, it helps businesses organize, update, and share product information across various platforms, enhancing operational efficiency and also customer satisfaction.<\/p>\n\n\n\n<p>In the previous blog, we discussed <a href=\"https:\/\/cloudkul.com\/blog\/unopim-installation-on-ubuntu-24-04\/\">UnoPim Installation on Ubuntu 24.04 using the Apache server.<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Prerequisites:<\/strong><\/h2>\n\n\n\n<p>Before proceeding with the installation, ensure your system meets the following requirements:<\/p>\n\n\n\n<ul>\n<li><strong>Ubuntu(Linux) Version<\/strong> \u2265 20.04<\/li>\n\n\n\n<li><strong>Minimum System Requirements<\/strong>:\n<ul>\n<li>RAM: 8 GB or higher<\/li>\n\n\n\n<li>CPU: 4 Cores<\/li>\n\n\n\n<li>Disk Space: 10 GB<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Required Software:<\/strong><\/h2>\n\n\n\n<ul>\n<li>Web-server: NGINX<\/li>\n\n\n\n<li>Database: MySQL 5.7 or higher, MariaDB 10.10 or higher,<\/li>\n\n\n\n<li>PHP: 8.2 or higher<\/li>\n\n\n\n<li>Composer: 2.2.0 or higher<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>UnoPim Installation Steps&nbsp;\u2013<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 1: Install the Nginx Web Server<\/strong><\/h3>\n\n\n\n<p>Start by updating your local package repository and also installing Nginx:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt update\n\nsudo apt-get install nginx -y\n\nsudo systemctl start nginx<\/pre>\n\n\n\n<p>Verify that Nginx is running:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo systemctl status nginx<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 2: Install MySQL and Create Database<\/strong><\/h3>\n\n\n\n<p><strong>For Local Database Server:<\/strong><\/p>\n\n\n\n<p>1. Install MySQL:   <\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt-get install mysql-server -y<\/pre>\n\n\n\n<p>2.&nbsp;Configure the MySQL root user and create the&nbsp;database:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo mysql\n\nALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';\n\nCREATE DATABASE unopim_db;\n\nCREATE USER 'unopim_user'@'localhost' IDENTIFIED WITH mysql_native_password BY 'unopim_password';\n\nGRANT ALL PRIVILEGES ON unopim_db.* TO 'unopim_user'@'localhost';\n\nFLUSH PRIVILEGES;\n\nexit<\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-09-17-11-17-1024x576-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-09-17-11-17-1024x576-1.png\" alt=\"Screenshot-from-2024-12-09-17-11-17-1024x576-1\" class=\"wp-image-18987\"\/><\/a><\/figure>\n\n\n\n<p><strong>For AWS RDS (if using a remote database):<\/strong><\/p>\n\n\n\n<p>There is a need to enable <code>log_bin_trust_creator<\/code> and set its value to 1 to allow database creation and dropping during the setup process.<\/p>\n\n\n\n<p>To enable log_bin_trust_creator on AWS RDS, modify the associated DB parameter group by setting the value to 1. <\/p>\n\n\n\n<p>Then, apply the parameter group to your RDS instance and reboot it. This allows CREATE and DROP operations when binary logging is enabled, useful for replication.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-24-13-53-02.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"270\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-24-13-53-02-1024x270.png\" alt=\"Screenshot-from-2024-12-24-13-53-02\" class=\"wp-image-19224\"\/><\/a><\/figure>\n\n\n\n<p>Connect to your RDS instance:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">mysql -u admin -p -h [RDS_endpoint]<\/pre>\n\n\n\n<p>Create the database and user for UnoPim:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">CREATE USER 'unopim_user'@'%' IDENTIFIED BY 'unopim_password';\n\nCREATE DATABASE unopim_db;\n\nGRANT ALL PRIVILEGES ON unopim_db.* TO 'unopim_user'@'%';\n\nFLUSH PRIVILEGES;\n\nexit<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 3: Install PHP and Required Extensions<\/strong><\/h3>\n\n\n\n<p>1. Install PHP 8.2 and the necessary extensions<\/p>\n\n\n\n<p>php8.2-cli php8.2-apcu php8.2-bcmath php8.2-curl php8.2-opcache php8.2-fpm php8.2-gd php8.2-intl php8.2-mysql php8.2-xml php8.2-zip php8.2-mbstring php8.2-imagick<\/p>\n\n\n\n<p>Also, Install Software Properties Common Package:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt install software-properties-common -y<\/pre>\n\n\n\n<p>2. Add PHP Repository (PPA: Ondrej PHP)<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo add-apt-repository ppa:ondrej\/php\n\nsudo apt-get update<\/pre>\n\n\n\n<p>3. Install PHP 8.2 and Essential Extensions<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt-get install php8.2-cli php8.2-apcu php8.2-bcmath php8.2-curl php8.2-opcache php8.2-fpm php8.2-gd php8.2-intl php8.2-mysql php8.2-xml php8.2-zip php8.2-mbstring php8.2-imagick<\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-09-17-14-28-1024x409-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"409\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-09-17-14-28-1024x409-1.png\" alt=\"Screenshot-from-2024-12-09-17-14-28-1024x409-1\" class=\"wp-image-18988\"\/><\/a><\/figure>\n\n\n\n<p>4. Adjust PHP settings in php.ini for PHP CLI and FPM:<\/p>\n\n\n\n<p>The memory_limit is set to 1024M (1GB) to allow more memory usage for PHP scripts run via the terminal, useful for resource-intensive tasks.<\/p>\n\n\n\n<p>The date.timezone is set to UTC to standardize the time zone globally, as a result, in avoiding local time zone issues.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#Update CLI PHP configuration.\n\nsudo sed -i 's\/^memory_limit = .*\/memory_limit = 1024M\/' \/etc\/php\/8.2\/cli\/php.ini\n\nsudo sed -i 's\/^date.timezone = .*\/date.timezone = UTC\/' \/etc\/php\/8.2\/cli\/php.ini<\/pre>\n\n\n\n<p>The memory_limit is set to 512M to limit memory usage for PHP scripts executed by the web server, as a result, balancing performance and resource usage.<\/p>\n\n\n\n<p>The date.timezone is also set to UTC to ensure consistency across applications and servers.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#Update FPM PHP configuration\n\nsudo sed -i 's\/^memory_limit = .*\/memory_limit = 512M\/' \/etc\/php\/8.2\/fpm\/php.ini\n\nsudo sed -i 's\/^date.timezone = .*\/date.timezone = UTC\/' \/etc\/php\/8.2\/fpm\/php.ini<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 4: Install Composer<\/strong><\/h3>\n\n\n\n<p>1. Install curl, wget, and other required utilities:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt-get install curl wget zip unzip net-tools -y<\/pre>\n\n\n\n<p> 2. Install Composer: <\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">php -r \"copy('https:\/\/getcomposer.org\/installer', 'composer-setup.php');\"\n\nphp -r \"if (hash_file('sha384', 'composer-setup.php') === 'dac665fdc30fdd8ec78b38b9800061b4150413ff2e3b6f88543c636f7cd84f6db9189d43a81e5503cda447da73c7e5b6') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;\"\n\nphp composer-setup.php --version=2.5.8\n\nphp -r \"unlink('composer-setup.php');\"\n\nsudo mv composer.phar \/usr\/local\/bin\/composer<\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-09-17-19-10-1024x143-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"143\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-09-17-19-10-1024x143-1.png\" alt=\"Screenshot-from-2024-12-09-17-19-10-1024x143-1\" class=\"wp-image-18990\"\/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 5: Creating User<\/strong><\/h3>\n\n\n\n<p>Create a new user:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo adduser unopim<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 6: Download and Configure UnoPim<\/strong><\/h3>\n\n\n\n<p>1.&nbsp;Download the UnoPim code: <\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">su unopim\n\ncd \/home\/unopim\/<\/pre>\n\n\n\n<p>Then, Create a New Project Using Composer (unopim\/unopim)<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">composer create-project unopim\/unopim\n\ncd unopim<\/pre>\n\n\n\n<p>2. Copy the .env file:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">cp .env.example .env<\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-09-17-27-36-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"950\" height=\"776\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-09-17-27-36-1.png\" alt=\"Screenshot-from-2024-12-09-17-27-36-1\" class=\"wp-image-18991\"\/><\/a><\/figure>\n\n\n\n<p>3. Edit .env and update the necessary values based on your database setup<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">APP_NAME=UnopimAPP_\nDEBUG=false\nAPP_URL=http:\/\/localhost\/\nDB_CONNECTION=mysql\nDB_HOST=localhost\nDB_PORT=3306\nDB_DATABASE=unopim_db\nDB_USERNAME=unopim_user\nDB_PASSWORD=unopim_password<\/pre>\n\n\n\n<p>Then, Save and exit the file.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">exit<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 7: Set Up Nginx Virtual Hosts and PHP conf<\/strong><\/h3>\n\n\n\n<p>1. Create a virtual host configuration:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">cd \/etc\/nginx\/sites-available\/\n\nsudo nano unopim.local.conf<\/pre>\n\n\n\n<p>2. Add the following configuration (adjust paths and domain\/IP as needed):<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">server {\n    listen 80;\n    server_name unopim.local;  # Replace with your domain or IP address\n    root \/home\/unopim\/unopim\/public;  # Document root for the website\n    index index.php;\n\n    # Log files (optional but useful for debugging)\n    access_log \/var\/log\/nginx\/log.access.log;\n    error_log \/var\/log\/nginx\/log.error.log;\n\n    # Handle PHP requests\n    location ~ \\.php$ {\n        include snippets\/fastcgi-php.conf;\n        fastcgi_pass unix:\/run\/php\/php8.2-fpm.sock;  # PHP 8.2 FPM socket\n        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;\n        include fastcgi_params;\n    }\n\n    # Handle static files (images, CSS, JavaScript)\n    location \/ {\n        try_files $uri $uri\/ \/index.php?$query_string;\n    }\n}\n<\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-10-18-35-44-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"856\" height=\"434\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-10-18-35-44-1.png\" alt=\"Screenshot-from-2024-12-10-18-35-44-1\" class=\"wp-image-18992\"\/><\/a><\/figure>\n\n\n\n<p>3. Now run these two commands to create a link in sites-enabled and remove the default nginx host file:<\/p>\n\n\n\n<p>To Create a Symbolic Link for Nginx Site Configuration<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo ln -s \/etc\/nginx\/sites-available\/unopim.local.conf \/etc\/nginx\/sites-enabled\/<\/pre>\n\n\n\n<p>Remove the default nginx host file<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo rm -f \/etc\/nginx\/sites-enabled\/default<\/pre>\n\n\n\n<p>4.&nbsp;Now add the unopim user in www-data group <\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo usermod -aG unopim www-data<\/pre>\n\n\n\n<p>5. Now user needs to define in php fpm as user, group, listen.owner, and listen.group<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo nano \/etc\/php\/8.2\/fpm\/pool.d\/www.conf<\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/imageedit_3_4495641125.gif\"><img loading=\"lazy\" decoding=\"async\" width=\"1380\" height=\"676\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/imageedit_3_4495641125.gif\" alt=\"imageedit_3_4495641125\" class=\"wp-image-19227\"\/><\/a><\/figure>\n\n\n\n<p>6. Now restart the server and php-fpm:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo systemctl restart php8.2-fpm<\/pre>\n\n\n\n<p>7. Test Nginx Configuration for Syntax Errors and Reload Nginx to Apply Configuration Changes<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo nginx -t\n\nsudo systemctl restart nginx<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 8: Complete UnoPim Installation<\/strong><\/h3>\n\n\n\n<p>1.&nbsp;Run the UnoPim installation:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">su unopim\n\ncd \/home\/unopim\/unopim\/\n\nchown -R unopim:unopim \/home\/unopim\/<\/pre>\n\n\n\n<p>Login MySQL as root and run this query<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">mysql -uroot -p\n\nSET GLOBAL log_bin_trust_function_creators = 1;\n\nexit<\/pre>\n\n\n\n<p><strong>Note:<\/strong> log_bin_trust_function_creators&nbsp;should only be enabled in development environments.<\/p>\n\n\n\n<p>However, For production systems, avoid using this setting unless necessary. You can set the log_bin_trust_function_creators&nbsp;value to be 0 after installation.<\/p>\n\n\n\n<p>SET GLOBAL log_bin_trust_function_creators = 0;<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">php artisan unopim:install<\/pre>\n\n\n\n<p>Follow the prompts for configuration, including setting up the application name, URL, currency, and admin credentials.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-09-18-46-01-1024x694-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"694\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-09-18-46-01-1024x694-1.png\" alt=\"Screenshot-from-2024-12-09-18-46-01-1024x694-1\" class=\"wp-image-18996\"\/><\/a><\/figure>\n\n\n\n<p>Set your admin Name, email, and password, and finish the installation.<\/p>\n\n\n\n<p><strong>For Example:<\/strong><br>Admin credentials are:<\/p>\n\n\n\n<p>ADMINISTRATOR_NAME=admin<br>ADMINISTRATOR_EMAIL=admin@example.com<br>ADMINISTRATOR_PASSWORD=admin@123<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-09-18-46-22-1024x521-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"521\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-09-18-46-22-1024x521-1.png\" alt=\"Screenshot-from-2024-12-09-18-46-22-1024x521-1\" class=\"wp-image-18998\"\/><\/a><\/figure>\n\n\n\n<p>Now exit the user <\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">exit<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 9: Access UnoPim<\/strong><\/h3>\n\n\n\n<p>Open a browser and navigate to the following URL:<\/p>\n\n\n\n<p>http:\/\/unopim.local\/ #Your domain if mapped with the server or IP comes here<\/p>\n\n\n\n<p>Log in with the email and password you set up.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-09-18-47-11-2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"840\" height=\"722\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-09-18-47-11-2.png\" alt=\"Screenshot-from-2024-12-09-18-47-11-2\" class=\"wp-image-19013\"\/><\/a><\/figure>\n\n\n\n<p><strong>Step 10: Install Supervisor<\/strong><\/p>\n\n\n\n<p>1.&nbsp;Update your package manager and install supervisor:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt update\n\nsudo apt install supervisor<\/pre>\n\n\n\n<p>2. Check the status of supervisor:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo systemctl status supervisor<\/pre>\n\n\n\n<p>3. Navigate to the Supervisor configuration directory:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">cd \/etc\/supervisor\/conf.d<\/pre>\n\n\n\n<p>4. Create a configuration file named unopim_queue_daemon.conf:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo nano \/etc\/supervisor\/conf.d\/unopim_queue_daemon.conf<\/pre>\n\n\n\n<p>5. Add the following content:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">[program:unopim-worker]\ncommand=\/path\/to\/php \/path\/to\/your\/unopim\/artisan queue:work\nautostart=true\nautorestart=true\nuser=my_user\nnumprocs=8\nprocess_name=%(program_name)s_%(process_num)02d\nstderr_logfile=\/var\/log\/unopim_worker.err.log\nstdout_logfile=\/var\/log\/unopim_worker.out.log\nstopasgroup=true<\/pre>\n\n\n\n<p><strong>Notes:<\/strong><\/p>\n\n\n\n<ul>\n<li>Replace \/path\/to\/php with the path to your PHP binary.<\/li>\n\n\n\n<li>Replace \/path\/to\/your\/unopim with the installation directory of UnoPIM.<\/li>\n\n\n\n<li>Replace my_user with the user that runs PHP-FPM (e.g., www-data).<\/li>\n<\/ul>\n\n\n\n<p>6. Apply Changes<\/p>\n\n\n\n<p>Run the following commands to apply the new Supervisor configuration:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo supervisorctl reread\n\nsudo supervisorctl update<\/pre>\n\n\n\n<p>7. Start the UnoPIM queue daemon workers:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo supervisorctl start all<\/pre>\n\n\n\n<p>8. Check whether it&#8217;s running or not using the command<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">tail -f \/var\/log\/supervisor\/supervisord.log<\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-11-13-58-21-1024x244-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"244\" src=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-11-13-58-21-1024x244-1.png\" alt=\"Screenshot-from-2024-12-11-13-58-21-1024x244-1\" class=\"wp-image-19000\"\/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Need Support?<\/h2>\n\n\n\n<p>Thank You for reading this Blog!<\/p>\n\n\n\n<p>For further more interesting blogs, keep in touch with us. If you need any kind of support, simply raise a ticket at&nbsp;<strong><a href=\"https:\/\/webkul.uvdesk.com\/en\/\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/webkul.uvdesk.com\/en\/<\/a>.<\/strong><\/p>\n\n\n\n<p><strong>For further help or queries, please&nbsp;<a href=\"https:\/\/cloudkul.com\/contact\/\" target=\"_blank\" rel=\"noreferrer noopener\">contact<\/a>&nbsp;us or raise a&nbsp;<a href=\"https:\/\/webkul.uvdesk.com\/en\/customer\/create-ticket\/\" target=\"_blank\" rel=\"noreferrer noopener\">ticket<\/a>.<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>UnoPim is a user-friendly, Open-source product information management (PIM) solution designed to streamline both, the <a class=\"text-primary\" title=\"read more\" href=\"https:\/\/cloudkul.com\/blog\/how-to-setup-unopim-using-nginx-server\/\">[&#8230;]<\/a><\/p>\n","protected":false},"author":51,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_mi_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":"[]"},"categories":[32,2,87],"tags":[16,568,66,583,877,897],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to Setup UnoPim Using Nginx Server - Cloudkul<\/title>\n<meta name=\"description\" content=\"UnoPim is a user-friendly, Open-source product information management (PIM) solution designed to streamline the management and distribution of product data.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/cloudkul.com\/blog\/how-to-setup-unopim-using-nginx-server\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Setup UnoPim Using Nginx Server - Cloudkul\" \/>\n<meta property=\"og:description\" content=\"UnoPim is a user-friendly, Open-source product information management (PIM) solution designed to streamline the management and distribution of product data.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cloudkul.com\/blog\/how-to-setup-unopim-using-nginx-server\/\" \/>\n<meta property=\"og:site_name\" content=\"Cloudkul\" \/>\n<meta property=\"article:published_time\" content=\"2024-12-16T11:32:57+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-12-24T12:06:08+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-09-17-11-17-1024x576-1.png\" \/>\n<meta name=\"author\" content=\"Anuj Mishra\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cloudkul.com\/blog\/how-to-setup-unopim-using-nginx-server\/\",\"url\":\"https:\/\/cloudkul.com\/blog\/how-to-setup-unopim-using-nginx-server\/\",\"name\":\"How to Setup UnoPim Using Nginx Server - Cloudkul\",\"isPartOf\":{\"@id\":\"https:\/\/cloudkul.com\/blog\/#website\"},\"datePublished\":\"2024-12-16T11:32:57+00:00\",\"dateModified\":\"2024-12-24T12:06:08+00:00\",\"author\":{\"@id\":\"https:\/\/cloudkul.com\/blog\/#\/schema\/person\/2307285643d6f14b83331c1018eddb25\"},\"description\":\"UnoPim is a user-friendly, Open-source product information management (PIM) solution designed to streamline the management and distribution of product data.\",\"breadcrumb\":{\"@id\":\"https:\/\/cloudkul.com\/blog\/how-to-setup-unopim-using-nginx-server\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cloudkul.com\/blog\/how-to-setup-unopim-using-nginx-server\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/cloudkul.com\/blog\/how-to-setup-unopim-using-nginx-server\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/cloudkul.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Setup UnoPim Using Nginx Server\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/cloudkul.com\/blog\/#website\",\"url\":\"https:\/\/cloudkul.com\/blog\/\",\"name\":\"Cloudkul\",\"description\":\"Host your eCommerce Store on AWS with Optimized Performance\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/cloudkul.com\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/cloudkul.com\/blog\/#\/schema\/person\/2307285643d6f14b83331c1018eddb25\",\"name\":\"Anuj Mishra\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudkul.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/d5ae7a81d61bab1268050e7c5a16bb82?s=96&d=https%3A%2F%2Fs.gravatar.com%2Favatar%2F6148c37469011bc2f8e491ca8f5de495%3Fs%3D80&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/d5ae7a81d61bab1268050e7c5a16bb82?s=96&d=https%3A%2F%2Fs.gravatar.com%2Favatar%2F6148c37469011bc2f8e491ca8f5de495%3Fs%3D80&r=g\",\"caption\":\"Anuj Mishra\"},\"url\":\"https:\/\/cloudkul.com\/blog\/author\/anuj-mishra5198\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to Setup UnoPim Using Nginx Server - Cloudkul","description":"UnoPim is a user-friendly, Open-source product information management (PIM) solution designed to streamline the management and distribution of product data.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/cloudkul.com\/blog\/how-to-setup-unopim-using-nginx-server\/","og_locale":"en_US","og_type":"article","og_title":"How to Setup UnoPim Using Nginx Server - Cloudkul","og_description":"UnoPim is a user-friendly, Open-source product information management (PIM) solution designed to streamline the management and distribution of product data.","og_url":"https:\/\/cloudkul.com\/blog\/how-to-setup-unopim-using-nginx-server\/","og_site_name":"Cloudkul","article_published_time":"2024-12-16T11:32:57+00:00","article_modified_time":"2024-12-24T12:06:08+00:00","og_image":[{"url":"https:\/\/cloudkul.com\/blog\/wp-content\/uploads\/2024\/12\/Screenshot-from-2024-12-09-17-11-17-1024x576-1.png"}],"author":"Anuj Mishra","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/cloudkul.com\/blog\/how-to-setup-unopim-using-nginx-server\/","url":"https:\/\/cloudkul.com\/blog\/how-to-setup-unopim-using-nginx-server\/","name":"How to Setup UnoPim Using Nginx Server - Cloudkul","isPartOf":{"@id":"https:\/\/cloudkul.com\/blog\/#website"},"datePublished":"2024-12-16T11:32:57+00:00","dateModified":"2024-12-24T12:06:08+00:00","author":{"@id":"https:\/\/cloudkul.com\/blog\/#\/schema\/person\/2307285643d6f14b83331c1018eddb25"},"description":"UnoPim is a user-friendly, Open-source product information management (PIM) solution designed to streamline the management and distribution of product data.","breadcrumb":{"@id":"https:\/\/cloudkul.com\/blog\/how-to-setup-unopim-using-nginx-server\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cloudkul.com\/blog\/how-to-setup-unopim-using-nginx-server\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/cloudkul.com\/blog\/how-to-setup-unopim-using-nginx-server\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/cloudkul.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to Setup UnoPim Using Nginx Server"}]},{"@type":"WebSite","@id":"https:\/\/cloudkul.com\/blog\/#website","url":"https:\/\/cloudkul.com\/blog\/","name":"Cloudkul","description":"Host your eCommerce Store on AWS with Optimized Performance","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cloudkul.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/cloudkul.com\/blog\/#\/schema\/person\/2307285643d6f14b83331c1018eddb25","name":"Anuj Mishra","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudkul.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/d5ae7a81d61bab1268050e7c5a16bb82?s=96&d=https%3A%2F%2Fs.gravatar.com%2Favatar%2F6148c37469011bc2f8e491ca8f5de495%3Fs%3D80&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d5ae7a81d61bab1268050e7c5a16bb82?s=96&d=https%3A%2F%2Fs.gravatar.com%2Favatar%2F6148c37469011bc2f8e491ca8f5de495%3Fs%3D80&r=g","caption":"Anuj Mishra"},"url":"https:\/\/cloudkul.com\/blog\/author\/anuj-mishra5198\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/posts\/18748"}],"collection":[{"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/users\/51"}],"replies":[{"embeddable":true,"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/comments?post=18748"}],"version-history":[{"count":158,"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/posts\/18748\/revisions"}],"predecessor-version":[{"id":19876,"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/posts\/18748\/revisions\/19876"}],"wp:attachment":[{"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/media?parent=18748"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/categories?post=18748"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloudkul.com\/blog\/wp-json\/wp\/v2\/tags?post=18748"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}