GNU/Linux >> Tutoriales Linux >  >> Panels >> Panels

Instale OpenCart 2 en un Ubuntu 14.04 VPS con Nginx y PHP-FPM

En este tutorial, explicaremos cómo instalar OpenCart 2 en un VPS Ubuntu 14.04 con MariaDB, PHP-FPM y Nginx. OpenCart es una solución de comercio electrónico basada en PHP de código abierto, rica en funciones, fácil de usar y amigable con los motores de búsqueda. Esta guía también debería funcionar en otros sistemas Linux VPS, pero fue probada y escrita para Ubuntu 14.04 VPS.

Inicie sesión en su VPS a través de SSH

ssh your_user@myVPS

Actualice el sistema e instale los paquetes necesarios

user@myVPS:~# sudo apt-get update && sudo apt-get -y upgrade
user@myVPS:~# sudo apt-get install python-software-properties software-properties-common git curl openssl vim

Instalar MariaDB 10.0

user@myVPS:~# sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db
user@myVPS:~# sudo add-apt-repository 'deb http://mirror.pw/mariadb/repo/10.0/ubuntu trusty main'
user@myVPS:~# sudo apt-get install mariadb-server

Cuando se complete la instalación, ejecute el siguiente comando para asegurar su instalación:

mysql_secure_installation

A continuación, debemos crear una base de datos para nuestra instalación de OpenCart.

mysql -uroot -p
MariaDB [(none)]> CREATE DATABASE opencart;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON opencart.* TO 'opencartuser'@'localhost' IDENTIFIED BY 'opencartuser_passwd';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> \q

Descargar y extraer OpenCart 2

Cree un directorio raíz para su sitio web y extraiga el archivo zip de OpenCart 2

user@myVPS:~# mkdir -p ~/your_shop.com
user@myVPS:~# cd ~/your_shop.com
user@myVPS:~# wget https://github.com/opencart/opencart/archive/2.0.1.1.zip
user@myVPS:~# unzip 2.0.1.1.zip
user@myVPS:~# mv opencart-2.0.1.1/upload/* .
user@myVPS:~# rm -rf opencart-2.0.1.1 2.0.1.1.zip

Instalar y configurar PHP y Nginx

Instalar PHP y Nginx es bastante fácil, simplemente ejecuta el siguiente comando:

user@myVPS:~# sudo apt-get install nginx php5-fpm php5-cli php5-mcrypt php5-gd php5-mysqlnd php5-curl
user@myVPS:~# sudo php5enmod mcrypt

Cree un nuevo grupo de PHP-FPM para su usuario:

user@myVPS:~# sudo vim /etc/php5/fpm/pool.d/your_user.conf
[your_user]
user = your_user  
group = your_user  
listen = /var/run/php5-fpm-your_user.sock  
listen.owner = your_user
listen.group = your_user  
listen.mode = 0666  
pm = ondemand  
pm.max_children = 5  
pm.process_idle_timeout = 10s;  
pm.max_requests = 200  
chdir = /  

No olvides cambiar your_user con tu nombre de usuario.
Reiniciar PHP-FPM

user@myVPS:~# sudo service php5-fpm restart

Generar certificado SSL:

user@myVPS:~# sudo mkdir -p /etc/nginx/ssl
user@myVPS:~# cd /etc/nginx/ssl
user@myVPS:~# sudo openssl genrsa -des3 -passout pass:x -out opencart.pass.key 2048
user@myVPS:~# sudo openssl rsa -passin pass:x -in opencart.pass.key -out opencart.key
user@myVPS:~# sudo rm opencart.pass.key
user@myVPS:~# sudo openssl req -new -key opencart.key -out opencart.csr
user@myVPS:~# sudo openssl x509 -req -days 365 -in opencart.csr -signkey opencart.key -out opencart.crt

A continuación, cree un nuevo bloque de servidor Nginx:

user@myVPS:~# sudo vim /etc/nginx/sites-available/your_shop.com
server {
    listen      80;
    server_name www.your_shop.com;

    add_header Strict-Transport-Security max-age=2592000;
    return 301 http://your-shop.com$request_uri;
}

server {
    listen      80;
    server_name your_shop.com;

    root /home/your_user/your_shop.com;

    index index.html index.htm index.php;

    charset utf-8;

    access_log  /var/log/nginx/your_shop.com.access.log;
    error_log   /var/log/nginx/your_shop.com.error.log;

    rewrite /admin$ $scheme://$host$uri/ permanent;

    location / {
         try_files $uri @opencart;
    }

    location @opencart {
        rewrite ^/(.+)$ /index.php?_route_=$1 last;
    }


    location /admin {
        index index.php;
    }

    rewrite ^/sitemap.xml$ /index.php?route=feed/google_sitemap last;
    rewrite ^/googlebase.xml$ /index.php?route=feed/google_base last;
    rewrite ^/download/(.*) /index.php?route=error/not_found last;

    location = /favicon.ico { access_log off; log_not_found off; }
    location = /robots.txt  { access_log off; log_not_found off; }

    sendfile off;

    location ~ \.php$ {
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/var/run/php5-fpm-your_user.sock;
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_intercept_errors off;
        fastcgi_buffer_size 16k;
        fastcgi_buffers 4 16k;
    }

    location ~ /\.ht {
        deny all;
    }
}


server {
    listen 443 ssl spdy;
    server_name www.your_shop.com;

    ssl on;
    ssl_certificate     /etc/nginx/ssl/opencart.crt;
    ssl_certificate_key /etc/nginx/ssl/opencart.key;

    return 301 https://your-shop.com$request_uri;
}

server {
    listen      443 ssl spdy;
    server_name your_shop.com;

    ssl on;
    ssl_certificate     /etc/nginx/ssl/opencart.crt;
    ssl_certificate_key /etc/nginx/ssl/opencart.key;
    ssl_session_timeout 5m;

    ssl_ciphers               'AES128+EECDH:AES128+EDH:!aNULL';
    ssl_protocols              TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;

    root /home/your_user/your_shop.com;

    index index.html index.htm index.php;

    charset utf-8;

    access_log  /var/log/nginx/your_shop.com.ssl.access.log;
    error_log   /var/log/nginx/your_shop.com.ssl.error.log;

    rewrite /admin$ $scheme://$host$uri/ permanent;

    location / {
         try_files $uri @opencart;
    }

    location @opencart {
        rewrite ^/(.+)$ /index.php?_route_=$1 last;
    }


    location /admin {
        index index.php;
    }

    rewrite ^/sitemap.xml$ /index.php?route=feed/google_sitemap last;
    rewrite ^/googlebase.xml$ /index.php?route=feed/google_base last;
    rewrite ^/download/(.*) /index.php?route=error/not_found last;

    location = /favicon.ico { access_log off; log_not_found off; }
    location = /robots.txt  { access_log off; log_not_found off; }

    sendfile off;

    location ~ \.php$ {
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/var/run/php5-fpm-your_user.sock;
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_intercept_errors off;
        fastcgi_buffer_size 16k;
        fastcgi_buffers 4 16k;
    }

    location ~ /\.ht {
        deny all;
    }
}

No olvides cambiar your_user con tu nombre de usuario.

Active el bloqueo del servidor creando un enlace simbólico y reinicie Nginx:

user@myVPS:~# sudo ln -s /etc/nginx/sites-available/your_shop.com /etc/nginx/sites-enabled/your_shop.com
user@myVPS:~# sudo /etc/init.d/nginx restart

Instalar OpenCart 2

Crear archivos de configuración vacíos:

user@myVPS:~# cd ~/your_shop.com
user@myVPS:~# touch {admin,.}/config.php

Abra su navegador, escriba la dirección y siga el asistente de instalación. Durante el proceso de instalación, se le pedirá que proporcione la base de datos mysql, el nombre de usuario y la contraseña (ingrese la base de datos mysql, el nombre de usuario y la contraseña que creó en el paso anterior).

Habilitar SSL

Una vez completada la instalación para habilitar SSL, inicie sesión en el panel de administración y vaya a System -> Settings -> Server Tab and select Use SSL y haga clic en guardar. También debe realizar la siguiente modificación en el archivo config.php.

user@myVPS:~# vim ~/your_shop.com/config.php

Cambiar define('HTTPS_SERVER', 'http://your_shop.com/');
a define('HTTPS_SERVER', 'https://your_shop.com/');

Eso es todo. Has instalado con éxito OpenCart 2 en tu Ubuntu VPS. Para obtener más información sobre OpenCart 2, consulte el sitio web de OpenCart.

Por supuesto, no tiene que hacer nada de esto si utiliza uno de nuestros servicios de alojamiento VPS de Linux, en cuyo caso simplemente puede pedirle a nuestros administradores expertos de Linux que lo configuren por usted. Están disponibles las 24 horas del día, los 7 días de la semana y atenderán su solicitud de inmediato.

PD . Si te gustó esta publicación, compártela con tus amigos en las redes sociales usando los botones de la izquierda o simplemente deja una respuesta a continuación. Gracias.


Panels
  1. Instale Odoo (anteriormente OpenERP) con Nginx en un Ubuntu VPS

  2. Instale Fuel CMS en un Ubuntu 14.04 VPS con Nginx, PHP-FPM y MySQL

  3. Instale Concrete5 en un Ubuntu 14.04 VPS con Nginx, PHP-FPM y MySQL

  4. Cómo instalar EspoCRM con Nginx en un Ubuntu VPS

  5. Instale PHP 7.1 con Nginx en Ubuntu 16.04

Cómo instalar Drupal 8 con Nginx, PHP-FPM y SSL en Ubuntu 15.10

Cómo instalar OpenCart 2 con Nginx y SSL en Ubuntu 15.10

Cómo instalar Drupal 8.1 con Nginx, PHP-FPM y SSL en Ubuntu 16.04

Instale Prosper202 con Nginx, MySQL y PHP-FPM en Ubuntu

Instalar WordPress con Varnish y Nginx en Ubuntu

Instalar WordPress con Memcached y Nginx en Ubuntu