Две ошибки при запуске apache. одна, связанная с 1с, и новый подарок от ms (при обновлении до windows 10)

Редактирование файла hosts

Встроенный в операционную систему файл hosts выполняет важную роль, и часто пользователи задействуют его, если хотят ограничить доступ к конкретным сайтам. Иногда его блокировка средствами Windows становится причиной проблем с запуском OpenServer. Информация об этом появляется в логах при попытке перейти на веб-сервер, поэтому причину можно сразу же распознать. 

Хочу дать два совета:

  1. При использовании стороннего антивируса и брандмауэра настройте их так, чтобы OpenServer не попадал в список заблокированных программ. Стандартные средства можно отключить на время исключительно в качестве проверки.
  2. Запустите командную строку от имени администратора и введите команду attrib -s -r -h -a C:\Windows\system32\drivers\etc\hosts, активировав соответствующие атрибуты для упомянутого файла hosts.

-1

Продолжение уведомление такое ERROR: archive data corrupted. Толкование неисправности такое:

«Распаковка не удалась и прервалась из-за поврежденного архива». Вполне возможно, что инсталляционный файл был загружен с ошибками. Код первым проявляется в случае, если причина ошибки неясна и нужно перепробовать всевозможные пути решения:

  1. Часто бывает, если загружались установочные компоненты через торрент. Зайдите в клиент и удостоверьтесь, что ни один файлик не пострадал во время скачивания. Для этого жмите ПКМ по имени торрента и выберите «Пересчитать хеш».

В последнем случае можно изменить путь во время установки или же изменить сам Temp:

  1. В поле TEMP и TMP выставите опцию «C:\Temp». Так, директория Temp перенесется на корень диска «С:\».

Невозможно подключиться к серверу

Если же OpenServer запускается нормально, но при этом соединения с сервером не происходит, советую ознакомиться с дальнейшими инструкциями.

Способ 1: Редактирование MySQL и phpMyAdmin

Этот способ подойдет тем пользователям, которые используют OpenServer в связке с MySQL и phpMyAdmin. Он заключается в небольшой настройке этих двух компонентов для обеспечения нормального соединения, если вдруг возникла такая ситуация, что веб-сервер не хочет запускаться.

Первоочередная задача – создание нового пользователя MySQL. Вводим:

Команда отвечает за создание нового пользователя и установку для него пароля.

Вместо user и pass подставьте имя созданного пользователя и его пароль для MySQL.

Часто встречающиеся ошибки 1С и общие способы их решения Промо

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

Правильный линк на сервис

В некоторых статьях путь к web сервису указан как: https://имя_сервера:порт/имя_при_публикации/alias? wsdl.

  • Имя сервера: s-1s-1-hw
  • Порт: 8080
  • Имя при публикации: wsApache
  • Alias из файла default. vrd: service.1cws

Соответственно, НЕПРАВИЛЬНАЯ ссылка на web сервис 1С такая: https://s-1c-1-hw:8080/wsApache/service.1cws? wsdl

Если использовать такой линк, то 1C 8.2 выдаст сообщение вида:

Правильный вариант:

https://имя_сервера:порт/имя_при_публикации/ ws/ alias? wsdl.

Это обращение эквивалентно обращению по имени сервиса из default. vrd:

https://имя_сервера:порт/имя_при_публикации/ ws/ name? wsdl.

Соответственно, ПРАВИЛЬНЫЙ линк для доступа к web сервису 1С будет такой:

https://s-1c-1-hw:8080/wsApache/ ws/ service.1cws? wsdl

https://s-1c-1-hw:8080/wsApache/ ws/ service? wsdl

Если указать ссылку с суффиксом? wsdl, то в веб браузере отобразиться XML файл с описанием опубликованного сервиса.

Если указать ссылку без суффикса? wsdl, то при правильной настройке должна появится страница с гиперссылкой на опубликованный сервис:

Шаг #5: Установка и настройка MariaDB

MariaDB — это популярный форк MySQL, отличающийся большей производительностью и функциональностью по сравнению с обычным MySQL.

Установим основной пакет MariaDB, который подтянет все необходимые зависимости.

Запустим MariaDB для дальнейшей работы.

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

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

Если вам не предложили создать пароль во время загрузки сервера, то жмем enter и создаем сейчас.

Далее запрещаем анонимный доступ:

Запрещаем удаленный доступ:

Удаляем ненужные тестовые базы данных:

Применяем только что выставленные настройки:

Настройка файла конфигурации MariaDB

В файле /etc/my.cnf хранятся все главные настройки для сервера баз данных. 

Грамотно настроенная СУБД MariaDB будет производительнее работать и потреблять меньше оперативной памяти, что, например, для VPS/VDS серверов с памятью в 512мб является очень важным. Так как для своих проектов я арендую виртуальный выделенный сервер именно с 512мб памяти, то предлагаю вашему вниманию соответствующий файл конфига для MariaDB (/etc/my.cnf).

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

datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

low-priority-updates # Приоритет для чтения в ущерб записи
skip-name-resolve # Не определяем домены клиентов, только IP (ускоряет соединение)
max_allowed_packet=8M # Максималный размер данных передаваемых в одном запросе
max_connections=128 # Максимальное количество параллельных соединений к серверу
thread_cache_size=16 # Указывает число кэшируемых потоков
query_cache_limit=1M # Максимальный размер кэшируемого запроса
query_cache_size=10M # Размер кэша
query_cache_min_res_unit=2M # Минимальный размер хранимого в кэше блока
key_buffer_size=100M # Размер буфера, выделяемого под индексы и доступного всем потокам
innodb_buffer_pool_size=150M # Размер памяти, выделяемый InnoDB для хранения и индексов и данных
innodb_flush_method=O_DIRECT # Позволяет избежать двойного кеширования
innodb_flush_log_at_trx_commit=2 # (2) Уменьшает вероятность потери данных в ущерб производительности

log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

mysqld

datadir=varlibmysql

socket=varlibmysqlmysql.sock

# Disabling symbolic-links is recommended to prevent assorted security risks

symbolic-links=

# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
 

low-priority-updates# Приоритет для чтения в ущерб записи

skip-name-resolve# Не определяем домены клиентов, только IP (ускоряет соединение)

max_allowed_packet=8M# Максималный размер данных передаваемых в одном запросе

max_connections=128# Максимальное количество параллельных соединений к серверу

thread_cache_size=16# Указывает число кэшируемых потоков

query_cache_limit=1M# Максимальный размер кэшируемого запроса

query_cache_size=10M# Размер кэша

query_cache_min_res_unit=2M# Минимальный размер хранимого в кэше блока

key_buffer_size=100M# Размер буфера, выделяемого под индексы и доступного всем потокам

innodb_buffer_pool_size=150M# Размер памяти, выделяемый InnoDB для хранения и индексов и данных

innodb_flush_method=O_DIRECT# Позволяет избежать двойного кеширования

innodb_flush_log_at_trx_commit=2# (2) Уменьшает вероятность потери данных в ущерб производительности

mysqld_safe

log-error=varlogmariadbmariadb.log

pid-file=varrunmariadbmariadb.pid

#
# include all files from the config directory
#

!includediretcmy.cnf.d

Теперь MariaDB готова к работе и созданию баз данных.

HTTP

Во-вторых, веб-сервер обеспечивает поддержку HTTP (hypertext transfer protocol). Как следует из названия, HTTP указывает, как передавать гипертекст (т.е. связанные веб-документы) между двумя компьютерами.

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

  • Текстовый (Все команды представлены в текстовом виде и пригодны для восприятия человеком) .
  • Не сохраняет состояние(ни клиент, ни сервер, не помнят о предыдущих соединениях. Например, опираясь только на HTTP, сервер не сможет вспомнить введенный вами пароль или на каком шаге транзакции вы находитесь. Для таких задач, вам потребуется сервер приложений.)

HTTP задает строгие правила, как клиент и сервер должны общаться. Мы рассмотрим непосредственно HTTP далее в техническом разделе. Вот некоторые из них:

  1. Только клиенты могут отправлять HTTP запросы, и только на сервера. Сервера отвечают только на HTTP запросы клиента.
  2. Когда запрашивается физический файл, клиент должен сформировать URL для сервера.
  3. Веб-сервер должен ответить на каждый HTTP запрос, по крайней мере с сообщением об ошибке.

На веб-сервере, HTTP сервер отвечает за обработку входящих запросов и ответ на них:

  • При получении запроса, HTTP сервер сначала проверяет существует ли ресурс по данному URL.
  • Если это так, веб-сервер отправляет содержимое файла обратно в браузер. Если нет, сервер приложений создает необходимый ресурс.
  • Если это не возможно, веб-сервер возвращает сообщение об ошибке в браузер, чаще всего “404 Not Found”. (Это ошибка настолько распространена, что многие веб-дизайнеры тратят большое количество времени на разработку 404 страниц об ошибках.)

После обновления windows 10 не работает apache, как быть?

Доброго времени суток. Вчера столкнулся с проблемой, после обновления windows 10 перестал запускаться web сервер Apache. Первое что сделал посмотрел в службах процесс был выключен, включил. Диалоговое окно ответило мне цитирую “Не удалось запустить службу Apache 2.4 на Локальный компьютер. Ошибка 1067: Процесс неожидано завершен”.

Удивился, погуглил. Нашел пост с переустановкой сервиса из реестра HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices nameservices

с запуском команды sfc /scannow

но уже после старта команды я догадался что тщетно трачу время.

В консольке написало что есть ошибки читай лог файл, а последняя строчка лога говорит что все ок. А в целом не нашел упоминание Апача в логе.

————-

2021-07-21 03:39:29, Info CSI 00000336 Verify and Repair Transaction completed. All files and registry keys listed in this transaction have been successfully repaired

————-

Позже вернул запись риестра на место, благо экспортировал ее.

Запуск с консоли апача не чего не дал и не выписал не чего … В логах апача (error.log) после старта есть запись “httpd.pid overwritten — Unclean shutdown of previous Apache run?” Что может значить я не знаю. Поиск по ключевым словам мне решений проблемы не дал. Подскажите как быть, и что сделать ? Сервачок использую для записи видеонаблюдения, а апач, с пыхом, и мусколом, для доступа к контенту. Linux лучше был бы, но возни не меньше …

error.log

.htaccess не работает apache

по умолчанию Apache запрещает использование an .файл htaccess для применения правил перезаписи, поэтому

Шаг 1-Включение mod_rewrite (если не включено) Во-первых, нам нужно активировать mod_rewrite. Он доступен, но не включен с чистой установкой Apache 2.

это активирует модуль или предупредит вас, что модуль уже включен. Чтобы эти изменения вступили в силу, перезапустите Apache.

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

Шаг 2 – Настройка .реврайт Откройте файл конфигурации Apache по умолчанию с помощью nano или любимого текстового редактора.

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

/ etc/apache2/sites-available / 000-по умолчанию.conf

сохранить и закрыть файл. Чтобы эти изменения вступили в силу, перезапустите Apache.

сделано. Ваш.htacess должны работать.эта ссылка может действительно помочь кому-тоhttps://www.digitalocean.com/community/tutorials/how-to-rewrite-urls-with-mod_rewrite-for-apache-on-ubuntu-16-04

Авторизация пользователя при обращении к web сервису 1С

Если попытаться получить доступ к web сервису опубликованному под Apache не исправляя файл default. vrd, то появиться стандартный диалог авторизации:

Диалог авторизации на web сервисе 1С

В тестовой базе был заведен тестовый пользователь IUSR с полными правами с пустым паролем. Если ввести в диалог в качестве логина этого пользователя, то авторизация пройдет успешно и отобразиться либо XML файл, либо ссылка на него (см. выше).

Можно исключить запрос авторизационной информации вбив логин и пароль прямо в файл default. vrd, что, конечно, не рекомендуется с точки зрения безопасности, но иногда необходимо.

Это все. В моем случае каких-то дополнительных правок конфиг файлов не потребовалось.

В некоторых статьях указывалось, что нужно убрать из httpd. conf опцию «Options None«. У меня работает в обоих вариантах, т. е. когда строка присутствует и когда она удалена.

Настройка виртуальных хостов Apache2 в Ubuntu

