линукс не открываются сайты

вот на всякий случай файл /etc/ppp/options.pptp

lock
+chap
nobsdcomp
nodeflate
noaccomp
nopcomp
mtu 1499
mru 1499
defaultroute
noipdefault
ipcp-accept-local
ipcp-accept-remote
ktune

А может настройки fw для ppp+ ифейса?

ip он определяет нормально. а вот пинг не идет.

MSS не как не влияет на ping.

ИМХО это многовато, поставь 1380. Запусти tcpdump на этот интерфейс, убедись что icmp пакеты уходят, и что с нужным ip-адресом.

попробуй поставить mtu/mru 1560

Re: Re: Re: postfix 2.1 помогите с файлом body_checks

Флажок DF находится в заголовке ip, а не tcp. Называет этот механизм Path MTU Discovery, которому сто лет в обед. Это абсолютно нормально. А проблемы в том, что некоторые «грамотеи» запрещают icmp-пакеты (destination-unreachable/fragmentation-needed).

>MSS не как не влияет на ping.

Вопрос стоял, почему некоторые сайты не открываются, одна из причин,
какраз размер MSS, можете мне поверить:), а через PPTP тем более.
Что до ICMP, то их могут просто фильтровать, и это делают многие.

у меня они начали открываться после добавления строки в sysctl.conf net.ipv4.tcp_ecn=0

это не помогло, хотя тут наверно еще подумать надо.

установка mtu/mru 1560 или 1380 тоже не помогла, всё осталось без изменений.

маршруты сейчас вот такие:

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
80.252.133.175 172.20.35.254 255.255.255.255 UGH 0 0 0 eth0
192.168.254.254 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
172.20.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 192.168.254.254 0.0.0.0 UG 0 0 0 ppp0

Источник

Устранение общих неполадок сайта на сервере Linux

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

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

Типичные ошибки

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

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

Это лишь некоторые из самых распространенных проблем, с которыми сталкиваются администраторы во время сбоя сайта. Точную проблему, как правило, можно обнаружить в логах разных компонентов; также можно обратиться к страницам ошибок в браузере.

Проверка логов

Прежде чем приступить к устранению неполадок, проверьте логи веб-сервера и других связанных с ним компонентов. Обычно эти файлы хранятся в каталоге /var/log.

К примеру, логи Apache на сервере Ubuntu обычно хранятся в каталоге /var/log/apache2. Просмотрите логи и найдите в них информацию об ошибках. Если вы используете БД, ознакомьтесь с ее логами.

Также нужно узнать, оставляют ли сами процессы сообщения об ошибках при запуске сервиса. Если при попытке открыть страницу вы получаете ошибку, на странице ошибки можно найти подсказки по её устранению.

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

Проверка веб-сервера

Для начала нужно убедиться, что веб-сервер установлен и может обслуживать сайт.

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

Если вы работаете в системе Ubuntu или Debian и хотите установить веб-сервер Apache, вы можете ввести:

sudo apt-get update
sudo apt-get install apache2

В этих системах процесс Apache называется apache2.

Чтобы установить Nginx в Ubuntu или Debian, введите:

sudo apt-get update
sudo apt-get install nginx

Процесс Nginx называется nginx.

Чтобы установить Apache в CentOS или Fedora, введите:

sudo yum install httpd

Процесс Apache называется httpd.

Чтобы установить Nginx в CentOS или Fedora, введите:

Процесс Nginx называется nginx.

Состояние веб-сервера

Затем нужно убедиться, что веб-сервер запущен.

Есть много способов узнать, запущен ли он. Один из общих методов – команда netstat.

Она покажет вам все процессы, которые используют порты сервера. Затем можно использовать grep, чтобы найти имя требуемого процесса.

Примечание: Вместо apache2 укажите имя искомого процесса веб-сервера.

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

В таком случае нужно запустить его.

Чтобы запустить Apache2 в Ubuntu, введите:

sudo service apache2 start

В CentOS для этого нужно ввести:

sudo /etc/init.d/httpd start

Состояние веб-сервера можно снова проверить с помощью netstat.

Ошибки в конфигурациях

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

Конфигурационные файлы этих сервисов обычно находятся в подкаталогах каталога /etc/.

Таким образом, основной конфигурационный каталог Apache в Ubuntu можно найти так:

Конфигурационный каталог Apache в CentOS:

Конфигурация веб-сервера хранится в различных файлов. Если сервис не запускается, она обычно указывает конфигурационный файл и строку, в которой допущена ошибка. Проверьте этот файл.

Каждый веб-сервер также предоставляет возможность проверить синтаксис конфигурации с помощью специальных команд.

В Apache для проверки синтаксиса используется apache2ctl или apachectl.

apache2ctl configtest
AH00558: apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.0.1. Set the ‘ServerName’ directive globally to suppress this message
Syntax OK

Команда предоставляет информацию о настройках и сообщает об ошибках, если таковые есть (в данном случае ошибок не обнаружено).

Чтобы проверить синтаксис Nginx, нужно ввести:

Команда проверяет синтаксис и сообщает об ошибках. Для примера попробуйте удалить точку с запятой в конце какой-либо строки в файле (общая ошибка в конфигурации Nginx), и команда выведет такое сообщение:

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

Проверка портов

Обычно веб-сервер использует порт 80 для обычного трафика и 443 для трафика TLS/SSL. Если эти порты заблокированы, вы не сможете получить доступ к сайту.

Проверить порты можно с помощью локальной машины и команды netcat.

Укажите IP-адрес сервера и требуемый порт:

Эта команда проверит, открыт ли порт 80 на сервере по адресу 111.111.111.111. Если он заблокирован, команда будет безуспешно пытаться создать соединение. Вы можете остановить этот процесс, нажав Ctrl-C в окне терминала.

Если порты недоступны, проверьте конфигурацию брандмауэра. Возможно, вам нужно открыть порт 80 или 443.

Проверка настроек DNS

Если вы можете получить доступ к сайту по IP-адресу, а по доменному имени – нет, проверьте параметры DNS.

Чтобы пользователи могли попасть на сайт по домену, нужно создать запись А или АААА, которые будут указывать на IP-адрес сервера.

Чтобы проверить запись А, введите:

Строка, которая появится на экране, должна содержать IP-адрес сервера. Чтобы проверить запись АААА (для IPv6), введите:

Имейте в виду, изменение настроек DNS занимает довольно много времени. В течение некоторого времени после внесения изменений вы можете получить непоследовательные результаты запросов, поскольку настройки DNS еще не обновлены.

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

Если записи DNS настроены правильно, проверьте файлы виртуальных хостов Apache и Nginx и убедитесь, что они содержат правильный домен сайта.

В Apache найдите этот раздел:

Этот виртуальный хост будет обслуживать домен example.com по порту 80.

В Nginx домен указывается в этом блоке:

Такой блок будет также обслуживать домен example.com по порту 80.

Настройки корневого каталога

Также нужно убедиться, что веб-сервер знает, где искать файлы сайта.

Каждый виртуальный хост Apache и Nginx определяет корневой каталог сайта. если Он указан неправильно, сервер вернёт ошибку, потому что не найдет запрашиваемый контент.

В Apache каталог document root настраивается с помощью директивы DocumentRoot:

Согласно этим настройкам веб-сервер будет искать файлы в каталоге /var/www/html. Если в этом каталоге на самом деле нет файлов сайта, укажите в настройках правильный каталог.

В Nginx корневой каталог определяет директива root.

Согласно этому файлу Nginx будет искать данные для этого домена в каталоге /usr/share/nginx/html.

Проверка индексных файлов

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

Когда пользователь запрашивает каталог, сервер выдает ему индексный файл (index.html или index.php, в зависимости от конфигураций).

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

DirectoryIndex index.html index.php

Когда запрашивается каталог, Apache сначала будет искать файл index.html; если он не сможет обслужить этот файл, он найдёт и обслужит index.php.

Вы можете настроить порядок обслуживания индексных файлов. Для этого можно отредактировать файл mods-enabled/dir.conf, в котором хранятся настройки сервера по умолчанию. Если сервер не обслуживает индексные файлы, убедитесь, что такие файлы есть в корневом каталоге сайта.

В Nginx индексными файлами управляет директива index:

Проверка прав собственности и доступа

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

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

В Ubuntu и Debian серверы Apache и Nginx работают с помощью пользователя www-data, который входит в группу www-data.

В CentOS и Fedora веб-сервер Apache работает как пользователь apache, который входит в группуapache; а Nginx использует учетную запись nginx, которая входит в группу nginx.

Вы можете посмотреть каталоги и файлы, в которых хранится контент сайта:

Пользователь и группа веб-сервера должны иметь право на чтение и запуск каталогов и право на чтение файлов с контентом сайта. Чтобы загрузить, записать или изменить контент, веб-сервер также должен иметь права на запись в файлах и каталогах.

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

Чтобы передать права собственности на файл, введите:

sudo chown user_owner:group_owner /path/to/file

Точно так же можно передать права на каталог, нужно только добавить флаг –R.

Проверка ограничений доступа

Возможно, некоторые конфигурационные файлы блокирую доступ к файлам сайта, которые нужно обслужить.

Эти файлы позволяют ограничить доступ несколькими способами. В Apache 2.4 доступ к каталогам ограничивается так:

AllowOverride None
Require all denied

Эта строка блокирует доступ к содержимому этого каталога. В Apache 2.2 доступ блокируется так:

AllowOverride None
Order deny,allow
Deny from all

Если вы найдете в конфигурационном файле такую директиву для каталога, в котором хранится контент сайта, вы не сможете открыть сайт.

В Nginx ограничения доступа настраиваются с помощью директивы deny и хранятся в виртуальных хостах или главных конфигурационных файлах:

location /usr/share <
deny all;
>

Проверка базы данных

Если сайт использует СУБД (например, MySQL, PostreSQL или MongoDB), убедитесь, что она запущена.

Для этого используется netstat. Команда grep поможет быстро найти в выводе процесс БД.

Как видите, в данном случае сервис работает.

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

Например, параметры подключения к базе данных сайта WordPress хранятся в файле wp-config.php. Убедитесь, что DB_NAME, DB_USER и DB_PASSWORD указаны правильно.

Чтобы проверить информацию, указанную в файле, попробуйте подключиться к БД вручную:

Если вы не можете подключиться к БД с помощью этих учетных данных, нужно исправить ошибки в параметрах БД.

Передача динамического контента

Если сайт использует БД, он почти наверняка использует язык программирования (например, PHP) для обработки запросов динамического контента, извлечения информации из базы данных и визуализации результатов.

Если это так, убедитесь, что веб-сервер может передавать запросы процессору.

В Apache достаточно убедиться, что модуль mod_php5 установлен и включен. В системах Ubuntu и Debian для этого введите:

sudo apt-get update
sudo apt-get install php5 libapache2-mod-php5
sudo a2enmod php5

В CentOS/Fedora это такие команды:

sudo yum install php php-mysql
sudo service httpd restart

В Nginx проверить это немного сложнее. У Nginx нет модуля PHP, который можно включить, поэтому нужно убедиться, что php-fpm установлен и включен в конфигурациях веб-сервера.

На сервере Ubuntu или Debian убедиться, что все компоненты установлены, можно с помощью команды:

sudo apt-get update
sudo apt-get install php5-fpm php5-mysql

В CentOS и Fedora используйте:

sudo yum install php-fpm php-mysql

Поскольку PHP-процессор не входит в Nginx, он должен передавать файлы в PHP. Больше об этом можно узнать в руководстве Установка LEMP stack на Ubuntu 14.04.

Дальнейшие действия

Если ничего из вышеперечисленного не помогло, снова проверьте логи.

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

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

Источник

Компьютерный форум

Здесь решают различные задачи сообща. Присоединяйтесь!

Linux не прогружает веб-страницы

Модератор: Tim308

Linux не прогружает веб-страницы

Сообщение wasd » 30 июл 2016, 22:17

Linux не прогружает веб-страницы

Сообщение Endless8Space » 30 июл 2016, 22:52

вот сейчас непонятно было

Linux не прогружает веб-страницы

Сообщение wasd » 30 июл 2016, 23:23

Linux не прогружает веб-страницы

Сообщение 6yHTapb » 31 июл 2016, 03:26

Linux не прогружает веб-страницы

Сообщение wasd » 31 июл 2016, 12:59

Linux не прогружает веб-страницы

Сообщение 6yHTapb » 31 июл 2016, 14:30

Linux не прогружает веб-страницы

Сообщение wasd » 31 июл 2016, 16:06

Linux не прогружает веб-страницы

Сообщение 6yHTapb » 31 июл 2016, 17:41

Linux не прогружает веб-страницы

Сообщение wasd » 31 июл 2016, 18:38

Источник

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

Подскажите что за беда. Есть шлюз на CentOS, есть локалка, в локалки разные компики есть: винда, маки, линукс. Сегодня перестал открываться один,очень важный для работы, сайт. Ну перестал и перестал, но каково было мое удивление когда я узнал что перестал он открываться только на Linux компиках, маки и винды все открывают. Думал что MTU но в iptables стоит правило для MTU. Что может быть еще? В настройках интерфейсов ничего не меняло, вообще никакие настройки не трогались.

Может быть на сайте забанены линуксовые юзерагенты?

только эта идея и приходит в голову, даже telnet не садится на 80й порт

даже telnet не садится на 80й порт

Тогда это точно не бан по юзерагенту. А на шлюзе tcpdump запустить и посмотреть что происходит?

А по айпишнику пробовал? ДНСы одинаковые на виндах и линуксе? Пробовал открытые?

ПО ip тоже не работает, DNS один и тот же для все сети и резолвы на никсах винде и маке одинаковые. Причем если на винде на виртуалке стоит линукс то все работает и из линукса, который на виртуалке, а если на линуксе на виртуалке стоит винда, то не работает и из винды

ну давай посмотрим
iptables-save
и
/etc/hosts

Источник

Не открывается локальный сайт на Линукс

Пишу бота на питоне. Запустил Фласк, по адресу localhost:5000 на пк с линукс открывается страница, которую он формирует. Однако при попытке открыть эту страницу через локалку по ip:5000 вылетает ошибка: Не удается получить доступ к сайту. Помогите советом, подскажите, что делать…

1 ответ 1

Если я правильно понимаю сервер запущен слушать на localhost:5000, но ты питаешься получить доступ к нему из другого устройства в подсети. Но это действительно не сработает.

Проблема в том что когда ты говоришь серверу слушать какой-то адрес, это значит принимать соединения с интерфейса который связан с этим адресом. 127.0.0.1 назначен интерфейсу loopback (lo при выводе ip addr), и предназначен для работы внутри устройства.

Но если необходимо предоставить доступ не только устройству необходимо изменит интерфейс, простейший вариант слушать 0.0.0.0:5000, это дефолтный хост, все запросы необработанные определенным интерфейсом в конце концов попадут туда, доступ в таком случае можно получит с устройства, из локальной сети и даже из Интернета.

Но если необходимо ограничить доступ только для локальной сети, тогда надо слушать на адресе из этой сети, напимер 192.168.0.10:5000, или что-то в этом духе, в зависимости от IP-адреса локальной сети.

Источник

Понравилась статья? Поделиться с друзьями:

Не пропустите наши новые статьи:

  • линукс не открывает exe файлы
  • линукс не запускается черный экран
  • линукс не грузится с флешки
  • линукс не видит флешку что делать
  • линукс не видит флешку fat32

  • Операционные системы и программное обеспечение
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest
    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии