Организация локальной разработки на WordPress в PHP Storm
Я использую связку OpenServer + PHP Storm + Xdebug. Есть немало инструкций как настроить эту связку, но иногда с первого раза не работает. Здесь я расскажу на конкретном примере как это получилось у меня. Итак, я использую OpenServer 5.2.2 (https://ospanel.io/). Установка не вызывает трудностей, но есть некоторые моменты дальнейшей настройки. Это версии модулей: Я использую: Apache-PHP-7-x64 PHP-7.1-x64 MySQL-5.7 Если Вы используете другие версии – запомните их, они ещё понадобятся. Допустим, Ваш сайт будет расположен тут: D:\OSPanel\domains\beta.rollbox.su. Сразу в ней распакованы файлы wordpress. PHP Storm. У меня стоит версия 2018.2.4. Открываем папку сайта D:\OSPanel\domains\beta.rollbox.su и видим примерно это Заходим в настройки File -> Settings… -> Languages & Frameworks -> PHP и выбираем соответствующую версию PHP ( такую же как в OpenServer ). Иначе дебаг не будет работать Теперь нужно установить расширение для браузера (я использую Firefox) — Xdebug helper от BrianGilbert_. Заходим в настройки Выбираем IDE key – PhpStorm ->…
Win 10 не видит компьютеры в сети
По запросу Win 10 не видит компьютеры в сети Вы найдете много огромных статей с кучей воды по этому поводу. Вам будут предлагать: включить сетевое обнаружение, включить доступ к файлам и принтерам, разрешить Windows управлять подключениями домашней группы, отключить фаервол, сбросить сеть, переименовать компьютер и так далее в этом духе. Я думаю, что если Вы полезли в интернет в поисках ответа, то Вы сделали всё логично-необходимое, и не нужно разжовывать элементарные вещи. На самом деле причина кроется, скорее всего, в отключенном компоненте SMB 1.0/CIFS File Sharing Support. Совершенно непонятно почему создатели Windows его отключили, видимо какие-то меры безопасности, итак: Изначально имеем вот такую картину: Как мы можем наблюдать, отсутствует подавляющее большинство компьютеров, причем, пинги идут, работает RDP, но при попытке открыть эти компьютеры в проводнике, выдает ошибку. Идём в Панель управления -> Программы -> Включение или отключение компонентов Windows. Находим компонент SMB 1.0/CIFS File Sharing Support и устанавливаем его полностью.…
Дата и время в CentOS 7
Вывод сведений о времени timedatectl status Вывод доступных временных зон timedatectl list-timezones Поиск в выводе временных зон timedatectl list-timezones | egrep -o «Asia/V.*» Установить зону sudo timedatectl set-timezone «Asia/Vladivostok» Установить время: sudo timedatectl set-time ‘2015-11-20 16:14:50’ sudo timedatectl set-time 20151120 sudo timedatectl set-time 15:58:30 Синхронизация с ntp-серверами https://serveradmin.ru/ustanovka-nastroyka-i-sinhronizatsiya-vremeni-v-centos/
Фаервол в CentOS 7
https://bozza.ru/art-259.html 1. Disable the Firewall: To disable firewalld service please run the following command. sudo systemctl disable firewalld 2. Enable the Firewall: If you want to enable the service please run the command. systemctl enable 3. Stop the Firewall: You can also deactivate the service using the following command systemctl stop firewalld 4. Start the Firewall: To activate the command run systemctl start firewalld работает ли фаервол firewall-cmd —state смотрим что разрешено firewall-cmd —permanent —list-all Убираем разрешающее правило для ip6: firewall-cmd —permanent —zone=public —remove-service=dhcpv6-client Разрешим соединение на порт 2234/tcp: firewall-cmd —permanent —zone=public —add-port=2234/tcp Перезагрузим правила: firewall-cmd —reload Ещё примеры: firewall-cmd —permanent —zone=public —remove-service=dhcpv6-client firewall-cmd —permanent —zone=public —remove-service=mysql firewall-cmd —permanent —zone=public —remove-port=80/tcp firewall-cmd —permanent —zone=public —add-service=http firewall-cmd —permanent —zone=public —add-port=3306/tcp
Web-сервер Nginx — пошагово
В этой инструкции пошагово разберём установку и настройку LEMP — стека для организации web-сервера на системе CentOS 7. Будет сделано: первоначальная настройка CentOS установка и конфигурирование Nginx + php-fpm установка и настройка MariaDB установка PHP создание двух тестовых сайтов, установка WordPress автоматический Backup баз данных поддержка HTTPS с помощью Let’s Encrypt Итак, мы находимся в только что установленном CentOS: Выполняем обновление системы: sudo yum clean all sudo yum update sudo yum autoremove Устанавливаем текстовый редактор nano, файловый менеджер mc и инструменты для работы с сетью, программу для скачивания: sudo yum install mc nano net-tools wget -y Назначение имени компа: sudo nano /etc/sysconfig/network HOSTNAME=_имя_компьютера_ sudo hostnamectl set-hostname _имя_компьютера_ Назначение статического IP: с помощью программулины: sudo nmtui либо в рукопашку: sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0 BOOTPROTO=»none» IPADDR=»192.168.2.203″ GATEWAY=»192.168.2.254″ DNS1=»192.168.2.254″ DNS2=»8.8.8.8″ # Disable ipv6 # IPV6INIT=»no» # Subnet # PREFIX=24 Перезапуск сети: sudo systemctl restart network Настройка времени: Написано здесь Редактируем правила фаервола: Смотрим работает ли…
Настройка VLAN на HP 1920 24G и Hyper-V
В этой заметке описываю создание обособленной виртуальной частной сети (VLAN) от шлюза до виртуальной машины в гипервизоре MS Hyper-V. Общая схема выглядит так: Цифрами обозначены физические порты различных устройств. Конечная точка — виртуальная машина в гипервизоре Hyper-V с операционной системой CentOS 7 и поднятым на ней Web-сервером Nginx. Весь путь от АПКШ Континент до него должен быть полностью изолирован от локальной сети. Эта задача решается с применением VLAN на управляемых коммутаторах и в гипервизоре. Локальная сеть начинается с порта номер 5. АПКШ Континент — это аппаратный криптошлюз, управляемый из центра обработки данных из другого города — я не имею доступа к его конфигурации. На входе он получает интернет, а на выходе он отдаёт интернет + частную сеть вышестоящей организации. Изначально я просил просто пробросить порты 80, 443 и 9950 на pfSense, но безопасник ЦОДа категорически отказался это делать, и вместо этого сделал проброс данных портов на адрес виртуальной машины, из…
Openfire увеличить объем памяти для Java
Спустя год бесперебойной работы openfire начал вылетать с ошибкой OutOfMemory. В web-интерфейсе напротив Использовано java — частенько не оставалось свободной памяти. Решение: размер выделенной памяти увеличивается следующим способом: В файле /opt/openfire/bin/openfire нужно раскомментировать строчку INSTALL4J_ADD_VM_PARAMS= и присвоить ей значение, например, «-Xms128m -Xmx330m -Xss128k -Xoss128k -XX:ThreadStackSize=128» Таким образом, мы установили начальное выделение памяти 128 Мб (-Xms128m), максимальное — 330Мб (-Xmx330m). По поводу остальных параметров я особо не разбирался и думаю что их не стоит увеличивать Результат: P.S.: Здесь ещё что-то написано: https://community.igniterealtime.org/docs/DOC-1033
Определить, содержит ли переданный объект определенный метод
[cc lang=»java»]import java.lang.reflect.Method; public class test { public static class Cat{ void say(String word){ System.out.println(«Cat says: » + word); } } public static void main(String[] args) { Cat cat = new Cat(); cat.say(«hello»); System.out.println(isHasMethod(cat, «say»)); } static boolean isHasMethod(Object object, String methodName){ Method[] methods = object.getClass().getDeclaredMethods(); for (Method method : methods) { if (method.getName().equals(methodName)) return true; } return false; } }[/cc]
Как отправить email из программы Java
[cc lang=»java»] import javax.mail.*; import javax.mail.internet.*; import java.util.Properties; public class test { public static void main(String[] args) { //Отправить E-Mail //Скачать javamail api (javax.mail.jar) отсюда http://www.oracle.com/technetwork/java/javamail/index.html //В Intellij IDEA в меню File->Project Structure…->Libraries нажать плюсик и добавить этот файл к проекту //Тто же самое сделать для JAF (activation.jar): http://www.oracle.com/technetwork/java/javase/jaf-136260.html //Если что-нибудь не получается, возможно сам почтовик блокирует авторизацию через ненадёжные приложения. (так по-умалчанию делает gmail.com и это отключается в личном кабинета) final String username = «SOURCE@mail.ru»; final String password = «SOURCE_PASSWORD»; Properties props = new Properties(); props.put(«mail.smtp.auth», «true»); props.put(«mail.smtp.starttls.enable», «true»); props.put(«mail.smtp.host», «smtp.mail.ru»); props.put(«mail.smtp.port», «587»); Session session = Session.getInstance(props, new javax.mail.Authenticator() { protected PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication(username, password); } }); try { Message message = new MimeMessage(session); message.setFrom(new InternetAddress(«SOURCE@mail.ru»)); message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(«TARGET@mail.ru»)); message.setSubject(«Testing Subject»); message.setText(«Dear Mail Crawler,» + «\n\n No spam to my email, please!»); Transport.send(message); System.out.println(«Done»); } catch (MessagingException e) { throw new RuntimeException(e); } } }[/cc] P.S.: Нужные…
Как отсортировать список строк в обратном алфавитном порядке
[cc lang=»java»]import java.util.Arrays; import java.util.Comparator; public class test { static class MyComparator implements Comparator { public int compare(String strA, String strB) { return strB.compareTo(strA); } } public static void main(String[] args) { String[] mass = new String[]{«hello», «world», «any_shit», «my_word»}; MyComparator rsc = new MyComparator(); Arrays.sort(mass, rsc); System.out.println(Arrays.toString(mass)); } }[/cc]