Виртуальные хосты позволяют размещать более одного веб-сайта на одном сервере Apache2. В Nginx это называется серверными блоками.

По умолчанию Apache2 поставляется с одним виртуальным хостом, а его конфигурационная информация хранится в файле /etc/apache2/sites-enabled/000-default.conf. Кроме того, корень веб-сайта по умолчанию — располагается в  /var/www/html.

Настроить новый виртуальный хост очень просто. Следуйте инструкции и просто замените setiwik своим собственным зарегистрированным доменным именем.

Создание виртуального хоста

Создайте новый конфигурационный файл виртуального хоста, скопировав файл по умолчанию следующим образом.

Далее отключите виртуальный хост по умолчанию с помощью приведенной ниже команды.

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

Затем сделайте учетную запись Пользователя службы Apache2 (www-data) и группу (www-data) владельцами корневого каталога документа. Это можно сделать следующим образом.

Далее, предоставьте учетной записи Пользователя службы Apache2 (www-data) полный доступ к корневому каталогу документа с помощью следующей команды.

Создание индексного файла сайта

Теперь создайте индексный файл в корневом каталоге документа с помощью команды:

Скопируйте и вставьте пример HTML-кода ниже.

Сохраните и закройте файл index.html.

Измените конфигурацию виртуального хоста

Затем отредактируйте новый файл конфигурации виртуального хоста с помощью следующей команды.

Теперь раскомментируйте строку, которая начинается с ServerName, а затем замените www.example.com с фактическим URL-адресом веб-сайта. А так же замените /var/www/html новым корневым путем документа.

Ниже приведен пример того, что ожидается после внесения изменений.

Сохраните и закройте файл конфигурации виртуального хоста.

Включите виртуальный хост Apache2

Чтобы включить виртуальный хост Apache2, выполните команду.

Наконец, перезапустите веб-сервер Apache2 с помощью:

Теперь мой сайт доступен через www.setiwik.ru как показано на рисунке ниже.


Добро пожаловать в виртуальный хост setiwik

Публикация web сервиса 1С на IIS 7.5

Как уже упоминал выше, с публикацией web сервиса на IIS 7.5 с первого раза у меня не задалось, хотя тонкий клиент запускается без проблем. Поскольку пароль в конфигурационном файле по соображениям безопасности меня не устраивал, вернулся к вопросу настройки IIS. Был опубликован web сервис с именем wsIIS и именем сервиса ServiceIIS и alias-ом serviceIIS.1cws. Галка в чекбоксе «Использовать аутентификацию операционной системы на веб-сервере» для простоты эксперимента была снята.

Публикация web сервиса 1С в IIS 7.5.

Корректная ссылка в моем случае: https://s-1c-1-hw/wsIIS/ws/ServiceIIS? wsdl. При попытке зайти из Chrome/IE получаем ошибку возвращенную IIS:

Configuration Files and Directives

The Apache HTTP Server is configured via simple text files.
These files may be located any of a variety of places, depending on how
exactly you installed the server. Common locations for these files may
be found in
the httpd wiki. If you installed httpd from source, the default
location of the configuration files is
. The default configuration file is
usually called . This, too, can vary in
third-party distributions of the server.

The configuration is frequently broken into multiple smaller files,
for ease of management. These files are loaded via the directive. The names or locations of
these sub-files are not magical, and may vary greatly from one
installation to another. Arrange and subdivide these files as
makes the most sense to you. If the file arrangement
you have by default doesn’t make sense to you, feel free to rearrange it.

The server is configured by placing configuration directives in these
configuration files. A directive is a keyword followed by one or more
arguments that set its value.

The question of «Where should I put that
directive?» is generally answered by considering where you want a
directive to be effective. If it is a global setting, it should appear
in the configuration file, outside of any , , , or other section. If it is to
apply only to a particular directory, then it should go inside a
section referring to
that directory, and so on. See the Configuration
Sections document for further discussion of these sections.

Виды почтовых сервисов

На программном уровне существует несколько видов обработки электронной почтовой корреспонденции. К первой группе относятся виртуальные сервисы, доступные чаще всего в бесплатном исполнении через интернет-соединение на сайте почтового сервера. Это всем известные ресурсы:

Более подробную информацию о значениях ответов SMTP можно получить на сайтах популярных почтовых сервисов:

Ко второй группе относятся почтовые клиенты – программы, обладающие более расширенным функционалом, чем виртуальные сервисы. Наиболее популярными и универсальными почтовыми клиентами для Windows являются:

Принципы работы почтовых клиентов несколько отличаются от процесса обработки корреспонденции виртуальными серверами. При отправке сообщения программа отсылает его не напрямую конечному получателю, а ретранслирует через сервер-релей. Этот процесс осуществляется чаще всего с использованием протокола SMTP, а получение корреспонденции обычно происходит с помощью IMAP или POP.

О вариантах выбора и способах создания корпоративных почтовых сервисов более подробно можно прочитать здесь: Что такое почтовый сервер и зачем он нужен.

Как решить проблему с Apache?

systemctl status apache2.service

Дальше вы можете проверить конфигурационный файл на корректность с помощью такой команды:

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

Таким же образом проверяем папку с логами:

Как видите, у меня папка /var/www/public_html принадлежит пользователю root, но на папку public_html установлены права чтения и записи для всех пользователей. Поэтому проблем нет, а на папку с логами в качестве группы установлена adm, в эту группу входит пользователь www-data, так что тут тоже проблем нет. Если у вас что-то отличается и вы видите что прав недостаточно, то либо измените владельца папки с файлами веб-сайтов на www-data, либо дайте больше разрешений:

Также, если в вашей системе включен SELinux, то вы можете его отключить на время, чтобы понять не в нем ли проблема:

Другой момент, который может вызвать ошибку, это если на порту, который вы хотите использовать для веб-сервера уже запущен какой-то процесс, например, nginx или lighttpd, в таком случае, его нужно остановить:

sudo systemctl stop nginx sudo systemctl stop lighttpd

Или вы можете попытаться изменить порт на другой, для этого откройте конфигурационный файл веб-сервера и найдите там строку Listen:

Если такой строки еще нет, то вы можете ее создать. Далее просто измените номер порта с 80 на любой удобный, например, 8080

Failed to resolve server name for localhost

И дальше не запускалась. Чтобы решить эту проблему нужно было либо создавать виртуальные хосты, либо прописать в основном конфигурационном файле директиву ServerName, в которой будет указанно имя этого компьютера:

А также ассоциировать это имя с localhost в файле hosts:

Дальше было достаточно перезапустить Apache и все начинало работать.

Как решить проблему с Apache?

Самое первое что вам нужно сделать в любом случае, если что-то не работает — это смотреть логи и информацию об ошибках. Только там вы сможете точно узнать что произошло. Самый простой способ это сделать, воспользоваться подсказкой systemd, которую она выдает при ошибке запуска:

То есть нам нужно выполнить systemctl status apache2.service или journalctl -xe чтобы получить больше сведений. Выполните сначала первую команду:

Мы сразу же видим причину проблемы — ошибка в конфигурационном файле, в директиве Listen, а теперь пробуем другую команду:

Только ее нужно выполнять сразу же, как была выполнена попытка перезапуска apache, потому что скоро буфер лога будет затерт и вы там ничего не увидите. Но здесь сообщается то же сообщение об ошибке в конфигурационном файле, даже видно строку — 54. Еще можно посмотреть error.log, но туда сообщения пишутся не всегда:

Дальше вы можете проверить конфигурационный файл на корректность с помощью такой команды:

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

Следующая важная проблема — это права доступа. Если Apache запускается от имени пользователя www-data, то у этого пользователя должен быть доступ на чтение к папке где лежат документы веб-сайта, а также ко всем папкам выше нее, также должен быть доступ на чтение и запись для логов и конфигурационных файлов. Проверить права можно с помощью команды namei, это аналог ls, который отображает полное дерево прав:

Таким же образом проверяем папку с логами:

Как видите, у меня папка /var/www/public_html принадлежит пользователю root, но на папку public_html установлены права чтения и записи для всех пользователей. Поэтому проблем нет, а на папку с логами в качестве группы установлена adm, в эту группу входит пользователь www-data, так что тут тоже проблем нет. Если у вас что-то отличается и вы видите что прав недостаточно, то либо измените владельца папки с файлами веб-сайтов на www-data, либо дайте больше разрешений:

Также, если в вашей системе включен SELinux, то вы можете его отключить на время, чтобы понять не в нем ли проблема:

Другой момент, который может вызвать ошибку, это если на порту, который вы хотите использовать для веб-сервера уже запущен какой-то процесс, например, nginx или lighttpd, в таком случае, его нужно остановить:

Или вы можете попытаться изменить порт на другой, для этого откройте конфигурационный файл веб-сервера и найдите там строку Listen:

Если такой строки еще нет, то вы можете ее создать. Далее просто измените номер порта с 80 на любой удобный, например, 8080

Дальше про ошибку старта при загрузке. Такая ошибка случалась в версиях ниже 2.2.4, если вы используете эту или более новую версию, то эта проблема вам не страшна. Она была вызвана тем, что Apache с SSL не хотел запускаться без папки /var/run/apache2, которой не было на момент загрузки. Самый простой способ решить проблему — отключить модуль ssl:

Второй способ более сложный — добавьте в конфигурационный файл /etc/init.d/apache2 такую строку:

Последняя проблема, о которой мы говорили — это когда неверно указанно имя сервера, на котором запускается Apache. Этой ошибке тоже были подвержены только ранние версии программы. Тогда при попытке запуска программа выдавала сообщение:

И дальше не запускалась. Чтобы решить эту проблему нужно было либо создавать виртуальные хосты, либо прописать в основном конфигурационном файле директиву ServerName, в которой будет указанно имя этого компьютера:

А также ассоциировать это имя с localhost в файле hosts:

Дальше было достаточно перезапустить Apache и все начинало работать.

Настройка виртуальных хостов Apache?

Я уже подробно рассматривал как настроить Apache в отдельной статье. Поэтому не буду полностью расписывать здесь все конфигурационные файлы. Остановимся на файлах виртуальных хостов. Для удобства они вынесены в отдельные папки:

  • /etc/apache2/sites-available
  • /etc/apache2/sites-enabled

Ясно, что это разделение очень условно. Вы можете его убрать и добавлять свои виртуальные хосты прямо в основной конфигурационный файл. Все файлы из этих папок подключаются к нему с помощью директив Include. Но ведь так намного удобнее. В папке sites-available находятся все конфигурационные файлы, но они пока еще не активированы и отсюда не импортируются никуда. При активации нужного хоста на него просто создается ссылка в папку /etc/apache2/sites-enabled.

Для примера, создадим новый конфигурационный файл для виртуального хоста site1.ru. Для этого просто скопируем существующую конфигурацию для хоста по умолчанию — 000-default:

Сначала рассмотрим синтаксис того, что вы увидите в этом файле:

<VirtualHost адрес_хоста_для прослушивания:порт>ServerName доменServerAlias псевдоним_доменаServerAdmin емейл@администратораDocumentRoot /путь/к/файлам/сайтаErrorLog /куда/сохранять/логи/ошибок/error.logCustomLog /куда/сохранять/логи/доступа/access.log combined</VirtualHost>

Это минимальная конфигурация, которую вам нужно указать, чтобы создать виртуальный хост Apache. Конечно, здесь вы можете использовать и другие директивы Apache, такие как Deny, Allow и многие другие. А теперь рассмотрим наш пример для тестового сайта site1.ru:

Здесь мы используем звездочку вместо ip адреса, это значит, что веб-сервер будет слушать соединения на всех адресах, как на внешнем, так и на localhost. Порт 80, это порт по умолчанию. Затем указываем домен, электронный адрес администратора, и путь к папке, в которой будут находиться данные сайта. Две строчки Log говорят куда сохранять логи, но добавлять их необязательно. Дальше, нам нужно активировать этот хост. Мы можем вручную создать ссылку или использовать уже заготовленную команду:

Затем перезапустите Apache:

