ラベル IIS の投稿を表示しています。 すべての投稿を表示
ラベル IIS の投稿を表示しています。 すべての投稿を表示

2016年4月18日月曜日

IIS 7.5 FTPで550 Access Denied

1.FTPにログインするユーザーに該当フォルダの書き込み権限を与える
2.FTPの管理画面、FTPの承認規則で書き込みにチェックを入れる

2015年8月27日木曜日

MSDTCでトランザクション処理の設定

WCF net.tcpで、TransactionScopeを利用してトランザクション処理を行った。

ローカル開発環境(WcfSvcHost.exeでのホスト)では正常に処理されるが、
別サーバーのIISでホストさせ、クライアントからアクセスすると、以下のエラーが発生した。

System.ServiceModel.ProtocolException:フローされたトランザクションのマーシャリングを解除できませんでした。次の例外が発生しました:パートナートランザクションマネージャにより、リモートトランザクションまたはネットワークトランザクションのサポートが無効にされました。(HRESULTからの例外: 0x8004D025)

これを回避するには、サーバー、クライアント両方のDistributed Transaction Coodinatorの設定を変更しないといけない。

・dcomcnfg > コンポーネントサービス > マイコンピューター > Distributed Transaction Coodinator > ローカルDTC > プロパティ > セキュリティタブを開く。

・ネットワークDTCアクセスをON
・トランザクションマネージャー通信(受信を許可、送信を許可)をON

これで適用する。

そして、Windowsファイアウォールの詳細設定で以下を有効にする。

<受信の規則>
・分散トランザクションコーディネーター(RPC)
・分散トランザクションコーディネーター(RPC-EPMAP)
・分散トランザクションコーディネーター(TCP受信)

<送信の規則>
分散トランザクションコーディネーター(TCP送信)

2015年1月19日月曜日

Debug Diagnostic Toolの設定

・前記事で行った内容

 Debug Diag Collectionを起動

  ⇒Add Rule
    Performance
    Performance Counters
  ⇒Add Pref Triggers
    W3SVC_W3WPを選択
    ⇒対象のアプリケーションプールを選択
     追加
  ⇒Select Performance Countersの画面
    リストを全選択
  ⇒Edit Threshold
    Above
    1
    1
  ⇒Select Dump Targetsの画面
    Add Dump Target
    All active IIS/COM+ related processes

こんな感じ

Debug Diagnostic Tool

IIS上でw3wp.exeがcpuに高負荷をかける現象について

IIS Worker Process(アプリケーションプールのw3wp.exe)
がCPUを100%使用してしまう現象について。


何も特に処理を実行していないのに
w3wp.exeのCPU使用率が15%~25%程度動いたままであった。

MicrosoftのDebug Diagnostic Toolを使用して
プロセスの状態をダンプしたところ

Oracle.DataAccess.Client.OracleTuningAgent.DoScan()
Oracle.DataAccess.Client.OracleTuningAgent.TuningFunction()

が、動いているように出てきた。

それを基に以下を参照した。

Oracle 11g 11.2.0.1の64bit版の不具合らしい。
11.2.0.2で解消されているとのことだが

プログラムのConnectionStringに以下を
追加することで解決した。

SelfTunig = false

2013年10月7日月曜日

WCFをBasic通信で行うために

・IISに基本認証を設定する

 認証→基本認証を有効にする
 ※基本認証がない場合は、役割の追加→サービスの追加→基本認証を追加する。

・web.configの書き換え

 Bindingのこの辺を書き換え 
  <security mode="TransportCredentialOnly">
    <transport clientCredentialType="Basic"/>
    <message clientCredentialType="UserName"/>
  </security>

・app.configも書き換え(こんな感じに)
  <system.serviceModel>
  <bindings>
   <basicHttpBinding>
    <binding name="BasicHttpBinding_Taurus" closeTimeout="00:01:00"
      openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
      allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
      maxBufferSize="6553600" maxBufferPoolSize="524288" maxReceivedMessageSize="6553600"
      messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
      useDefaultWebProxy="true">
     <readerQuotas maxDepth="32" maxStringContentLength="819200" maxArrayLength="1638400"
       maxBytesPerRead="4096" maxNameTableCharCount="16384" />
     <security mode="TransportCredentialOnly">
      <transport clientCredentialType="Basic" proxyCredentialType="None" realm="" />
      <message clientCredentialType="UserName" algorithmSuite="Default" />
     </security>

    </binding>
   </basicHttpBinding>
  </bindings>


※参照
10行でズバリ

2013年8月20日火曜日

IISの要求制限緩和

windows 2008 R2のIIS(7.5?)のデフォルトは30,000,000byte。
編集する場合は、該当のアプリケーションの要求フィルター→ウィンドウの右側にある機能設定の編集から。

追記:windows 2008 server (IIS7.0)の場合は、AppCmd.exeで構築する

CD %windir%\system32\inetsrv
appcmd set config /section:requestfiltering /requestlimits.maxallowedcontentlength:30000000

[参照]

2013年7月5日金曜日

maxStringContentLength

アプリケーションルートのweb.configに以下のように追記する。
<configuration>
<system.serviceModel>
  <bindings>
   <basicHttpBinding>
    <binding>
     <readerQuotas maxStringContentLength="1000000" />
    </binding>
   </basicHttpBinding>
  </bindings>
</system.serviceModel>
</configuration>

2013年5月22日水曜日

64bit OS でIISを32bit稼働させる方法

アプリケーションプールの詳細設定を開き、32ビットアプリケーションの有効化をtrueにする。

2013年5月21日火曜日

.NET Framework 3.5 WCF HTTP Activation を有効にしたときのエラー

「アセンブリ ‘System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089′ から型 ‘System.ServiceModel.Activation.HttpModule’ を読み込めませんでした。」

と表示される。

http://msdn.microsoft.com/ja-jp/library/aa751852.aspx
—–以下、抜粋—–
.NET Framework 4 がインストールされている場合に、.NET Framework 3.5 WCF HTTP Activation を有効にすると、このエラーが発生します。この問題を解決するには、Visual Studio 2010 コマンド プロンプト内から次のコマンドを実行します。
aspnet_regiis.exe -i -enable
——————-


つまり

cd "C:\Windows\Microsoft.NET\Framework\v4.0.30319"

aspnet_regiis.exe -i -enable

--------------------------------------------------------------------
Microsoft(R) ASP.NET IIS 登録ツール バージョン 4.0.30319.17929
ローカル コンピューターの ASP.NET をインストールおよびアンインストールするための管理ユーティリティで
す。
Copyright(C) Microsoft Corporation.  All rights reserved.
ASP.NET (4.0.30319.17929) のインストールを開始します。
..........
ASP.NET (4.0.30319.17929) のインストールが完了しました。
--------------------------------------------------------------------


こうしないといけない。

2013年2月20日水曜日

ClickOnceの必須コンポーネント配置

Visual Studioの発行設定で

・「必須コンポーネントをインストールするセットアッププログラムを作成する」にチェック
・インストールする必須コンポーネントを選択する
 ・「アプリケーションと同じ場所から必須コンポーネントをダウンロードする」にチェック
・発行オプションの配置で、配置webページに「publish.html」を設定し、
 「発行後に毎回配置Webページを自動的に生成する」にチェック

・発行処理を行い、publishフォルダに出力されたものをWEBサーバーに配置。
・msp/msuのMIMEをIISに登録する。

・クライアントへの最初のインストールは、publish.htmlへアクセスし、インストールボタンから
 必須コンポーネントをインストールする。

【投稿記事】
http://bbs.wankuma.com/index.cgi?mode=al2&namber=65361

2013年2月14日木曜日

Active Reportsを動作させるWEBサーバー設定

プリンタの用紙設定は、ActiveReportsを起動するユーザーの
用紙設定を使用する模様。

サービスから起動する場合は、そのサービスユーザーの用紙設定がいる。

2012年12月28日金曜日

WCFサービス配置 IIS

C:\Windows\System32\inetsrvにenviroment.xmlを置く
アプリケーションルートのbinでもいいかも?

WCFサービス配置 binフォルダ

binフォルダは、ビルド時に各サービスの下に配置されるが
IISに配置するには、アプリケーションルート\binに配置する