| Server IP : 185.208.173.17 / Your IP : 87.236.161.98 Web Server : Microsoft-IIS/10.0 System : Windows NT SRV8576125506 10.0 build 26100 (Windows Server 2016) AMD64 User : IUSR ( 0) PHP Version : 7.4.13 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /Windows/System32/WindowsPowerShell/v1.0/Modules/Carbon/IIS/ |
Upload File : |
# Copyright 2012 Aaron Jensen
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
function Get-IisMimeMap
{
<#
.SYNOPSIS
Gets the file extension to MIME type mappings.
.DESCRIPTION
IIS won't serve static content unless there is an entry for it in the web server or website's MIME map configuration. This function will return all the MIME maps for the current server. The objects returned are instances of the `Carbon.Iis.MimeMap` class, and contain the following properties:
* `FileExtension`: the mapping's file extension
* `MimeType`: the mapping's MIME type
.OUTPUTS
Carbon.Iis.MimeMap.
.LINK
Set-IisMimeMap
.EXAMPLE
Get-IisMimeMap
Gets all the the file extension to MIME type mappings for the web server.
.EXAMPLE
Get-IisMimeMap -FileExtension .htm*
Gets all the file extension to MIME type mappings whose file extension matches the `.htm*` wildcard.
.EXAMPLE
Get-IisMimeMap -MimeType 'text/*'
Gets all the file extension to MIME type mappings whose MIME type matches the `text/*` wildcard.
.EXAMPLE
Get-IisMimeMap -SiteName DeathStar
Gets all the file extenstion to MIME type mappings for the `DeathStar` website.
.EXAMPLE
Get-IisMimeMap -SiteName DeathStar -VirtualPath ExhaustPort
Gets all the file extension to MIME type mappings for the `DeathStar`'s `ExhausePort` directory.
#>
[CmdletBinding(DefaultParameterSetName='ForWebServer')]
param(
[Parameter(Mandatory=$true,ParameterSetName='ForWebsite')]
[string]
# The website whose MIME mappings to return. If not given, returns the web server's MIME map.
$SiteName,
[Parameter(ParameterSetName='ForWebsite')]
[Alias('Path')]
[string]
# The directory under the website whose MIME mappings to return. Optional.
$VirtualPath = '',
[string]
# The name of the file extensions to return. Wildcards accepted.
$FileExtension = '*',
[string]
# The name of the MIME type(s) to return. Wildcards accepted.
$MimeType = '*'
)
$staticContent = Get-IisConfigurationSection -SectionPath 'system.webServer/staticContent'
$staticContent.GetCollection() |
Where-Object { $_['fileExtension'] -like $FileExtension -and $_['mimeType'] -like $MimeType } |
ForEach-Object {
New-Object 'Carbon.Iis.MimeMap' ($_['fileExtension'],$_['mimeType'])
}
}