In diesem Tutorial erklären wir, wie man OpenCart 2 auf einem Ubuntu 14.04 VPS mit MariaDB, PHP-FPM und Nginx installiert. OpenCart ist eine Open-Source-, funktionsreiche, einfach zu bedienende und suchmaschinenfreundliche PHP-basierte E-Commerce-Lösung. Diese Anleitung sollte auch auf anderen Linux-VPS-Systemen funktionieren, wurde aber für Ubuntu 14.04 VPS getestet und geschrieben.
Melden Sie sich über SSH bei Ihrem VPS an
ssh your_user@myVPS
Aktualisieren Sie das System und installieren Sie die erforderlichen Pakete
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
Installieren Sie 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
Führen Sie nach Abschluss der Installation den folgenden Befehl aus, um Ihre Installation zu sichern:
mysql_secure_installation
Als nächstes müssen wir eine Datenbank für unsere OpenCart-Installation erstellen.
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
OpenCart 2 herunterladen und extrahieren
Erstellen Sie ein Stammverzeichnis für Ihre Website und extrahieren Sie die OpenCart 2-Zip-Datei
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
Installieren und konfigurieren Sie PHP und Nginx
Die Installation von PHP und Nginx ist ziemlich einfach, führen Sie einfach den folgenden Befehl aus:
user@myVPS:~# sudo apt-get install nginx php5-fpm php5-cli php5-mcrypt php5-gd php5-mysqlnd php5-curl user@myVPS:~# sudo php5enmod mcrypt
Erstellen Sie einen neuen PHP-FPM-Pool für Ihren Benutzer:
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 = /
Vergessen Sie nicht, your_user durch Ihren Benutzernamen zu ersetzen.
Starten Sie PHP-FPM neu
user@myVPS:~# sudo service php5-fpm restart
SSL-Zertifikat generieren:
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
Erstellen Sie als Nächstes einen neuen Nginx-Serverblock:
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; } }
Vergessen Sie nicht, your_user durch Ihren Benutzernamen zu ersetzen.
Aktivieren Sie den Serverblock, indem Sie einen symbolischen Link erstellen und Nginx neu starten:
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
Installieren Sie OpenCart 2
Leere Konfigurationsdateien erstellen:
user@myVPS:~# cd ~/your_shop.com user@myVPS:~# touch {admin,.}/config.php
Öffnen Sie Ihren Browser, geben Sie die Adresse ein und folgen Sie dem Installationsassistenten. Während des Installationsvorgangs werden Sie aufgefordert, die MySQL-Datenbank, den Benutzernamen und das Passwort anzugeben (geben Sie die MySQL-Datenbank, den Benutzernamen und das Passwort ein, die Sie im vorherigen Schritt erstellt haben).
SSL aktivieren
Nachdem die Installation abgeschlossen ist, um SSL zu aktivieren, melden Sie sich beim Admin-Dashboard an und gehen Sie zu System -> Settings -> Server Tab and select Use SSL
und klicken Sie auf Speichern. Sie müssen außerdem die folgende Änderung in der Datei config.php vornehmen.
user@myVPS:~# vim ~/your_shop.com/config.php
Ändern Sie define('HTTPS_SERVER', 'http://your_shop.com/');
to define('HTTPS_SERVER', 'https://your_shop.com/');
Das ist es. Sie haben OpenCart 2 erfolgreich auf Ihrem Ubuntu VPS installiert. Weitere Informationen zu OpenCart 2 finden Sie auf der OpenCart-Website.
Natürlich müssen Sie nichts davon tun, wenn Sie einen unserer Linux-VPS-Hosting-Dienste nutzen. In diesem Fall können Sie einfach unsere erfahrenen Linux-Administratoren bitten, dies für Sie einzurichten. Sie sind rund um die Uhr erreichbar und kümmern sich umgehend um Ihr Anliegen.
PS . Wenn Ihnen dieser Beitrag gefallen hat, teilen Sie ihn bitte mit Ihren Freunden in den sozialen Netzwerken über die Schaltflächen auf der linken Seite oder hinterlassen Sie einfach unten eine Antwort. Danke.