Содержание
Перенос сайта Opencart на php 7.1 • фриланс-работа для специалиста • категория Javascript ≡ Заказчик Александр Костенко
6 из 6
проект завершен
публикация
прием ставок
утверждение условий
резервирование
выполнение проекта
проект завершен
Добрый день!
Ищем опытного программиста для перехода на php 7.1.
Ранее пробовали перейти, но были проблемы: слетали стили сайта и переставал работать фильтр (mega filtr pro)
Так же, выдавала вот такую ошибку: PHP Fatal error: Switch statements may only contain one default clause in /home/admin/web/…….com.ua/public_html/vqmod/vqcache/vq2-system_storage_modification_catalog_controller_common_seo_pro.php on line 334
Отзыв заказчика о сотрудничестве с фрилансером
Перенос сайта Opencart на php 7.1
Качество
Профессионализм
Стоимость
Контактность
Сроки
Все отлично, программист всегда на связи
Ставки
8
Обсуждение
5
дата
онлайн
рейтинг
стоимость
время выполнения
3 дня2000 UAH
3 дня2000 UAH
Александр, добрый день, готов перенести Ваш Opencart на php 7. 1.
Есть опыт перехода на более новые версии php.фрилансер больше не работает на сервисе
1411
9 0
Пример работы:
3 дня2000 UAH
Денис К.
3 дня2000 UAH
Приветствую Вас Александр!
Можем выполнить задачу. Опыт на РНР 8+ лет.
Какая версия опенкарт у вас сейчас?Примеры работ на РНР:
https://dzencode.com/ru/php2 дня2000 UAH
2 дня2000 UAH
Да. в php 7.1 появились строгие ограничения в написании кода, из за чего он собственно и раотает в два раза бстрее.
Был уже от переноса не оного сайта на php7.1
Скайп ipserviceweb
тел 0980936318Обращайтесь!!!
фрилансер больше не работает на сервисе
10350
298 19
30 дней57 000 UAH
Василь Заболотний
30 дней57 000 UAH
Здравствуйте, я соглашусь с отзывами выше. Но если уж и хотите, то могу заняться
ставка скрыта фрилансером
2 дня1000 UAH
2 дня1000 UAH
Здравствуйте!
Готов помочь)
Опыт работы с OpenCart более 3х лет — верстка, модули, оптимизация.
«mega filtr pro» — здесь не причем)
3 года назад
102 просмотра
Transfer of Opencart to PHP 7.1 • freelance job for a specialist • category JavaScript ≡ Client Aleksandr Kostenko
6 of 6
project complete
publication
open for proposals
terms confirmation
payment reservation
work ongoing
project complete
The project was translated automatically.
Show original
The project shown in original language.
Translate
Good day !
We are looking for an experienced programmer to switch to PHP 7.1.
Previously tried to move, but there were problems: the style of the site landed and the filter ceased to work (mega filter pro)
PHP Fatal error: Switch statements may only contain one default clause in /home/admin/web/…..com.ua/public_html/vqmod/vq2-system_storage_modification_catalog_controller_common_seo_pro. php on line 334
Добрый день!
Ищем опытного программиста для перехода на php 7.1.
Ранее пробовали перейти, но были проблемы: слетали стили сайта и переставал работать фильтр (mega filtr pro)
Так же, выдавала вот такую ошибку: PHP Fatal error: Switch statements may only contain one default clause in /home/admin/web/…….com.ua/public_html/vqmod/vqcache/vq2-system_storage_modification_catalog_controller_common_seo_pro.php on line 334
Client’s feedback on cooperation with freelancer
Transfer of Opencart to PHP 7.1
Quality
Professionalism
Price
Availability
Terms
Все отлично, программист всегда на связи
Proposals
8
Discussion
5
date
online
rating
cost
time to complete
3 days2000 UAH
3 days2000 UAH
Александр, добрый день, готов перенести Ваш Opencart на php 7. 1.
Есть опыт перехода на более новые версии php.freelancer isn’t working in the service any longer
1411
9 0
Work samples:
3 days2000 UAH
Denis K.
3 days2000 UAH
Приветствую Вас Александр!
Можем выполнить задачу. Опыт на РНР 8+ лет.
Какая версия опенкарт у вас сейчас?Примеры работ на РНР:
https://dzencode.com/ru/php2 days2000 UAH
2 days2000 UAH
Да. в php 7.1 появились строгие ограничения в написании кода, из за чего он собственно и раотает в два раза бстрее.
Был уже от переноса не оного сайта на php7.1
Скайп ipserviceweb
тел 0980936318Обращайтесь!!!
freelancer isn’t working in the service any longer
10350
298 19
30 days57 000 UAH
Vasil Zabolotny
30 days57 000 UAH
Здравствуйте, я соглашусь с отзывами выше. Но если уж и хотите, то могу заняться
proposal concealed by freelancer
2 days1000 UAH
2 days1000 UAH
Здравствуйте!
Готов помочь)
Опыт работы с OpenCart более 3х лет — верстка, модули, оптимизация.
«mega filtr pro» — здесь не причем)
3 years ago
102 views
sudo add-apt-repository ppa:ondrej/php -y | |
sudo add-apt-repository ppa:certbot/certbot -y | |
sudo apt-get update && sudo apt-get -y upgrade && sudo apt-get autoremove -y | |
sudo apt-get install nginx python3-certbot-nginx mariadb-server php7.4-common php7.4-cli php7.4-fpm php7.4-opcache php7.4-gd php7.4-mysql php7.4-curl php7.4-intl php7.4-xsl php7.4-mbstring php7.4-zip php7.4-bcmath php7.4-soap разархивировать git -y | |
sudo update-alternatives —set php /usr/bin/php7. 4 | |
sudo sed -i ‘s/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/g’ /etc/php/7.4/fpm/php.ini | |
sudo sed -i ‘s/max_execution_time = 30/max_execution_time = 120/g’ /etc/php/7.4/fpm/php.ini | |
sudo sed -i ‘s/memory_limit = 128M/memory_limit = 512M/g’ /etc/php/7.4/fpm/php.ini | |
sudo sed -i ‘s/post_max_size = 8M/post_max_size = 1024M/g’ /etc/php/7.4/fpm/php.ini | |
sudo sed -i ‘s/upload_max_filesize = 2M/upload_max_filesize = 512M/g’ /etc/php/7.4/fpm/php.ini | |
sudo sed -i ‘s/max_input_time = 60/max_input_time = 120/g’ /etc/php/7.4/fpm/php. ini | |
sudo sed -i ‘s/max_input_vars = 1000/max_input_vars = 5000/g’ /etc/php/7.4/fpm/php.ini | |
sudo sed -i ‘s/short_open_tag = Off/short_open_tag = On/g’ /etc/php/7.4/fpm/php.ini | |
sudo sed -i ‘s/zlib.output_compression = Off/zlib.output_compression = On/g’ /etc/php/7.4/fpm/php.ini | |
sudo sed -i ‘s/;opcache.enable=1/opcache.enable=1/g’ /etc/php/7.4/fpm/php.ini | |
sudo sed -i ‘s/;opcache.save_comments=1/opcache.save_comments=1/g’ /etc/php/7.4/fpm/php.ini | |
sudo sed -i ‘s/;date.timezone.*/date.timezone = UTC/’ /etc/php/7.4/fpm/php.ini | |
судо mysql -у корень -р | |
ГЛОБАЛЬНАЯ УСТАНОВКА innodb_fast_shutdown = 0; | |
ОБНОВЛЕНИЕ mysql. user SET plugin = ‘mysql_native_password’ ГДЕ Пользователь = ‘root’; | |
ПОЛНЫЕ ПРИВИЛЕГИИ; | |
СОЗДАТЬ БАЗУ ДАННЫХ opencartdb; | |
СОЗДАТЬ ПОЛЬЗОВАТЕЛЯ ‘opencartuser’@’%’ ИДЕНТИФИКАЦИЯ ‘ПАРОЛЕМ’; | |
ПРЕДОСТАВИТЬ ВСЕ НА opencartdb.* ‘opencartuser’@’%’ ИДЕНТИФИКАЦИЯ ‘Паролем’; | |
ПОЛНЫЕ ПРИВИЛЕГИИ; | |
ВЫХОД; | |
компакт-диск /var/www/ | |
sudo wget https://github.com/opencart/opencart/releases/download/3. 0.3.6/opencart-3.0.3.6.zip | |
sudo unzip opencart-3.0.3.6.zip -d opencart | |
sudo mkdir -p /var/www/example.com | |
sudo mv /var/www/opencart/upload/* /var/www/example.com/ | |
sudo cp /var/www/example.com/config-dist.php /var/www/example.com/config.php | |
sudo cp /var/www/example.com/admin/config-dist.php /var/www/example.com/admin/config.php | |
sudo chown -R www-data:www-data /var/www/example.com/ | |
sudo chmod -R 775 /var/www/example. com/ | |
sudo certbot —nginx -d example.com -d www.example.com —register-unsafely-without-email | |
sudo nano /etc/nginx/sites-available/example.com.conf | |
сервер | |
{ | |
# Слушай | |
слушать 80; | |
слушать [::]:80; | |
слушать 443 ssl http2; | |
слушать [::]:443 ssl http2; | |
# Имя каталога и сервера | |
корень /var/www/example. com; | |
индекс index.php index.html; | |
имя_сервера example.com www.example.com; | |
http2_push_preload включен; | |
large_client_header_buffers 4 16 КБ; | |
# Перенаправление с HTTP на HTTPS | |
если ($схема != «https») | |
{ | |
возврат 301 https://$host$request_uri; | |
} | |
# SSL | |
ssl_certificate /etc/letsencrypt/live/example. com/fullchain.pem; | |
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; | |
ssl_trusted_certificate /etc/letsencrypt/live/example.com/fullchain.pem; | |
# Отключить доступ к скрытым файлам, за исключением проверки шифрования | |
местоположение ~ /\.известный | |
{ | |
разрешить все; | |
} | |
# Ведение журнала Nginx | |
access_log /var/log/nginx/example. com-access.log; | |
error_log /var/log/nginx/example.com-error.log предупреждение; | |
# Максимальный размер загрузки | |
client_max_body_size 100M; | |
# Поддержка постоянных ссылок | |
местоположение / { | |
try_files $uri $uri/ /index.php?$args; | |
} | |
# PHP Upsteam | |
адрес ~\. php$ | |
{ | |
включить snippets/fastcgi-php.conf; | |
## Для PHP 7.2 | |
#fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; | |
## Для PHP 7.4 | |
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; | |
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; | |
включают fastcgi_params; | |
} | |
# Отключение текста робота | |
местоположение = /robots. txt | |
{ | |
разрешить все; | |
log_not_found выкл; | |
access_log выключен; | |
} | |
# ЗНАЧОК Избранное Отключить | |
местоположение = /favicon.ico | |
{ | |
log_not_found выкл; | |
access_log выключен; | |
} | |
# Кэш OpenCart | |
местоположение ~* \. (js|css|png|jpg|jpeg|gif|ico|svg)$ | |
{ | |
истекает через 7 дней; | |
add_header Cache-Control «общедоступный, без преобразования»; | |
log_not_found выкл; | |
access_log выключен; | |
} | |
} | |
sudo ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/ | |
sudo nano /etc/nginx/сайты-доступны/по умолчанию | |
сервер | |
{ | |
слушать 80 default_server; | |
слушать [::]:80 default_server; | |
#listen 443 ssl http2 default_server; | |
#listen [::]:443 ssl http2 default_server; | |
имя_сервера _; | |
возврат 444; | |
} | |
перезапуск службы sudo nginx | |
sudo certbot обновить — пробный запуск | |
sudo rm -rf /var/www/example. com/install/ | |
sudo mv /var/www/example.com/system/storage/ /var/www/storage/ | |
Архив OpenCart — WPcademy
Опубликовано
OpenCart — бесплатная платформа электронной коммерции с открытым исходным кодом для онлайн-торговцев. OpenCart обеспечивает профессиональную и надежную основу для создания успешного интернет-магазина.
Содержание
Шаг 1. Сначала давайте начнем с проверки актуальности вашей системы.
Шаг 2. Установите сервер LAMP.
Шаг 3. Отключить Selinux на CentOS 7.
Шаг 4. Установка OpenCart.
Шаг 5. Настройка MariaDB для OpenCart.
Шаг 6. Доступ к OpenCart.
Предварительные условия
В этой статье предполагается, что у вас есть хотя бы базовые знания о Linux, умение пользоваться оболочкой и, что наиболее важно, размещение сайта на собственном VPS. Установка довольно проста и предполагает, что вы работаете в корневом аккаунте Linount, в противном случае вам может потребоваться добавить «sudo» к командам, чтобы получить привилегии root. Я покажу вам пошаговую установку OpenCart на сервере CentOS 7.
Установка OpenCart на CentOS 7
Шаг 1. Сначала давайте начнем с того, что ваша система будет обновлена.
ням очистить все ням -у обновление
Шаг 2. Установите сервер LAMP.
Требуется сервер стека CentOS 7 LAMP. Если у вас не установлена LAMP, вы можете следовать нашему руководству здесь. Также установите необходимые модули PHP:
yum -y install php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-mssql php-snmp php-soap php- аккуратный локон
Шаг 3. Отключите Selinux в CentOS 7.
Выполните следующую команду, чтобы обновить selinux:
setenforce 0 sed -i 's/enforcing/disabled/' /etc/sysconfig/selinux sed -i 's/enforcing/disabled/' /etc/selinux/config
Шаг 4. Установка OpenCart.
Первое, что нужно сделать, это перейти на страницу загрузки OpenCart и загрузить последнюю стабильную версию OpenCart. На момент написания этой статьи это версия 3.0.2.0: 9.0764
wget https://github.com/opencart/opencart/archive/3.0.2.0.zip распаковать 3.0.2.0.zip mv opencart-3.0.2.0/upload/* /var/www/html/
Переименуйте файл «config-dist.php» в «config.php»:
mv config-dist.php config.php
Нам нужно изменить права доступа к некоторым папкам:
chown -R www-data.www-data /var/www/html chmod -R 755 /var/www/html
Шаг 5. Настройка MariaDB для OpenCart.
По умолчанию защита MariaDB не защищена. Вы можете защитить MariaDB с помощью скрипта mysql_secure_installation. Вы должны внимательно прочитать и прочитать ниже каждый шаг, который установит пароль root, удалит анонимных пользователей, запретит удаленный вход root, а также удалит тестовую базу данных и доступ к защищенной базе данных MariaDB.
mysql_secure_installation
Настройте его следующим образом:
- Установить пароль root? [Да/нет] г - Удалить анонимных пользователей? [Да/нет] г - Запретить удаленный вход в систему root? [Да/нет] г - Удалить тестовую базу данных и доступ к ней? [Да/нет] г - Перезагрузить таблицы привилегий сейчас? [Да/нет] г
Далее нам нужно будет войти в консоль MariaDB и создать базу данных для OpenCart. Выполните следующую команду:
mysql -u root -p
Вам будет предложено ввести пароль, поэтому введите свой корневой пароль MariaDB и нажмите Enter. После входа на сервер базы данных вам необходимо создать базу данных для установки OpenCart:
MariaDB [(нет)]> СОЗДАТЬ БАЗУ ДАННЫХ opencart; MariaDB [(нет)]> ПРЕДОСТАВИТЬ ВСЕ ПРИВИЛЕГИИ НА opencart. MariaDB [(нет)]> FLUSH PRIVILEGES; MariaDB [(нет)]> \q
Шаг 6. Доступ к OpenCart.
OpenCart по умолчанию будет доступен через HTTP-порт 80. Откройте свой любимый браузер и перейдите по адресу http://yourdomain.com/ или http://server-ip и выполните необходимые шаги для завершения установки. Если вы используете брандмауэр, откройте порт 80, чтобы разрешить доступ к панели управления.
Поздравляем! Вы успешно установили OpenCart. Спасибо за использование этого руководства по установке электронной коммерции OpenCart в системах CentOS 7. Для получения дополнительной помощи или полезной информации мы рекомендуем вам посетить официальный веб-сайт OpenCart .
Опубликовано
OpenCart — бесплатная платформа электронной коммерции с открытым исходным кодом для онлайн-торговцев. OpenCart обеспечивает профессиональную и надежную основу для создания успешного интернет-магазина. В этом руководстве мы научим вас, как установить OpenCart на Ubuntu 18. 04 LTS.
В этой статье предполагается, что у вас есть хотя бы базовые знания о Linux, вы знаете, как использовать оболочку, и, самое главное, вы размещаете свой сайт на собственном VPS. Установка довольно проста и предполагает, что вы работаете с учетной записью root, в противном случае вам может потребоваться добавить «sudo» к командам, чтобы получить привилегии root. Я покажу вам пошаговую установку OpenCart на сервере Ubuntu 18.04 (Bionic Beaver).
Установите OpenCart на Ubuntu 18.04 LTS
Шаг 1. Сначала убедитесь, что все ваши системные пакеты обновлены
судо подходящее обновление судо подходящее обновление
Шаг 2. Установите сервер LAMP (Linux, Apache, MariaDB и PHP).
Требуется сервер Ubuntu 18.04 LAMP. Если у вас не установлена LAMP, вы можете следовать нашему руководству здесь. Также установите все необходимые модули PHP:
apt-get install php7.1-cli php7.1-mbstring php7. 1-gd php7.1-opcache php7.1-mysql php7.1-json php7.1-mcrypt php7. 1-xml php7.1-завиток
Шаг 3. Загрузите OpenCart
Первое, что нужно сделать, это перейти на страницу загрузки OpenCart и загрузить последнюю стабильную версию OpenCart:
sudo mkdir -p /var/www/html/example.com компакт-диск /tmp wget https://github.com/opencart/opencart/releases/download/3.0.3.1/opencart-3.0.3.1.zip распаковать opencart-*.zip sudo mv /tmp/upload/* /var/www/html/example.com/
Затем скопируйте файлы конфигурации:
sudo cp /var/www/html/example.com/{config-dist.php,config.php} sudo cp /var/www/html/example.com/admin/{config-dist.php,config.php}
Нам нужно изменить права доступа к некоторым папкам:
sudo chown -R www-data: /var/www/html
Шаг 4. Настройка MariaDB для OpenCart.
По умолчанию защита MariaDB не защищена. Вы можете защитить MariaDB с помощью скрипта mysql_secure_installation. Вы должны внимательно прочитать и прочитать ниже каждый шаг, который установит пароль root, удалит анонимных пользователей, запретит удаленный вход root, а также удалит тестовую базу данных и доступ к защищенной базе данных MariaDB.
mysql_secure_installation
Настройте его следующим образом:
- Установить пароль root? [Да/нет] г - Удалить анонимных пользователей? [Да/нет] г - Запретить удаленный вход в систему root? [Да/нет] г - Удалить тестовую базу данных и доступ к ней? [Да/нет] г - Перезагрузить таблицы привилегий сейчас? [Да/нет] г
Далее нам нужно будет войти в консоль MariaDB и создать базу данных для OpenCart. Выполните следующую команду:
mysql -u root -p
Вам будет предложено ввести пароль, поэтому введите свой корневой пароль MariaDB и нажмите Enter. После входа на сервер базы данных вам необходимо создать базу данных для установки OpenCart:
MariaDB [(нет)]> СОЗДАТЬ БАЗУ ДАННЫХ opencart; MariaDB [(нет)]> ПРЕДОСТАВИТЬ ВСЕ ПРИВИЛЕГИИ НА opencart. MariaDB [(нет)]> FLUSH PRIVILEGES; MariaDB [(нет)]> \q
Шаг 5. Настройка веб-сервера Apache для OpenCart.
Создайте новую директиву виртуального хоста в Apache. Например, создайте новый файл конфигурации Apache с именем «opencart.conf» на своем виртуальном сервере:
[/php]
touch /etc/apache2/sites-available/opencart.conf
ln -s /etc/apache2/sites-available/opencart.conf /etc/apache2/sites-enabled/opencart.conf
nano / etc/apache2/sites-available/opencart.conf
[/php]
Добавьте следующие строки:
ServerAdmin [email защищен] DocumentRoot /var/www/html/example.com Имя сервера your-domain.com Псевдоним сервера www.ваш-домен.com <Каталог /var/www/html/example.com/> Параметры Разрешить переопределить все Каталог> Журнал ошибок /var/log/apache2/ваш-домен.com-error_log CustomLog /var/log/apache2/your-domain.com-access_log общий
Сохраните и закройте файл. Перезапустите службу apache, чтобы изменения вступили в силу:
sudo a2ensite magento. conf sudo a2enmod переписать sudo systemctl перезапустить apache2
Шаг 6. Доступ к OpenCart.
OpenCart по умолчанию будет доступен через HTTP-порт 80. Откройте свой любимый браузер и перейдите по адресу http://your-domain.com / или http://server-ip и выполните необходимые шаги для завершения установки. Если вы используете брандмауэр, откройте порт 80, чтобы разрешить доступ к панели управления.
Поздравляем! Вы успешно установили OpenCart. Спасибо за использование этого руководства по установке электронной коммерции OpenCart в системах Ubuntu 18.04. Для получения дополнительной помощи или полезной информации мы рекомендуем вам посетить официальный сайт OpenCart.
Опубликовано
OpenCart — бесплатная платформа электронной коммерции с открытым исходным кодом для онлайн-торговцев. OpenCart обеспечивает профессиональную и надежную основу для создания успешного интернет-магазина.
В этой статье предполагается, что у вас есть хотя бы базовые знания о Linux, вы знаете, как использовать оболочку, и, самое главное, вы размещаете свой сайт на собственном VPS. Установка довольно проста и предполагает, что вы работаете с учетной записью root, в противном случае вам может потребоваться добавить «sudo» к командам, чтобы получить привилегии root. Я покажу вам пошаговую установку OpenCart на сервере Ubuntu 16.04 (Xenial Xerus).
Установите OpenCart на Ubuntu 16.04
Шаг 1. Сначала убедитесь, что все ваши системные пакеты обновлены, выполнив следующие команды apt-get в терминале.
обновление sudo apt-get sudo apt-получить обновление
Шаг 2. Установите сервер LAMP (Linux, Apache, MariaDB, PHP).
Требуется сервер Ubuntu 16.04 LAMP. Если у вас не установлена LAMP, вы можете следовать нашему руководству здесь. Также установите все необходимые модули PHP:
apt-get install php7.0-mysql php7.0-curl php7.0-json php7.0-cgi php7.0 libapache2-mod-php7.0 php7.0- mcrypt
код>
Шаг 3. Установка OpenCart.
Первое, что нужно сделать, это перейти на страницу загрузки OpenCart и загрузить последнюю стабильную версию OpenCart. На момент написания этой статьи это версия 2.3.0.2:
wget https://github.com/opencart/ opencart/архив/2.3.0.2.zip распаковать 2.3.0.2.zip мв opencart-2.3.0.2/upload/* /var/www/html/
Переименуйте файл «config-dist.php» в «config.php»:
mv config-dist.php config.php
Нам нужно изменить права доступа к некоторым папкам:
chown -R www-data.www-data /var/www/html chmod -R 755 /var/www/html
Шаг 4. Настройка MariaDB для OpenCart.
По умолчанию защита MariaDB не защищена. Вы можете защитить MariaDB с помощью скрипта mysql_secure_installation. Вы должны внимательно прочитать и прочитать ниже каждый шаг, который установит пароль root, удалит анонимных пользователей, запретит удаленный вход root, а также удалит тестовую базу данных и доступ к защищенной базе данных MariaDB.
mysql_secure_installation
Настройте его следующим образом:
- Установить пароль root? [Да/нет] г - Удалить анонимных пользователей? [Да/нет] г - Запретить удаленный вход в систему root? [Да/нет] г - Удалить тестовую базу данных и доступ к ней? [Да/нет] г - Перезагрузить таблицы привилегий сейчас? [Да/нет] г
Далее нам нужно будет войти в консоль MariaDB и создать базу данных для OpenCart. Выполните следующую команду:
mysql -u root -p
Вам будет предложено ввести пароль, поэтому введите свой корневой пароль MariaDB и нажмите Enter. После входа на сервер базы данных вам необходимо создать базу данных для установки OpenCart:
MariaDB [(нет)]> СОЗДАТЬ БАЗУ ДАННЫХ opencart;
MariaDB [(нет)]> ПРЕДОСТАВИТЬ ВСЕ ПРИВИЛЕГИИ НА opencart.