И нам осталось все это протестировать. Если ваш сервер имен еще не направляет запросы к домену на ваш ip, а вы хотите уже проверить как все работает, можно пойти обходным путем. Для этого достаточно внести изменения в файл /etc/hosts на машине, с которой вы собрались открывать сайт. Этот файл, такой себе локальный DNS. Если компьютер находит ip для домена в нем, то запрос в интернет уже не отправляется. Если вы собираетесь тестировать с той же машины, на которую установлен Apache2, добавьте:

Если же это будет другой компьютер, то вместо 127.0.0.1 нужно использовать адрес вашего сервера, на котором установлен Apache. Затем можете открыть сайт в браузере:

Как решить проблему с Apache?

systemctl status apache2.service

Дальше вы можете проверить конфигурационный файл на корректность с помощью такой команды:

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

Таким же образом проверяем папку с логами:

Как видите, у меня папка /var/www/public_html принадлежит пользователю root, но на папку public_html установлены права чтения и записи для всех пользователей. Поэтому проблем нет, а на папку с логами в качестве группы установлена adm, в эту группу входит пользователь www-data, так что тут тоже проблем нет. Если у вас что-то отличается и вы видите что прав недостаточно, то либо измените владельца папки с файлами веб-сайтов на www-data, либо дайте больше разрешений:

Также, если в вашей системе включен SELinux, то вы можете его отключить на время, чтобы понять не в нем ли проблема:

Другой момент, который может вызвать ошибку, это если на порту, который вы хотите использовать для веб-сервера уже запущен какой-то процесс, например, nginx или lighttpd, в таком случае, его нужно остановить:

sudo systemctl stop nginx sudo systemctl stop lighttpd

Или вы можете попытаться изменить порт на другой, для этого откройте конфигурационный файл веб-сервера и найдите там строку Listen:

Если такой строки еще нет, то вы можете ее создать. Далее просто измените номер порта с 80 на любой удобный, например, 8080

Failed to resolve server name for localhost

И дальше не запускалась. Чтобы решить эту проблему нужно было либо создавать виртуальные хосты, либо прописать в основном конфигурационном файле директиву ServerName, в которой будет указанно имя этого компьютера:

А также ассоциировать это имя с localhost в файле hosts:

Дальше было достаточно перезапустить Apache и все начинало работать.

Просмотр логов OpenServer

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

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

Сжатие баз данных 1С:Предприятие в MS SQL Server Промо

Тема сжатия баз данных 1С в настоящий момент довольно часто обсуждается. Достоинства сжатия известны – уменьшение размера базы данных, уменьшение нагрузки на дисковую подсистему и некоторое ускорение выполнения тяжелых операций чтения/записи. Из недостатков – небольшое увеличение нагрузки на процессоры сервера СУБД за счет расхода ресурсов на компрессию/декомпрессию данных. Но при использовании в качестве MSSQL и DB2 (за Oracle и PostgreSQL не скажу, т.к. не знаю) есть один «подводный камень» — при выполнении реструктуризации происходит декомпрессия новых таблиц и индексов. Происходить это может как при выполнении обновления конфигурации с изменением структуры метаданных, так и при выполнении тестирования и исправления ИБ (реиндексация пересоздает только индексы, а реструктуризация – и таблицы, и индексы). «Проблема» кроется в том, что признак сжатия устанавливается индивидуально для каждой таблицы и индекса.

Выводы

Добавить в избранное

Главное меню » Операционная система Linux » Как запустить, остановить или перезапустить Apache

Если вы разработчик или системный администратор, есть вероятность, что вы имеете дело с Apache на регулярной основе.

Запуск, остановка и перезапуск/перезагрузка являются наиболее распространенными задачами при работе с веб-сервером Apache. Команды для управления службой Apache различны в разных дистрибутивах Linux.

Большинство последних дистрибутивов Linux используют SystemD в качестве системы инициализации по умолчанию и менеджера сервисов. Старые дистрибутивы основаны на SysVinit и используют сценарии инициализации для управления сервисами. Еще одно отличие – название сервиса. В Ubuntu и Debian служба Apache называется apache2, а в системах на базе Red Hat, таких как CentOS, имя службы httpd.

В этой статье мы объясним, как запускать, останавливать и перезапускать Apache в самых популярных дистрибутивах Linux.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Ваша ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: