Téigh ar aghaidh chuig an bpríomhábhar
Leagan: Ar aghaidh

Suiteáil ar fhreastalaí IIS

Scríobhadh na treoracha seo do Windows Server 2016, IIS 10, Node.js 10.15.0, iisnode 0.2.26 agus verdaccio 3.11.0.

  • Suiteáil IIS Suiteáil iisnode. Bí cinnte go suiteálann tú réamhriachtanais (Modúl Athscríobh & Url) mar a mhínítear sna treoracha le haghaidh iisnode.
  • Cruthaigh fillteán nua in Explorer inar mian leat verdaccio a óstáil. Mar shampla C:\verdaccio. Sábháil package.json, tús.js agus web.config san fhillteán seo.
  • Cruthaigh suíomh nua i Bainisteoir Seirbhísí Faisnéise Idirlín. Is féidir leat é a ainmniú cibé rud is mian leat. Tabharfaidh mé verdaccio air sna treoracha seo. Sonraigh an cosán go dtí an áit a shábháil tú gach comhad agus uimhir poirt.
  • Téigh ar ais go Explorer agus tabhair cearta don fhillteán a chruthaigh tú díreach don úsáideoir a ritheann an comhthiomsú feidhmchlár. Má d’ainmnigh tú an suíomh nua verdaccio agus murar athraigh tú an linn aipeanna, tá sé ag rith faoi ApplicationPoolIdentity agus ba cheart duit cearta modhnaithe IIS AppPool\verdaccio a thabhairt don úsáideoir féach na treoracha má tá cabhair uait. (Is féidir leat rochtain a shrianadh ar ball más mian leat ionas nach bhfuil aige ach cearta mionathraithe ar an iisnode and verdaccio\storage)
  • Tosaigh ordú leid agus rith na horduithe thíos chun verdaccio a íoslódáil:
cd c:\verdaccio
npm install
  • Bí cinnte go bhfuil riail isteach agat ag glacadh le trácht TCP chuig an gcalafort i mBalla Dóiteáin Windows
  • Sin é! Anois is féidir leat nascleanúint a dhéanamh chuig an ósta agus port a shonraigh tú

Theastaigh uaim go mbeadh an suíomh verdaccio mar an suíomh réamhshocraithe in IIS mar sin rinne mé an méid seo a leanas:

  • Stad mé an "Suíomh Gréasáin Réamhshocraithe" agus gan ach tús a chur leis an suíomh "verdaccio" suíomh i IIS
  • Shocraigh mé na ceangail go "http", seoladh ip "Gach Neamhshannta" ar phort 80, ceart go leor aon rabhadh nó leideanna

Tá na treoracha seo bunaithe ar Host Sinopia in IIS ar Windows. Bhí orm mo chumraíocht gréasáin a tweak mar atá thíos ach b'fhéidir go bhfaighidh tú an leagan bunaidh ón do nasc luaite oibríonn níos fearr

Cruthófar comhad cumraíochta réamhshocraithe c:\verdaccio\verdaccio\config.yaml

package.json

{
"name": "iisnode-verdaccio",
"version": "1.0.0",
"description": "Hosts verdaccio in iisnode",
"main": "start.js",
"dependencies": {
"verdaccio": "^3.11.0"
}
}

start.js

process.argv.push('-l', 'unix:' + process.env.PORT, '-c', './config.yaml');
require('./node_modules/verdaccio/build/lib/cli.js');

Start.js malartach do leaganacha Verdaccio < v3.0

process.argv.push('-l', 'unix:' + process.env.PORT);
require('./node_modules/verdaccio/src/lib/cli.js');

web.config

<configuration>
<system.webServer>
<modules>
<remove name="WebDAVModule" />
</modules>

<!-- indicates that the start.js file is a node.js application
to be handled by the iisnode module -->
<handlers>
<remove name="WebDAV" />
<add name="iisnode" path="start.js" verb="*" modules="iisnode" resourceType="Unspecified" requireAccess="Execute" />
<add name="WebDAV" path="*" verb="*" modules="WebDAVModule" resourceType="Unspecified" requireAccess="Execute" />
</handlers>

<rewrite>
<rules>

<!-- iisnode folder is where iisnode stores it's logs. These should
never be rewritten -->
<rule name="iisnode" stopProcessing="true">
<match url="iisnode*" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
<action type="None" />
</rule>

<!-- Rewrite all other urls in order for verdaccio to handle these -->
<rule name="verdaccio">
<match url="/*" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
<action type="Rewrite" url="start.js" />
</rule>
</rules>
</rewrite>

<!-- exclude node_modules directory and subdirectories from serving
by IIS since these are implementation details of node.js applications -->
<security>
<requestFiltering>
<hiddenSegments>
<add segment="node_modules" />
</hiddenSegments>
</requestFiltering>
</security>

</system.webServer>
</configuration>

Start. js rogha eile do Verdaccio & # 060; v3.0

  • Ní lódálann an comhéadan gréasáin agus é á óstáil le https mar déanann sé iarracht scripteanna a íoslódáil thar http. Cinntigh go bhfuil X-Ar Aghaidh-Proto cumasaithe agat in IISNode ag úsáid enableXFF. Féach an tsaincheist ghaolmhar.
<configuration>
<system.webServer>
<iisnode enableXFF="true" />
</system.webServer>
</configuration>