Настройка файла php.ini

Шаг 1 — Установка Apache и настройка файрвола

Веб-сервер Apache в настоящее время является одним из самых популярных веб-серверов в мире. Он хорошо документирован и используется значительную часть времени с момента создания сети Интернет, что делает его прекрасным выбором для хостинга веб-сайта.

Мы с легкостью можем установить Apache используя менеджер пакетов Ubuntu . Менеджер пакетов позволяет нам легко установить большую часть программного обеспечения из репозиториев Ubuntu. О том, как использовать , вы можете узнать из этой статьи.

Для начала установки выполним команды:

Поскольку мы используем команду , эти команды будут выполняться с привилегиями root. В процессе операционная система запросит ваш пароль пользователя.

После ввода пароля сообщит, какие пакеты будут установлены и сколько места они займут на диске. Нажмите Y и Enter для продолжения установки.

Настройка глобальной переменной ServerName

Далее мы добавим одну строку в для устранения предупреждений (warnings) о синтаксических ошибках. Несмотря на то, что это просто предупреждение и никакой проблемы не существует, если не задать глобальную переменную , вы будете получать следующее предупреждение об ошибке при проверке настройки конфигурации Apache:

Откройте главный конфигурационный файл в своём текстом редакторе командой:

Добавьте в конец файла переменную , указывающую на ваше основное доменное имя. Если для вашего сервера не настроено доменное имя, вы можете использовать публичный IP-адрес сервера:

Внимание

Если вы не знаете IP-адрес Вашего сервера, вы можете прочитать об этом в разделе ./etc/apache2/apache2.conf

После этого сохраните и закройте файл.

Теперь можно проверить результат напечатав следующую команду:

Поскольку мы установили глобальную переменную , вы должны увидеть вывод следующего характера:

Перезапустите Apache для применения внесённых изменений:

Теперь можно приступать к настройке файрвола.

Настройка файрвола

Теперь убедимся, что ваш файрвол пропускает HTTP и HTTPS трафик. Мы будем исходить из предположения, что вы уже выполнили инструкции по первичной настройке сервера и включили файрвол UFW. Для начала убедимся, что UFW имеет профиль для Apache следующей командой:

Проверим настройку профиля , она должна разрешать трафик для портов 80 и 443:

Разрешим входящий трафик для этого профиля:

Проверить результат установки можно набрав в вашем веб-браузере публичный IP адрес вашего сервера (если вы еще не знаете, как найти публичный IP адрес вашего сервера, смотрите следующий раздел этой статьи):

Вы увидите страницу Apache, отображаемую по умолчанию для информации и целей тестирования. Она должна выглядеть похожим образом:

Если вы видите эту страницу, ваш веб-сервер корректно установлен и доступен через файрвол.

Как найти публичный IP адрес вашего сервера

Если вы не знаете публичный IP адрес вашего сервера, его можно определить несколькими способами. Обычно, это адрес, который вы используете для соединения с вашим сервером по SSH.

Определить этот адрес можно с помощью командной строки. Сначала используйте инструмент для получения вашего адреса набрав следующую команду:

Результатом выполнения этой команды будет одна или две строки, содержащие корректный адрес. Ваш компьютер, возможно, сможет использовать только один из них, поэтому попробуйте каждый вариант.

В качестве альтернативы можно узнать, как видит ваш сервер. Это можно сделать следующим образом:

В независимости от метода, который вы использовали для получения своего IP адреса, вы можете использовать этот IP адрес для доступа к серверу через адресную сроку веб-браузера.

User level root

Type the below code to find your username (it is “home” in my case).

whoami

Create folder in username:

sudo mkdir ~/Sites

Open Apache folder and create in the directory:

cd /etc/apache2/userssudo nano username.conf

Add the text below in and save it ().

<Directory "/Users/username/Sites/">AllowOverride AllOptions Indexes MultiViews FollowSymLinksRequire all granted</Directory>

Now open ,

sudo nano /etc/apache2/httpd.conf

and uncomment the following module:

LoadModule authz_core_module libexec/apache2/mod_authz_core.soLoadModule authz_host_module libexec/apache2/mod_authz_host.soLoadModule userdir_module libexec/apache2/mod_userdir.soLoadModule include_module libexec/apache2/mod_include.soLoadModule rewrite_module libexec/apache2/mod_rewrite.so

Edit Apache Configuration

You may want your current user to be the PHP pages administrator. To do so, edit the Apache configuration file :

$ gksudo "gedit /etc/apache2/envvars"

Search both the strings starting by «APACHE_RUN_USER» and «APACHE_RUN_GROUP», and change the names to the current username and groupname you are using. Then you’ll need to restart Apache. (look at the next chapter concerning apache commands)

Configuration options relating specifically to user websites (accessed through localhost/~username) are in /etc/apache2/mods-available/userdir.conf and managed with the a2enmod and a2dismod commands.

Сборки Apache, PHP и MySQL (LAMP, GLAMP)

В сети существует множество разных, так называемых «готовых сборок» (английская абревиатура для поиска: LAMP, GLAMP) связки Apache, PHP и MySQL для Windows. Они весьма заметно упрощают установку необходимых программ, но и могут инсталировать множество дополнительного, не нужного для решения конкретных задач, ПО. Если использовать сборки от малоизвестных авторов, то есть большой шанс «подцепить» в нагрузку к web-серверу, парочку вредоностных программ.

Готовые сборки (LAMP, GLAMP) лучше всего подходят для тех, кто только начал изучение основ web-программирования и не уверен, что в дальнейшем ему пригодится ПО для web-сервера

Но даже в этом случае, лучше устанавливать, и что самое важное, настраивать эту связку вручную, чтобы понимать, что и как работает. Знания, приобритенные в процессе самомтоятельной установки, будут весьма полезны в дальнейшем, при написании скриптов или настройке готовых web-сайтов

Ссылки на сайты наиболее популярных, бесплатных и стабильных сборок, включающих MySQL, Apache, PHP:

  • — русский интерфейс и документация.
  • — подойдет и для профессионалов, активно использующих в своей работе ПО от Zend.
  • .

Дополнительная информация о сборках: , .

Установка связки MySQL, Apache + PHP по частям, последние версии которых взяты с официальных сайтов разработчиков этого ПО, дает максимальную гарантию безопасности. На сайте petrenco.com, также представлены дистрибутивы Apache 2.2.20, PHP 5.2.17 и MySQL 5.5.14 (файлы дистрибутивов скачаны с официальных сайтов: , , ). После загрузки файлов (даже с сайтов-разработчиков), не помешает проверить их антивирусом, ведь иногда, даже самые надежные системы могут подвергнуться взлому хакеров, которые без проблем могут «дополнить» дистрибутивы ПО.

Опубликовано: 2011/08/31

HTML-код ссылки на эту страницу:
<a href=»https://petrenco.com/raznoe.php?txt=87″ target=»_blank»>Apache, PHP и MySQL для Windows</a>

29865

Настройка MySQL (MariaDB)

1. Установка

Устанавливаем MariaDB и PHP-модуль для работы с MySQL, после завершения установки перезагружаем Apache

Для проверки обновим тестовую страницу и в таблице с конфигурацией PHP и перейдем к разделу PDO. Наличие секции “PDO_mysql” говорит о корректной установке драйвера для работой с базой данных Mysql.

Для дальнейшей работы необходимо выполнить первоначальную настройку безопасности MariaDB, во время которой для пользователя “root” устанавливается пароль, запрещается удаленный вход и удаляются гостевые учетные записи.

На первом шаге необходимо ввести пароль пользователя «root» для входа в СУБД или нажать Enter, если пароль не задан. Так как после установки учетная запись «root» не имеет пароля, нажимаем “Enter”.

Обратите внимание, что в MariaDB существуют собственные учетные записи, которые не имеют отношения к учетным записям операционной системы. Речь идет о пользователе «root» в MariaDB

Далее конфигуратор предложит задать пароль для пользователя root, нажимаем “y” для подтверждения и вводим новый пароль, в нашем случае “Qwe123”

На все последующие запросы просто нажимаем “y” до окончания настройки.

Настройка завершена.

Данные для входа в MariaDB:

  • Логин: root
  • Пароль: Qwe123

Шаг 3 — Установка PHP

Мы установили Apache для обслуживания вашего контента и MySQL для хранения и управления вашими данными. PHP — это элемент нашей настройки, который будет обрабатывать код для отображения динамического контента конечному пользователю. Помимо пакета вам потребуется , модуль PHP, который позволяет PHP взаимодействовать с базами данных MySQL. Также вам потребуется для активации Apache для обработки файлов PHP. Ключевые пакеты PHP автоматически будут установлены в качестве зависимостей.

Чтобы установить эти пакеты, выполните команду:

После завершения установки вы можете использовать следующую команду для подтверждения вашей версии PHP:

Теперь комплект LAMP полностью работоспособен. Однако, прежде чем тестировать настройку с помощью скрипта PHP, лучше всего настроить виртуальный хост Apache для хранения файлов и папок вашего сайта. Мы сделаем это на следующем шаге.

Сжатие данных в Apache Ignite. Опыт Сбера

Tutorial

При работе с большими объемами данных иногда может остро встать проблема нехватки места на дисках. Одним из способов решения данной проблемы является сжатие, благодаря которому, на том же оборудовании, можно себе позволить увеличить объемы хранения. В данной статье мы рассмотрим, как работает сжатие данных в Apache Ignite. В статье будут описаны только реализованные внутри продукта способы сжатия на диске. Другие способы сжатия данных (по сети, в памяти) как реализованные, так и нет останутся за рамками.
Итак, при включенном persistence режиме, в результате изменения данных в кэшах, Ignite начинает записывать на диск:

  1. Содержимое кэшей
  2. Журнал упреждающей записи (Write Ahead Log, далее просто WAL)

Для сжатия WAL уже довольно давно существует механизм, который называется WAL compaction. В недавно вышедшем Apache Ignite 2.8 появилось еще два механизма позволяющих сжимать данные на диске, это disk page compression для сжатия содержимого кэшей и WAL page snapshot compression для сжатия некоторых записей WAL. Подробнее о всех этих трех механизмах ниже.

Web сервер на CentOS 7

Итак, наш веб сервер centos будет состоять из трех основных компонентов — http сервера apache, интерпретатора языка программирования php и сервера баз данных mysql. Познакомимся немного с каждым из них:

  1. Apache — http сервер или просто веб сервер апач. Является кросплатформенным ПО, поддерживающим практически все популярные операционные системы, в том числе и Windows. Ценится прежде всего за свою надежность и гибкость конфигурации, которую можно существенно расширить благодаря подключаемым модулям, которых существует великое множество. Из недостатков отмечают большую требовательность к ресурсам, по сравнению с другими серверами. Держать такую же нагрузку, как, к примеру, nginx, apache не сможет при схожих параметрах железа.
  2. PHP — язык программирования общего назначения, который чаще всего применяется в веб разработке. На сегодняшний день это самый популярный язык в этой области применения. Поддерживается практически всеми хостинг-провайдерами.
  3. Mysql — система управления базами данных. Завоевала свою популярность в среде малых и средних приложений, которых очень много в вебе. Так что, как и php, на сегодняшний день является самой популярной бд, использующейся на веб сайтах. Поддерживается большинством хостингов. В CentOS вместо mysql устанавливается mariadb — ответвление mysql. Они полностью совместимы, возможен в любой момент переход с одной субд на другую и обратно. Последнее время я встречал информацию, что mariadb пошустрее работает mysql и люди потихоньку перебираются на нее. На практике мне не довелось это наблюдать, так как никогда не работал с нагруженными базами данных. А в обычных условиях разница не заметна.

Подопытным сервером будет выступать виртуальная машина от ihor, характеристики следующие:

Процессор 2 ядра
Память 8 Gb
Диск 150 Gb SSD

Хочу сразу уточнить, что разбираю базовую дефолтную настройку. Для улучшения быстродействия, повышения надежности и удобства пользования нужно установить еще несколько инструментов, о чем я расскажу отдельно. В общем случае для организации веб сервера будет достаточно того, что есть в этой статье.

Если у вас еще нет сервера, то вам надо выполнить установку CentOS 7. А если сервер уже установлен, то не забудьте его настроить

Рекомендую обратить внимание именно на настройку, так как там много полезной информации, которую в рамках этой статьи я не даю — обновление системы, настройка фаервола, установка редактора и многое другое

Установка PHP 7.4 для Debian

Метод работает на Debian 8 (Jessie), Debian 9 (Stretch) и Debian 10 (Buster). Добавляем новый репозиторий:

sudo apt install -y apt-transport-https lsb-release ca-certificates wget
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list
sudo apt update

После этого можно установить PHP

sudo apt install php7.4

# Установка дополнительных пакетов
sudo apt install php7.4-cli php7.4-fpm php7.4-bcmath php7.4-curl php7.4-gd php7.4-intl php7.4-json php7.4-mbstring php7.4-mysql php7.4-opcache php7.4-sqlite3 php7.4-xml php7.4-zip

Notice: Undefined variable…

На новом, только что установленном, PHP можно часто видеть сообщения вида:

Notice: Undefined variable: msg in C:/Main/addrec.php on line 7

Это не ошибка — это рекомендации по кодированию, сообщающие о неинициализированных переменных. Следует отключить вывод подобных рекомендаций в файле php.ini. Найдите директиву error_reporting и установите ее значение:

error_reporting  =  E_ALL & ~E_NOTICE

Не подключается MySQL

Иногда возникают проблемы с установкой MySQL. Следует проконтролировать запускается ли MySQL в качестве сервиса каждый раз при старте системы. Для этого откройте консоль сервисов:

Пуск | Настройка | Панель управления | Администрирование | Службы

найдите там MySQL – запустите. Чтобы сервер стартовал при каждой загрузке системы нажмите правую кнопку мыши на сервисе и выберите “Свойства” – в открывшемся выпадающем списке “Тип запуска” выберите пункт “Авто”.

Если при запуске Apache и при обращении ко скриптам выдается сообщение о невозможности загрузки библиотеки php_mysql.dll.

PHP startup: Unable to load dynamic library c:/php/ext/php_mysql.dll
– не найден указанный модуль

То еще раз сверьтесь с инструкциями из раздела, где описывается подключение к PHP библиотеки для работы с MySQL. Используете ли Вы “правильную” версию файла php_mysql.dll (именно для той версии PHP, которая установлена в системе)?
Версии файла php_mysql.dll различаются для разных версий PHP, хотя и имеют одно и тоже название.

Скопирована ли библиотека libmysql.dll из каталога с установленным PHP в системный каталог C:/Windows/System32?

Неизвестные ошибки

Если все же настроить связку Apache, PHP и MySQL не получается, то причины могут быть в следующем:

  • Использование русских буквы в именах директорий прописываемых в настроечных файлах httpd.conf и php.ini.
  • Использование пробелов в именах файлов и директории в настроечных файлах. Если в именах файлов и директорий есть пробелы, то их нужно обрамлять кавычками.
  • Использование разделителей каталогов формате Windows (обратный слеш): c:apache/bin. Для надежной работы следует использовать разделители в формате UNIX (прямой слеш), например: c:/apache/bin.
  • Существование нескольких настроечных файлов php.ini на машине, либо отсутствие такого файла. Нужный файл php.ini должен лежать в директории Windows. Проведите поиск по дискам компьютера, найдите все лишние версии файлов и удалите их.

Запускаем Apache Spark на Kubernetes

Дорогие читатели, доброго дня. Сегодня поговорим немного про Apache Spark и его перспективы развития.
В современном мире Big Data Apache Spark является де факто стандартом при разработке задач пакетной обработки данных. Помимо этого, он также используется для создания стриминговых приложений, работающих в концепции micro batch, обрабатывающих и отгружающих данные маленькими порциями (Spark Structured Streaming). И традиционно он являлся частью общего стека Hadoop, используя в качестве менеджера ресурсов YARN (или, в некоторых случаях, Apache Mesos). К 2020 году его использование в традиционном виде для большинства компаний находится под большим вопросом в виду отсутствия приличных дистрибутивов Hadoop — развитие HDP и CDH остановлено, CDH недостаточно проработан и имеет высокую стоимость, а остальные поставщики Hadoop либо прекратили своё существование, либо имеют туманное будущее. Поэтому всё больший интерес у сообщества и крупных компаний вызывает запуск Apache Spark с помощью Kubernetes — став стандартом в оркестрации контейнеров и управлении ресурсами в приватных и публичных облаках, он решает проблему с неудобным планированием ресурсов задач Spark на YARN и предоставляет стабильно развивающуюся платформу с множеством коммерческих и открытых дистрибутивов для компаний всех размеров и мастей. К тому же на волне популярности большинство уже успело обзавестись парой-тройкой своих инсталляций и нарастить экспертизу в его использовании, что упрощает переезд.
Начиная с версии 2.3.0 Apache Spark обзавёлся официальной поддержкой запуска задач в кластере Kubernetes и сегодня, мы поговорим о текущей зрелости данного подхода, различных вариантах его использования и подводных камнях, с которыми предстоит столкнуться при внедрении.

Поднимаем тестовое окружение в Kubernetes: Apache Kafka, Kafka Connect, MirrorMaker 2.0 и Jmeter

Из песочницы

Я инженер по нагрузочному тестированию и не так давно работаю над проектом, где предполагается активное использование Apache Kafka. Из-за режима удаленной работы получение доступа к тестовому окружению затянулось на недели. Чтобы не терять время я решил развернуть локальный стенд в Kubernetes.

Кто работал с Apache Kafka подтвердит, что официальная документация покрывает далеко не все тонкости инсталляции и настройки. Я надеюсь, что данная пошаговая инструкция позволит вам сократить время развертывания тестового окружения

Обращаю внимание на то, что установка stateful в контейнерах — далеко не лучшая идея, поэтому данная инструкция не предназначена для развертывания промышленного стенда

Инструкция описывает создание виртуальной машины в VirtualBox, установку и настройку операционной системы, установку Docker, Kubernetes и системы мониторинга. В Kubernetes развертывается два кластера Apache Kafka: «production» и «backup». Для репликации сообщений из production в backup используется MirrorMaker 2.0. Взаимодействие между узлами production кластера защищено TLS. К сожалению, не могу выложить в Git скрипт для генерирования сертификатов. В качестве примера можете использовать сертификаты из архива certs/certs.tar.gz. В самом конце инструкции описывается развертывание кластера Jmeter и запуск тестового сценария.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector