Разное

Http localhost 80: localhost | localhost 80 | localhost 8080

12.08.2023

Можно на пальцах объяснить, про суть localhost и порты? — Хабр Q&A

Если человек, не знакомый с арифметикой захочет понять, что означает «два плюс три равно пять», ему недостаточно объяснить, что такое «два», или что такое «плюс»! Так же и тут. Для понимания, что такое localhost, сначала нужно понять, что такое хост вообще, что такое сеть, что такое имя хоста, что такое сервер, как это все связано с адресами и номерами портов, а те — с, собственно, одним конкретным компом (который, в зависимости от контекста, могут называть и «хостом», и «сервером», и «localhost»). Так что, на всякий случай:

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

Когда к хосту обращаются по имени, это имя сначала разрешается в адрес хоста, по которому, собственно, и происходит обращение. В сети этим обычно занимается DNS (который, кстати говоря, тоже является сервером. .. но это уже другая история, которая сейчас не так важна для понимания сути), но если DNS нет, соответствие имен-адресов можно прописать в файле hosts на самом хосте. Если некое имя хоста и там не прописано, обратиться к нему по имени

не удастся… хотя прямое обращение по адресу будет работать.

Сервер — это программа, отвечающая на запросы из сети. Комп, на котором она выполняется, также называют «сервером». Причем, даже если выполнение программы приостановлено (например, проводят профилактику или программа-сервер упала), этот комп все равно будут называть «сервером», ибо он предназначен, в основном, для выполнения этой программы.

На одном компе (=хосте, сервере) может одновременно выполняться несколько разных программ-серверов. Для того, чтоб обратиться к конкретной из них (адрес-то у всех один и тот же!), в протоколе TCP/IP используются разные

номера портов.

Если на компе запущен, например, HTTP сервер (= Webserver, например, Nginx или Apache), он «слушает» порт 80, а если не запущен, порт 80 никто не слушает, и если обратиться к такому хосту (= серверу, компу) по его адресу в порт 80, никакого ответа не придет. .. хотя сам хост и будет доступен.

Для разных общеизвестных типов программ-серверов (в этом случае также говорят о «сервисах» или же «протоколах», что в данном контексте практически одно и то же) принято использовать общеизвестные номера портов, а для наиболее распространенных (как тот же HTTP) можно даже не указывать номер порта при обращении, как мы обычно и делаем в строке броузера, т.к. клиент автоматически использует номер порта по умолчанию, в данном случае 80. Но, в принципе, любой сервис можно (переконфигурировав) использовать на любом порту… если, конечно, в этом есть смысл. Единственно, что нельзя — одновременно использовать разные серверы на одном порту.

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

локально, а чтоб не гадать, по какому адресу или имени это делать, ввели понятие localhost.

localhost — «общеизвестное» имя компа для самого себя и ему соответствует IP адрес 127.0.0.1. Это — общепринятая договоренность, которую просто нужно знать. Если говорят «установить сервер на localhost», это означает «установить на тот самый комп, с которого и обращаться к этому серверу».

Server names

Wildcard names
Regular expressions names
Miscellaneous names
Internationalized names
Virtual server selection
Optimization
Compatibility

Server names are defined using the server_name directive and determine which server block is used for a given request. See also “How nginx processes a request”. They may be defined using exact names, wildcard names, or regular expressions:

server {
    listen       80;
    server_name  example.org  www.example.org;
    ...
}
server {
    listen       80;
    server_name  *.example.org;
    ...
}
server {
    listen       80;
    server_name  mail. (www\.)?(?<domain>.+)$;
    location / {
        root   /sites/
$domain
; } }

The PCRE library supports named captures using the following syntax:

?<name>Perl 5.10 compatible syntax, supported since PCRE-7.0
?'name'Perl 5.10 compatible syntax, supported since PCRE-7.0
?P<name>Python compatible syntax, supported since PCRE-4.0
If nginx fails to start and displays the error message:

pcre_compile() failed: unrecognized character after (?< in ...

this means that the PCRE library is old and the syntax “

?P<name>” should be tried instead. The captures can also be used in digital form:

server {
    server_name   ~^(www\. )?(.+)$;
    location / {
        root   /sites/$2;
    }
}

However, such usage should be limited to simple cases (like the above), since the digital references can easily be overwritten.

Miscellaneous names

There are some server names that are treated specially.

If it is required to process requests without the “Host” header field in a server block which is not the default, an empty name should be specified:

server {
    listen       80;
    server_name  example.org  www.example.org  "";
    ...
}

If no server_name is defined in a server block then nginx uses the empty name as the server name.

nginx versions up to 0.8.48 used the machine’s hostname as the server name in this case.

If a server name is defined as “$hostname” (0.9.4), the machine’s hostname is used.

If someone makes a request using an IP address instead of a server name, the “Host” request header field will contain the IP address and the request can be handled using the IP address as the server name:

server {
    listen       80;
    server_name  example. org
                 www.example.org
                 ""
                 192.168.1.1
                 ;
    ...
}

In catch-all server examples the strange name “_” can be seen:

server {
    listen       80  default_server;
    server_name  _;
    return       444;
}

There is nothing special about this name, it is just one of a myriad of invalid domain names which never intersect with any real name. Other invalid names like “--” and “!@#” may equally be used.

nginx versions up to 0.6.25 supported the special name “*” which was erroneously interpreted to be a catch-all name. It never functioned as a catch-all or wildcard server name. Instead, it supplied the functionality that is now provided by the server_name_in_redirect directive. The special name “*” is now deprecated and the server_name_in_redirect directive should be used. Note that there is no way to specify the catch-all name or the default server using the server_name directive. This is a property of the listen directive and not of the server_name directive. See also “How nginx processes a request”. It is possible to define servers listening on ports *:80 and *:8080, and direct that one will be the default server for port *:8080, while the other will be the default for port *:80:

server {
    listen       80;
    listen       8080  default_server;
    server_name  example.net;
    ...
}
server {
    listen       80  default_server;
    listen       8080;
    server_name  example.org;
    ...
}
Internationalized names

Internationalized domain names (IDNs) should be specified using an ASCII (Punycode) representation in the server_name directive:

server {
    listen       80;
    server_name  xn--e1afmkfd.xn--80akhbyknj4f;  # пример.испытание
    ...
}
Virtual server selection

First, a connection is created in a default server context. Then, the server name can be determined in the following request processing stages, each involved in server configuration selection:

  • during SSL handshake, in advance, according to SNI

  • after processing the request line

  • after processing the Host header field

  • if the server name was not determined after processing the request line or from the Host header field, nginx will use the empty name as the server name.

At each of these stages, different server configurations can be applied. As such, certain directives should be specified with caution:

  • in case of the ssl_protocols directive, the protocol list is set by the OpenSSL library before the server configuration could be applied according to the name requested through SNI, thus, protocols should be specified only for a default server;
  • the client_header_buffer_size and merge_slashes directives are involved before reading the request line, thus, such directives use a default server configuration or the server configuration chosen by SNI;
  • in case of the ignore_invalid_headers, large_client_header_buffers, and underscores_in_headers directives involved in processing request header fields, it additionally depends whether the server configuration was updated according to the request line or the Host header field;
  • an error response will be handled with the error_page directive in the server that currently fulfills the request.
Optimization

Exact names, wildcard names starting with an asterisk, and wildcard names ending with an asterisk are stored in three hash tables bound to the listen ports. The sizes of hash tables are optimized at the configuration phase so that a name can be found with the fewest CPU cache misses. The details of setting up hash tables are provided in a separate document.

The exact names hash table is searched first. If a name is not found, the hash table with wildcard names starting with an asterisk is searched. If the name is not found there, the hash table with wildcard names ending with an asterisk is searched.

Searching wildcard names hash table is slower than searching exact names hash table because names are searched by domain parts. Note that the special wildcard form “.example.org” is stored in a wildcard names hash table and not in an exact names hash table.

Regular expressions are tested sequentially and therefore are the slowest method and are non-scalable.

For these reasons, it is better to use exact names where possible. For example, if the most frequently requested names of a server are example.org and www.example.org, it is more efficient to define them explicitly:

server {
    listen       80;
    server_name  example.org  www.example.org  *.example.org;
    ...
}

than to use the simplified form:

server {
    listen       80;
    server_name  .example.org;
    ...
}

If a large number of server names are defined, or unusually long server names are defined, tuning the server_names_hash_max_size and server_names_hash_bucket_size directives at the http level may become necessary. The default value of the server_names_hash_bucket_size directive may be equal to 32, or 64, or another value, depending on CPU cache line size. If the default value is 32 and server name is defined as “too.long.server.name.example. org” then nginx will fail to start and display the error message:

could not build the server_names_hash,
you should increase server_names_hash_bucket_size: 32

In this case, the directive value should be increased to the next power of two:

http {
    server_names_hash_bucket_size  64;
    ...

If a large number of server names are defined, another error message will appear:

could not build the server_names_hash,
you should increase either server_names_hash_max_size: 512
or server_names_hash_bucket_size: 32

In such a case, first try to set server_names_hash_max_size to a number close to the number of server names. Only if this does not help, or if nginx’s start time is unacceptably long, try to increase server_names_hash_bucket_size.

If a server is the only server for a listen port, then nginx will not test server names at all (and will not build the hash tables for the listen port). However, there is one exception. If a server name is a regular expression with captures, then nginx has to execute the expression to get the captures.

Compatibility
  • The special server name “$hostname” has been supported since 0.9.4.
  • A default server name value is an empty name “” since 0.8.48.
  • Named regular expression server name captures have been supported since 0.8.25.
  • Regular expression server name captures have been supported since 0.7.40.
  • An empty server name “” has been supported since 0.7.12.
  • A wildcard server name or regular expression has been supported for use as the first server name since 0.6.25.
  • Regular expression server names have been supported since 0.6.7.
  • Wildcard form example.* has been supported since 0.6.0.
  • The special form .example.org has been supported since 0.3.18.
  • Wildcard form *.example.
    org
    has been supported since 0.1.13.
written by Igor Sysoev
edited by Brian Mercer

локальный хост | локальный хост 80 | localhost 8080

Вы имели в виду доступ к локальному хосту? Нажмите на следующую ссылку.

Перейдите по адресу: http://localhost

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

Или попробуйте:

  • http://localhost:80
  • http://localhost:8080
  • http://localhost:8888
  • http://localhost:7080
  • http://loc почти: 3000

локальный хост — http://localhost

В компьютерных сетях http://localhost — это имя хоста, означающее этот компьютер. Он используется для доступа к сетевым службам, работающим на хосте, через сетевой интерфейс обратной связи. Использование интерфейса loopback обходит любое оборудование интерфейса локальной сети. Wikipedia
Если на вашем компьютере запущен веб-браузер, ваш компьютер считается «локальным хостом». Пока это не нужно указывать при использовании одного компьютера. TechTerms
http://localhost часто используется для тестирования и разработки. Когда разработчик устанавливает программный стек WAMP, LAMP или MAMP на свой персональный компьютер, он обычно вводит «localhost» в свой браузер, чтобы открыть свой веб-сайт. Локальные серверные среды могут ускорить время разработки. Это также отлично подходит для учебных целей. wpновичок

Устранение неполадок

Веб-серверы

Веб-сервер — это программа, которая использует HTTP (протокол передачи гипертекста) для предоставления пользователям файлов, образующих веб-страницы, в ответ на их запросы, которые пересылаются HTTP-клиентами их компьютеров. Выделенные компьютеры и устройства также могут называться веб-серверами. techtarget
Веб-сервер получает запрос на представление контента веб-сайта в браузере пользователя. Все веб-сайты в Интернете имеют уникальный идентификатор с точки зрения IP-адреса. Этот адрес интернет-протокола используется для связи между различными серверами через Интернет. В наши дни сервер Apache является наиболее распространенным веб-сервером, доступным на рынке. Apache — это программное обеспечение с открытым исходным кодом, которое поддерживает почти 70 процентов всех доступных сегодня веб-сайтов. Большинство веб-приложений используют Apache в качестве среды веб-сервера по умолчанию. Другим общедоступным веб-сервером является информационная служба Интернета (IIS). IIS принадлежит Microsoft. Индия Таймс

Самые популярные веб-серверы:

Какие, по вашему мнению, самые популярные веб-серверы?

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

Стеки веб-серверов

В вычислительной технике стек решений или программный стек представляет собой набор программных подсистем или компонентов, необходимых для создания законченной платформы, так что для поддержки приложений не требуется дополнительное программное обеспечение. Говорят, что приложения «запускаются на» или «запускаются поверх» получившейся платформы. Википедия
Веб-стек — это набор программного обеспечения, необходимого для веб-разработки. Как минимум, веб-стек содержит операционную систему (ОС), язык программирования, программное обеспечение базы данных и веб-сервер. techtarget
Например, классическим стеком технологий является стек LAMP. Стек LAMP традиционно используется для создания среды для запуска приложений PHP. Стек состоит из следующих технологий: Linux (ОС среды), Apache (сервер HTTP), MySQL (база данных) и PHP (язык программирования на стороне сервера). вебфкс

Самые популярные пакеты веб-серверов:

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

Другие рекомендуемые порты localhost

Общие порты, которые могут использоваться для доступа к localhost : 9 локальный хост на порту 81: http ://localhost:81

  • Доступ к localhost через порт 8080:http://localhost:8080
  • Доступ localhost на порту 8081:http://localhost:8081
  • Доступ localhost на порту 8888:http://localhost:8888
  • Доступ localhost на порту 8890:http://local хост:8890
  • Доступ localhost на порту 8000:http://localhost:8000
  • Доступ localhost на порту 8889:http://localhost:8889
  • Доступ localhost на порту 70 80:http://локальный: 7080
  • Доступ локальный хост на порту 3000:http://localhost:3000
  • phpMyAdmin | http://localhost/phpmyadmin

    Вы имели в виду доступ к phpMyAdmin? Нажмите на следующую ссылку.

    http://localhost/phpmyadmin

    phpMyAdmin — это бесплатный инструмент администрирования с открытым исходным кодом для MySQL и MariaDB.

    Или попробуйте:

    • http://localhost:80/phpmyadmin
    • http://localhost:8080/phpmyadmin
    phpMyAdmin

    phpMyAdmin is бесплатный инструмент администрирования с открытым исходным кодом для MySQL и MariaDB. Как портативное веб-приложение, написанное в основном на PHP, оно стало одним из самых популярных инструментов администрирования MySQL, особенно для служб веб-хостинга.

    Краткий обзор phpMyAdmin

    Краткий Обзор функций phpMyAdmin :

    • Бесплатно
    • Открытый исходный код
    • Простота настройки
    • Интуитивно понятный веб-интерфейс
    • Импорт данных (CSV и SQL)
    • Экспорт данных
    • Переведено на 80 языков
    • Выполнение административных задач
    • Администрирование нескольких серверов
    • Query-by-example (QBE)
    • Поддержка таблиц InnoDB
    • Поддержка mysqli
    • Управление разрешениями пользователей
    • Поддержка внешних ключей

    Внешние цитаты phpMyAdmin

    wikipedia.org/wiki/PhpMyAdmin»> phpMyAdmin — это бесплатный инструмент администрирования с открытым исходным кодом для MySQL и MariaDB. Как портативное веб-приложение, написанное в основном на PHP, оно стало одним из самых популярных инструментов администрирования MySQL, особенно для служб веб-хостинга. Wikipedia
    phpMyAdmin — это бесплатный программный инструмент, написанный на PHP и предназначенный для администрирования MySQL через Интернет. phpMyAdmin поддерживает широкий спектр операций с MySQL и MariaDB. Часто используемые операции (управление базами данных, таблицами, столбцами, отношениями, индексами, пользователями, разрешениями и т. д.) могут выполняться через пользовательский интерфейс, при этом у вас все еще есть возможность напрямую выполнять любой оператор SQL. phpMyAdmin

    Особенности и особенности phpMyAdmin

    Основные функции и особенности phpMyAdmin :

    • phpMyAdmin поддерживает общие функции MySQL и MariaDB
    • phpMyAdmin 90 060 импорт данных из CSV и SQL
    • Создание сложных запросов с помощью Query-by -example (QBE)
    • Администрирование нескольких серверов
    • Глобальный поиск в базе данных или ее подмножестве
    • phpMyAdmin Поддержка таблиц InnoDB и внешних ключей
    • phpMyAdmin
      Проверка ссылочной целостности в таблицах MyISAM
    • Создание, редактирование, вызов, экспорт и удаление хранимых процедур и функций
    • Создание, редактирование, экспорт и удаление событий и триггеров
    • phpMyAdmin поставляется с большинством пакетов веб-сервера ( wamp, xampp, mamp, zend, lamp, ampps)
    • phpMyAdmin может взаимодействовать с более чем 80 различными языками.

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

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