Введение
Если вы хотите установить PrestaShop на удаленный сервер, продолжайте читать, в противном случае, если вы хотите установить PrestaShop на свой локальный компьютер, пропустите первый абзац «Подключение к серверу» и прочитайте следующий.
Подключение к серверу
Чтобы получить доступ к серверу, вам нужно знать IP-адрес. Вам также потребуется пароль для аутентификации.
Чтобы подключиться к серверу как root, введите эту команду:
ssh root@IP_DEL_SERVER
Далее вам будет предложено ввести пароль пользователя root.
Если вы не используете пользователя root, вы можете войти под другим именем пользователя с помощью той же команды, а затем изменить первый параметр:
ssh VOSTRO_UTENTE@IP_DEL_SERVER
Затем вам будет предложено ввести пароль пользователя.
Теперь вы подключены к своему серверу, вы готовы начать установку PrestaShop.
Установка Nginx
Чтобы установить Nginx, откройте терминал и введите следующие команды:
sudo apt update
sudo apt install nginx
Если брандмауэр Ubuntu активен, вам необходимо включить трафик для Nginx:
sudo ufw allow 'Nginx HTTP'
На данный момент сервер готов с конфигурациями по умолчанию. Просто подключитесь к вашему общедоступному IP-адресу или локальному хосту:
http://indirizzo_ip
http://localhost
Чтобы перезапустить Nginx:
sudo service nginx restart
Чтобы остановить Nginx:
sudo service nginx stop
Чтобы запустить Nginx:
sudo service nginx start
Установить MySQL
Вы можете установить MySQL, используя официальный репозиторий Ubuntu с помощью apt. Установите MySQL:
sudo apt install mysql-server
Установить PHP
Чтобы установить PHP из терминала:
sudo apt install php-fpm php-mysql php-mbstring php-gettext php-zip php-curl php-intl php-gd
sudo phpenmod mbstring
Чтобы сделать установку PHP более безопасной, введите следующую команду:
sudo nano /etc/php/7.2/fpm/php.ini
Найдите эту строку ;cgi.fix_pathinfo, уберите точку с запятой ";" и вставьте нулевой параметр "0". Следовательно:
cgi.fix_pathinfo=0
Перезапустите PHP:
sudo systemctl restart php7.2-fpm
Настроить Nginx
Откройте следующий файл с FTP или терминала:
sudo nano /etc/nginx/sites-available/default
Мы можем удалить все содержимое файла, удерживая нажатой клавишу Ctrl + K, а затем вставить следующую конфигурацию:
server {
listen 80 default_server;
root /var/www/html;
index index.php index.html index.htm;
server_name localhost;
charset UTF-8;
location /{
try_files $uri//index.php?$args;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
fastcgi_index index.php;
include fastcgi.conf;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico|eot|otf|ttf|woff)$ {
add_header Access-Control-Allow-Origin *;
access_log off; log_not_found off; expires 30d;
}
location = /robots.txt { access_log off; log_not_found off; }
location ~ /\. { deny all; access_log off; log_not_found off; }
}
Закройте и сохраните файл.
Перезапустим Nginx
sudo service nginx restart
Установить PhpMyAdmin
Чтобы установить phpMyAdmin, введите эти простые команды из терминала:
sudo apt update
sudo apt install phpmyadmin
ВНИМАНИЕ На этапе установки phpMyAdmin вам будет предложено выбрать Apache2 или Lighttpd, установив Nginx, нам не нужно ничего выбирать, нажмите « ОК », чтобы продолжить.
На этом этапе для правильной настройки phpMyadmin требуется база данных dbconfig-common, затем выберите « ОК ».
Введите пароль администратора базы данных.
Подтвердите пароль
Создайте символическую ссылку phpMyAdmin для Nginx
sudo ln -s /usr/share/phpmyadmin//var/www/html/
Перезапустите Nginx:
sudo service nginx restart
Теперь можно войти в phpmyadmin с пользователем phpmyadmin и паролем, установленным на этапе установки.
Вместо этого PhpMyAdmin не сможет использовать учетные данные root.
Вы можете столкнуться со следующими ошибками:
#1698 - Access denied for user 'root'@'localhost'
mysqli_real_connect(): (HY000/1698): Access denied for user 'root'@'localhost'
Самое простое (и самое безопасное) решение — создать нового пользователя и предоставить ему необходимые права.
Изменить метод аутентификации
Начиная с версии MySQL 5.7, корневой пользователь MySQL по умолчанию настроен на аутентификацию через плагин auth_socket вместо пароля.
Чтобы использовать пароль для подключения к MySQL в качестве пользователя root, вам необходимо изменить метод аутентификации с auth_socket на mysql_native_password.
Поскольку пароль еще не установлен, вы можете подключиться к серверу MySQL, просто используя команду mysql или sudo mysql, если вы вошли в систему как обычный пользователь. Затем вам нужно будет использовать команду mysql -u root -p от имени пользователя root, в противном случае sudo mysql -u root -p от имени обычного пользователя.
Итак, если вы вошли в систему как root, введите в терминале:
mysql
В противном случае, если вы вошли в систему как обычный пользователь с привилегиями sudo:
sudo mysql
Чтобы проверить метод аутентификации, связанный с учетными записями mysql:
SELECT user,authentication_string,plugin,host FROM mysql.user;
Вы должны получить сообщение, подобное этому:
+------------------+-------------------------------------------+-----------------------+-----------+
| user | authentication_string | plugin | host |
+------------------+-------------------------------------------+-----------------------+-----------+
| root | | auth_socket | localhost |
| mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *5852386AB32C5DAD5DDA4F5FED911A70DA342656 | mysql_native_password | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+
4 rows in set (0.00 sec)
Как видите, метод аутентификации auth_socket установлен по умолчанию для пользователя root.
Чтобы использовать аутентификацию по паролю для учетной записи root, внесите следующие изменения:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'TUA_PASSWORD';
Осторожность:Your password does not satisfy the current policy requirements.
этот учебник
Обновите таблицы:
FLUSH PRIVILEGES;
Теперь вы можете проверить новый метод аутентификации, связанный с пользователем root:
SELECT user,authentication_string,plugin,host FROM mysql.user;
Вы должны получить сообщение, подобное этому:
+------------------+-------------------------------------------+-----------------------+-----------+
| user | authentication_string | plugin | host |
+------------------+-------------------------------------------+-----------------------+-----------+
| root | *E6A3377941E640ADEDCC8907E390B06B0C863862 | mysql_native_password | localhost |
| mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *5852386AB32C5DAD5DDA4F5FED911A70DA342656 | mysql_native_password | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+
4 rows in set (0.00 sec)
Выйдите из приглашения MySQL:
exit;
Чтобы снова войти на сервер MySQL теперь вам нужно будет ввести пароль, затем из терминала:
Если вы вошли в систему как root, введите в терминале:
mysql -u root -p
В противном случае, если вы вошли в систему как обычный пользователь с привилегиями sudo:
sudo mysql -u root -p
Таким образом, вы сможете получить доступ к PhpMyAdmin или другому подобному программному обеспечению с пользователем root.
Вариант 2. Добавьте привилегии root для пользователя phpmyadmin. Выполните следующие команды:
GRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit;
Теперь вы можете войти в систему с пользователем phpmyadmin и получить все привилегии пользователя root.
Вариант 3. Создайте нового пользователя Теперь вы можете подключиться к базе данных через PhpMyadmin, используя имя пользователя «phpmyadmin» и пароль, введенный на предыдущих шагах.
Как вариант, вы можете создать нового пользователя и назначить ему необходимые привилегии:
CREATE USER 'nuovo_utente'@'localhost' IDENTIFIED BY 'nuova_password';
Осторожность:Your password does not satisfy the current policy requirements.
этот учебник
Свяжите права управления с вновь созданным пользователем:
GRANT ALL PRIVILEGES ON *.* TO 'nuovo_utente'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit;
Теперь вы можете подключиться к вашему общедоступному IP-адресу или к локальному хосту, добавив /phpmyadmin в конец адреса.
http://vostro_dominio/phpmyadmin
http://localhost/phpmyadmin
Установить PrestaShop
Выполните следующие команды терминала, войдите в папку /var/www/html/:
cd /var/www/html/
Скачайте PrestaShop, на данный момент последняя версия 1.7.5.1:
sudo wget https://download.prestashop.com/download/releases/prestashop_1.7.5.1.zip
Установите Zip и Unzip для управления архивами .zip:
sudo apt-get install zip unzip
Извлечь PrestaShop:
sudo unzip prestashop_1.7.5.1.zip
Распакуйте архив prestashop.zip:
sudo unzip prestashop.zip
При необходимости перезапишите файл index.php. Затем нажмите y и затем введите (клавиша ввода на клавиатуре). Изменить разрешения:
sudo chown -R www-data:www-data /var/www/
На этом этапе нам нужно создать базу данных для PrestaShop. Чтобы войти в phpMyAdmin, введите в браузере:
http://indirizzo_ip/phpmyadmin
Если установка производилась локально на ваш компьютер, напишите:
http://localhost/phpmyadmin
В левой колонке нажмите «Создать», введите имя базы данных и затем «Создать».
Подключиться к вашему доменному имени:
http://esempio.com
Если установка производилась локально на ваш компьютер, напишите:
http://localhost/
Теперь вы можете начать установку PrestaShop, введя необходимые данные, такие как адрес базы данных, как правило, «localhost», имя пользователя и пароль базы данных, имя сайта, имя пользователя и пароль, которые вы будете использовать для пользователя-администратора PrestaShop.