Machine config где находится
Перейти к содержимому

Machine config где находится

ASP.NET MVC. Конфигурационный файл Web.config. Часть 1. Основные сведения

Расположение файла Web.config

Это не просто важный, это обязательный файл для работы любого приложения. Web.config представляет собой файл, содержащий разметку формата XML. Другими словами – это обычный XML-документ. Все настройки логически разделены на группы. Каждая группа отвечает за настройку какой-то части приложения, либо за настройку веб-сервера, который обслуживает наше приложение. Уже внутри групп расположены отдельные секции, представляющие ту или иную настройку.

Группы и секции в файле Web.config

Преимущества использования файла Web.config:

  • централизованное место для всех настроек в приложении
  • приложение можно настроить максимально гибко и полно
  • возможность описать собственные настройки, характерные для текущего проекта
  • позволяет избежать проблемы жестко закодированных параметров в коде приложения
  • при изменении настроек нет необходимости перекомпилировать код
  • файл в формате стандарта XML

Чаще всего, при разработке типовых веб-приложений разработчики используют только один файл Web.config, расположенный на уровне текущего проекта. Однако этот файл является лишь частью целой иерархии конфигурационных файлов, которые использует в своей работе среда ASP.NET. Давайте посмотрим на всю цепочку файлов, составляющих эту иерархию:

Machine.config – самый первый и главный файл в иерархии. В нем определены основные настройки для среды ASP.NET, которые будут использоваться на данном физическом сервере.

Web.config – базовая версия этого файла. Здесь описаны значения по умолчанию для многих компонентов ASP.NET. Этот файл дополняет и расширяет файл machine.config, он располагается в той же директории.

ApplicationHost.config – в этом файле определены настройки а также значения по умолчанию для веб-сервера IIS (IIS Express), на котором будут работать все веб-приложения.

Web.config – версия файла для сайта IIS. В данном случае под сайтом понимается иерархия директорий, которая может включать в себя множество веб-приложений. Для всех приложений в конкретном сайте можно определить общие настройки через этот файл.

Web.config – версия файла для настройки конкретного веб-приложения. Именно этот файл чаще всего используется программистами в процессе работы.

Configure apps by using configuration files

.NET Framework gives developers and administrators control and flexibility over the way applications run through configuration files. Configuration files are XML files that can be changed as needed. An administrator can control which protected resources an application can access, which versions of assemblies an application will use, and where remote applications and objects are located. Developers can put settings in configuration files, eliminating the need to recompile an application every time a setting changes. This section describes what can be configured and why configuring an application might be useful.

Managed code can use the classes in the System.Configuration namespace to read settings from the configuration files, but not to write settings to those files.

This article describes the syntax of configuration files and provides information about the three types of configuration files: machine, application, and security.

Configuration file format

Configuration files contain elements, which are logical data structures that set configuration information. Within a configuration file, you use tags to mark the beginning and end of an element. For example, the <runtime> element consists of <runtime> child elements </runtime> . An empty element would be written as <runtime/> or <runtime></runtime> .

As with all XML files, the syntax in configuration files is case-sensitive.

You specify configuration settings using predefined attributes, which are name/value pairs inside an element’s start tag. The following example specifies two attributes ( version and href ) for the <codeBase> element, which specifies where the runtime can locate an assembly (for more information, see Specifying an Assembly’s Location).

Machine configuration files

The machine configuration file, Machine.config, contains settings that apply to an entire computer. This file is located in the %runtime install path%\Config directory. Machine.config contains configuration settings for machine-wide assembly binding, built-in remoting channels, and ASP.NET.

The configuration system first looks in the machine configuration file for the <appSettings> element and other configuration sections that a developer might define. It then looks in the application configuration file. To keep the machine configuration file manageable, it is best to put these settings in the application configuration file. However, putting the settings in the machine configuration file can make your system more maintainable. For example, if you have a third-party component that both your client and server application uses, it is easier to put the settings for that component in one place. In this case, the machine configuration file is the appropriate place for the settings, so you don’t have the same settings in two different files.

Deploying an application using XCOPY will not copy the settings in the machine configuration file.

For more information about how the common language runtime uses the machine configuration file for assembly binding, see How the Runtime Locates Assemblies.

Application configuration files

An application configuration file contains settings that are specific to an app. This file includes configuration settings that the common language runtime reads (such as assembly binding policy, remoting objects, and so on), and settings that the app can read.

The name and location of the application configuration file depend on the app’s host, which can be one of the following:

These apps have two configuration files: a source configuration file, which is modified by the developer during development, and an output file that is distributed with the app.

When you develop in Visual Studio, place the source configuration file for your app in the project directory and set its Copy To Output Directory property to Copy always or Copy if newer. By default, the name of the configuration file is App.config.

To create the output configuration file that’s deployed with the app, Visual Studio copies the source configuration file to the directory where the compiled assembly is placed. This file is named <yourappname>.exe.config. For example, an app named myApp.exe will have an output configuration file named myApp.exe.config.

In some cases, Visual Studio may modify the output configuration file; for more information, see the Redirecting assembly versions at the app level section of the Redirecting Assembly Versions article.

For more information about ASP.NET configuration files, see ASP.NET Configuration Settings.

Internet Explorer-hosted app.

If an app hosted in Internet Explorer has a configuration file, the location of this file is specified in a <link> tag with the following syntax: <link rel="*ConfigurationFileName*" href="*location*">

In this tag, location is a URL to the configuration file. This sets the app base. The configuration file must be located on the same website as the app.

Security configuration files

Security configuration files contain information about the code group hierarchy and permission sets associated with a policy level. We strongly recommend that you use the Code Access Security Policy tool (Caspol.exe) to modify security policy to ensure that policy changes do not corrupt the security configuration files.

Starting with .NET Framework 4, the security configuration files are present only if security policy has been changed.

Что такое файлы конфигурации и как их редактировать?

Что такое файлы конфигурации и как их редактировать?

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

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

Что такое файлы конфигурации?

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

Файлы конфигурации — это, по сути, файлы, которые содержат информацию, необходимую для успешной работы программы, которые структурированы особым образом. Вместо того, чтобы быть жестко запрограммированными в программе, они настраиваются пользователем и, как правило, хранятся в текстовом файле (хотя ранее я видел программы, которые использовали базы данных SQLite. как их конфигурационные файлы).

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

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

ConfigJSON

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

Хотя это не исключительно Linux вещь. В зависимости от того, что вы делаете, вам, возможно, придется редактировать их в Windows или Mac OS X.

Как выглядят файлы конфигурации?

Теперь давайте взглянем на некоторые реальные конфигурационные файлы. Как мы упоминали ранее, они бывают разных форм и размеров. Один файл конфигурации, с которым вы почти наверняка знакомы, — это файл hosts, который используется в Windows, Mac и Linux для сопоставления IP-адресов с именами узлов вручную.

Хосты

В Windows вы можете найти его в папке c: \ windows \ system32 \ drivers \ etc \ hosts . На Mac и Linux это будет в / etc / hosts .

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

ВИМ-vundle-код

В Linux и Mac OS X некоторые программы требуют, чтобы пользователь сохранял файл конфигурации в домашнем каталоге с точкой в ​​начале имени файла. Эти конфигурационные файлы иногда имеют расширение .rc, и в разговорной речи называются «точечные файлы».

Одна из программ, которая следует этому конкретному соглашению, — текстовый редактор Vim . В прошлом мы говорили о том, как настроить VIM, отредактировав его конфигурационный файл настроек настроек

Файлы конфигурации даже используются в видеоиграх для определения и управления некоторыми действиями, такими как сопоставления клавиш. Конфигурационный файл ниже взят из Black Mesa — фанатского ремейка оригинального Half Life .

BlackMesa

В оригинальной версии Deus Ex , выпущенной в 2000 году, пользователю фактически пришлось отредактировать файл конфигурации, чтобы включить читы!

Как редактировать файлы конфигурации

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

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

Пользователи Windows уже имеют предустановленный текстовый редактор. Я говорю о блокноте. Хотя стоит подчеркнуть, что для Windows существует множество отличных текстовых редакторов сторонних производителей, включая Notepad ++, Atom и Sublime Text Editor.

AtomHosts

В Linux наиболее близким аналогом Notepad является Gedit . Вы также можете рассмотреть возможность использования текстового редактора командной строки, такого как Nano или Vim . Ради большей эффективности я сильно склоняюсь к текстовому редактору Vim. Это позволяет мне легко переходить на разные позиции в файле конфигурации, просто используя всего несколько нажатий клавиш.

В Mac OS X (или MacOS Sierra, скоро станет известно, ), есть несколько текстовых редакторов, которые поставляются предварительно установленными. Вы, вероятно, знакомы с TextMate. Он также включает несколько текстовых редакторов командной строки, таких как Vim и Nano.

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

Наконец, если редактируемый файл конфигурации структурирован в формате JSON или XML, вы можете использовать более мощный текстовый редактор с подсветкой синтаксиса. Я рекомендую Атом. Это повысит вашу точность, показывая, когда вы допустили ошибку.

Что, если это не работает?

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

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

Исправить это легко. В Mac и Linux попробуйте повысить свои права с помощью команды sudo. Итак, если вы редактировали файл hosts, вы бы запустили:

В Windows щелкните правой кнопкой мыши Блокнот (или любой текстовый редактор, который вы используете) и выберите Запуск от имени администратора .

NotepadRunAsAdmin

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

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

Файлы конфигурации важны

Более того, они являются неотъемлемой частью использования Linux. Знание того, как правильно их редактировать, поможет вам бесконечно.

Есть ли какие-то другие важные навыки, которые, по вашему мнению, должны знать пользователи Linux от начального до среднего уровня? Позвольте мне знать в комментариях ниже.

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

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