約 5,747,302 件
https://w.atwiki.jp/0x0b/pages/89.html
ハイパーテキスト転送プロトコル RFC 2616 WebブラウザとWebサーバの間でHTMLなどのコンテンツの送受信に用いられる通信プロトコル リクエスト-レスポンス型 トランスポート・プロトコルとして通常TCPを使用 基本的な考え方は非常に単純であり「何を」「どうして」ほしいのかを相手に要求する。「何を」に当たるのがURL、「どうして」がメソッドにあたる。 World Wide WebにおけるWebページなどのリソースは、Uniform Resource Identifierによって指定される。 ポート番号80をデフォルトとして使用する(送信時は8080)。 TLSで暗号化され、セキュリティを確保したHTTPは、HTTPSと呼ばれる(httpsは実際にはURIスキームの1つであり、実際のプロトコルにはHTTP over SSL/TLSが用いられる)。 HTTP は基本的にサーバが状態を保持しない (stateless) プロトコルだが、データベースなどを使用するWebアプリケーションにおいては状態保持が必要だったため、そのためにいわゆる Cookie とよばれる機構が Netscape Communications Corporation によって導入された。Cookie を使用することによって状態を管理し、"セッション" を維持することが可能になる。 HTTPの拡張プロトコルとしてWebDAVがある。 UPnPでは、HTTPをUDP上で使用するHTTPUや、マルチキャストで使用するHTTPMUが規定された。 HTTP/0.9 URLのみの簡単なやりとり HTTP/1.0 NNTPやSMTPのような各種ヘッダが定義 HTTP_Cookieなどの利用 HTTP/1.1 複数データを転送するためのキープアライブ(keep-alive)機能やプロキシなどの利用も想定された仕様 バーチャルホストをサポートした。インターネット人気に伴い多くの企業がWebサイトを持ち始めたが、当時ではまだまだ企業が自前のWebサーバを運用するのは人員、効率の問題で難しかったためISPのサーバでホスティングをしていた。当時はまだ一社ごとに専用サーバを用意するほどのことでもないため一台のサーバで複数のWebサイトを運用していた。 しかしバーチャルホストには問題がある。例えばある1台のサーバに foo.example.com と bar.example.com という二つの仮想Webサーバがあるとする。ここではクライアントは http //foo.example.com/index.html にアクセスしたいとする。そのためにはまず foo.example.com をIPアドレスに解決するためDNSサーバに問い合わせ、そのサーバにアクセスし GET index.html を要求する。しかしサーバ側のIPアドレスは foo.example.com と bar.example.com 共におなじIPアドレスである。もし foo.example.com にも bar.example.com にも index.html というファイルが存在すればクライアントはどちらのサーバにアクセスしたのかわかるすべがない。 これを解決するにはそれぞれにIPアドレスを付与することで解決できるが、IPv4の資源を無駄にすることになる。 HTTP/1.1ではこれを解決するためにHostヘッダを追加した。 HTTP/1.0のヘッダ GET /index.html HTTP/1.0 HTTP/1.1のヘッダ GET /index.html HTTP/1.1 Host foo.example.com 動作 通信の開始 他のプロトコル同様クライアント側とサーバ側ではHTTPの役割が大きく異なる。HTTP通信を開始できるのはクライアント側のみである。 クライアント側はサーバにリクエストを送り、サーバはクライアントにレスポンスを返すのが最も典型的なHTTPのやりとりである。 接続 システム間でメッセージをやりとりするにはTCP接続を確立させる必要がある。 HTTP/0.9ではクライアントのリクエストごとにTCP接続を確立させる必要があったが、これは当時のWebサイトがシンプルなテキストベースであることが多かったためである。近年ではJavaScriptやアニメーション画像など、多数のオブジェクトが埋め込まれたWebサイトが一般的となってきているが、これら全てのオブジェクトを取得するたびにTCP接続を確立するのはサーバやネットワークに大きな負担を強いるため、HTTP/1.1では持続的接続がサポートされることとなった。ただしこの機能が利用できるのはサーバ側がその要求を許可した場合のみである。 パイプライン クライアントは前のリクエストに対するサーバの応答を待たずに別のリクエストを発行できる。 メソッド HTTPでは8つのメソッドが定義されている。ただし実際のHTTP通信ではGETとPOSTメソッドだけで殆どを占める。 HTTPメソッドの一覧 メソッド HTTP/0.9 HTTP/1.0 HTTP/1.1 GET ○ ○ ○ POST ○ ○ PUT △ ○ HEAD ○ ○ DELETE △ ○ OPTION ○ TRACE ○ CONNECT ○ GET 指定されたURIのリソースを取り出す。HTTPの最も基本的な動作で、HTTP/0.9では唯一のメソッド。 POST GETとは反対にクライアントがサーバにデータを送信するメソッドである。Webフォームや電子掲示板、Wikiなどに投稿する。GETの場合と同じくサーバはクライアントにデータを返すことができる。 PUT 指定したURIにリソースを保存する。URIが指し示すリソースが存在しない場合は、サーバはそのURIにリソースを作成する。画像のアップロードなどが代表的。 DELETE 指定したURIのリソースを削除する。 OPTION サーバを調査するメソッド。例えばサーバがサポートしているHTTPのバージョンなどを調査できる。 HEAD GETと似ているがサーバはHTTPヘッダのみ返す。クライアントはWebページを取得せずともそのWebページが存在するかどうかを知ることが出来る。例えばWebページのリンク先が生きているか検証するときなどにリンク先のデータを全て取得することなく調査することが出来る。 TRACE サーバまでのネットワーク経路をチェックできる。サーバは受け取ったメッセージのそれ自体をレスポンスのデータにコピーして応答する。WindowsのTracertやUNIXのTracerouteとよく似た動作。 CONNECT 暗号化したメッセージをプロキシで転送する際に用いる。 サーバの連携 バーチャルホスト リダイレクト 301 MovedというステータスコードとURIを受け取りクライアントはこの受け取ったURIに再度GETを送る。 クッキー(HTTP_Cookie) HTTPメッセージ クライアントからのHTTPリクエストは3つの要素から構成される。それぞれメソッド、URI、HTTPのバージョンでありスペースで区切られている。 下にもっとも単純な、クライアントとサーバ(www.google.co.jp 80)とのHTTPプロトコルのやり取りの例を挙げる。 クライアントのリクエスト GET / HTTP/1.0 GETがメソッド、URIは / 、バージョンはHTTP/1.0であることを示す。 URIは/でルートリソースを対象にしたリクエストであることを示している。TRACEなど特定のサーバを対象としないリクエストの場合には*が表示される。 サーバのレスポンス HTTP/1.0 200 OK Cache-Control private Content-Type text/html Set-Cookie PREF=ID=72c1ca72230dea65 LD=ja TM=1113132863 LM=111 3132863 S=nNO7MIp W2o7Cqeu_; expires=Sun, 17-Jan-2038 19 14 07 GMT; path=/; domain=.google.co.jp Server GWS/2.1 Date Sun, 10 Apr 2005 11 34 23 GMT Connection Close html head meta http-equiv="content-type" content="text/html; charset=Shift_JI S" title Google /title style !-- ・・・以下省略 上のリクエストのGETにあたる部分をメソッドといい、 HTTP/1.0では、GET, HEAD, PUT, POST, DELETE, LINK, UNLINK、 HTTP/1.1ではさらに、OPTIONS, TRACEがある。 GETメソッドのレスポンスにはヘッダ情報のあとに改行が挟まれ、コンテンツ本体が送られる。 HEADメソッドのレスポンスにはコンテンツサイズや更新日時などの情報を含むヘッダのみが送られる。 また、リクエストの2行目以降はヘッダを送る。 HTTPヘッダフィールド ヘッダの各要素は フィールド名 内容 のペアで構成される。 ブラウザの情報を表すUser-Agent、使用候補言語を表すAccept-Language、他ページへのリンクを辿った場合にそのリンク元ページのURLを表すRefererなどが代表的なフィールドである。 なお、リクエスト時のHostヘッダはHTTP/1.1では必須であるが、HTTP/1.0では無くても良い。 但し、サーバがバーチャルホストを利用している場合は、Hostヘッダが無いとリソース取得に失敗するので、たとえHTTP/1.0を使用していてもHostヘッダを付加しなければならない。 HTTPヘッダフィールドの一覧 リクエストヘッダ ヘッダ概要HTTP/0.9HTTP/1.0HTTP/1.1 Acceptクライアントの受け入れ可能コンテンツタイプを示す○○ Accept-Charsetクライアントの受け入れ可能文字セットを示す○○ Accept-Encodingクライアントの受け入れ可能文字エンコーディングを示す○○ Accept-Languageクライアントの受け入れ可能言語を示す○○ Authorizationクライアントの認証情報を示す○○ Cookieクライアントの状態管理情報をサーバに返す Cookie2HTTP/1.1のSet-Cookie2ヘッダの受け入れ可能をサーバに知らせる Expectクライアントがサーバに期待する動作を示す○ Fromリクエスト発行者個人の情報を示す。一般的に電子メールアドレスを使用する○○ Host要求しているオブジェクトがあるホストを示す○ If-Matchif文を用い条件が真の場合のみリクエストを処理するようサーバに要求する○ If-Modified-Since指定日及び指定時刻以降にオブジェクトが変更されている場合のみリクエストを処理するよう要求する○○ If-None-MatchIf-Matchの逆で条件が真でない場合のみリクエストを処理する要求○ If-Range条件が真の場合のみ指定したオブジェクトの範囲を返すようサーバに要求する○ If-Unmodified-SinceIf-Modified-Sinceの逆で真でないときのみ実行する○ Max-Forwardsリクエストの中間システム経由数を最大いくつまでかを指定する○ Proxy-Authorizationクライアントがプロキシサーバに対して自身の認証を行う○ Rangeオブジェクト全体でなくリソースの一部を要求する○ Refererリクエストの出所を示す。一般的にはユーザの辿ったWebページのURLが用いられる。○○ TEレスポンスの受け入れ可能転送エンコーディングを示す○ レスポンスヘッダ ヘッダ概要HTTP/0.9HTTP/1.0HTTP/1.1 Accept-Rangesオブジェクトの一部に対するリクエストをサーバが受け入れ可能か示す○ Ageオブジェクトの経過時間を秒単位で返す○ AllowオブジェクトがサポートするHTTPメソッドを示す○○ ETagオブジェクトのエンティティタグ値を示す○ Locationオブジェクトの場所を示す○○ Proxy-Authenticateプロキシサーバがクライアントに認証を要求するときに用いる○ Retry-Afterリクエストの再試行をいつ行うかをクライアントに通知する○○ Serverサーバのベンダー名、バージョン番号を占めす○○ Set-Cookie2サーバがクライアントにCookieを送信するときに用いる Varyサーバのレスポンス内容を決定する際にリクエストURI以外に使用したHTTPヘッダのリストを示す○ WWW-Authenticateクライアントに対してリクエストの再発行を要求する。認証情報も含まれる○○ 一般ヘッダ ヘッダ概要HTTP/0.9HTTP/1.0HTTP/1.1 Cache-Controlメッセージの経由する中間キャッシュの動作を指示する○ Connection中間システムが転送すべきでないヘッダのリストを示す○○ Dateメッセージの作成日時を示す○○ Pragmaメッセージに関する追加情報を示す○○ Trailerメッセージボディの後に追加のヘッダーが表れることを示す○ Transfer-Encodingクライアントの転送を目的としたオブジェクトのエンコーディングを示す○ Upgrade通信相手に別のプロトコルにアップデートするよう要求する○ User-AgentクライアントのWebブラウザなどの情報を示す○○ Warningメッセージに関する追加情報を示す。通常はキャッシュの問題を警告するときに使われる○ エンティティヘッダ ヘッダ概要HTTP/0.9HTTP/1.0HTTP/1.1 Content-Encodingオブジェクトのエンコーディングを示す○○ Content-Languageオブジェクトの言語(人間の言語)を示す○○ Content-Lengthオブジェクトのサイズをバイト単位で示す○○ Content-Locationオブジェクトの場所を示す○ Content-MD5オブジェクトのメッセージダイジェストを運ぶ○ Content-Rangeメッセージボディで運ばれるオブジェクトの範囲を示す○ Content-Typeオブジェクトのタイプを示す○○ Expiresオブジェクトの有効期限の日時を示す○○ Last-Modifiedオブジェクトが最後に変更された日時を示す○○ Accept サーバのレスポンスに含まれるメッセージボディで受け入れることが出来るコンテンツタイプと各コンテンツタイプの相対的な優先度を指定するリクエストヘッダ。指定できるコンテンツタイプはIANAによって定義されている。 Accept text/plain; q=0.5, text/html, text/x-dvi; q=0.8, text/x-c 上記のようにAcceptヘッダには行をわけて複数のコンテンツタイプを指定できる。上記の例はいずれの4のコンテンツタイプのいずれも受け入れ可能であることを示す。0.5や0.8といった数字は品質係数で0~1の範囲の数値である。数値の指定がなければ1.0となる。 text/plain; q=0.5 text/html text/x-dvi; q=0.8 text/x-c Accept-Charset レスポンスで返されるメッセージボディの文字コードを指定するリクエストヘッダ。Acceptと同じく複数指定でき品質係数も設定できる。定義済み文字セットはIANAが管理している。 Accept-Charset unicode, *; q=0.8 この例だとクライアントはUnicode文字セットを優先的に希望しているが他の文字セットとの相対優先度0.8で受け入れている。ただしサーバからのレスポンスのHTTPヘッダそのものの文字コードは常にISO-8859-1である。 Accept-Encoding Accept-Language レスポンスの言語(人間の言語)に対する優先度を指定する。言語コードはISO-639の2文字の省略コードを用いる。書き方は他のAccept-群と変わらず。 Accept-Language en-gb, en; q=0.8 上記の例はまずイギリス英語を要求し、利用できない場合はその他の英語を要求する。 Accept-Ranges Acceptで始まる他のヘッダフィールドと違いレスポンスヘッダーである。現在の仕様では2つの指定方法しかない。 Age リソースの推定経過時間を表示するレスポンスヘッダ。キャッシュサーバーはAgeヘッダの値からキャッシュしたリソースが有効かどうかを判定する。 Allow Authentication-info ユーザ認証のやりとりの最後で用いられる、成功したレスポンスのサーバが含めることの出来るレスポンスヘッダー。 Authorization サーバに対するクライアント自身の認証を行うことが出来る。 Cache-Control キャッシングの動作を指定するためのマスターヘッダ。 Connection Content-Encoding Content-Language リソースを英語などの自然言語で示すのに使われる。言語の指定はAccept-Languageヘッダと同じ。 Content-Length Content-Location Content-MD5 メッセージボディが変更されず宛先に届くことを保証する。MD5アルゴリズムを実行する。ただし悪意の改ざんに対しては当然MD5も改ざんされるのであまり機能はしない。どちらかといえば偶発的な変更の保証をしている。 Content-Range ダウンロードの再開に用いられる。 Content-Type メッセージボディに含まれるオブジェクトタイプを示す。次の例はリソースがテキストファイル、文字セットはISO-8859-4を使用していることを示している。 Content-Type text/plain; Charset=ISO-8859-4 Cookie クライアントがHTTP状態管理を望む場合にサーバから受け取ったクッキーを以後のリクエストに次の例のようなヘッダーを付加する。 Cookie $Version="1"; NAME="VALUE"; $Path="/shopping"; $domain="www.shop.com"+ $Port="80" $VersionはHTTPのバージョン、NAMEはクッキーの名前である。$から始まるクッキー名は使用が禁止されている。 Cookie2 基本的にCookieヘッダーとCookie2ヘッダーは別物である。 Date サーバがメッセージを生成した日時を示す。リソースの時間を示すLast-Modifiedヘッダーとは区別する必要がある。 HTTP/1.1では次のような形式を用いるようRFC1123で定義されている。 Date Sun, 06, Nov 1994 08 49 37 GMT HTTP仕様ではレスポンスにDateヘッダーを含めることを求めている。ただしレスポンスのステータスがサーバエラーの場合にはDateヘッダーは返らない。 ETag 主にキャッシングのパフォーマンスを向上する目的で使われる。 Expect サーバに対して特定の動作の期待を知らせる。用途としてはクライアントがサーバに対して100 Continueステータスを返すことを期待する場合に使われる。 Expect 100-continue サーバが期待に応じれない場合は417 Expectation Failedを返す。クライアントがいくつかのプロキシ経由で通信している場合、各プロキシサーバはExpectヘッダの一切の修正を許されない。 Expires オブジェクトの有効期限を示す。このヘッダで指定された日時までキャッシュはレスポンスのコピーを保持し、リクエストに対するレスポンスとして返すことが出来る。サーバがオブジェクトのキャッシュを望まない場合にはExpiresヘッダに過去の日時を設定することが多い。また、HTTP仕様では1年以上先の日時は設定できない。 Expires Thu, 28 Aug 2010 16 00 00 GMT Cache-Controlヘッダのmax-ageディレクティブはExpiresヘッダより優先されるため注意が必要である。 From リクエストを発行したユーザを特定することが出来る。1990年代では電子メールアドレスを設定することが多かったが、迷惑メールの問題もあり現在では殆ど使われていない。 From hoge@hogehoge.com Host 主にレンタルサーバのサポートを目的としてHTTP/1.1で導入された。現在ではHostヘッダを利用できない場合レンタルサーバのウェブサイトとまともな通信が出来ないと言ってよい(詳細はHTTP#歴史を参照)。 If-Match クライアントのリクエストを条件付きのリクエストにするために使われる。サーバは一定の条件が真であった場合のみリクエストを受け入れることが出来る。例えばウィキペディアを編集する際、記事のソースを取得し、書き換える際の間に別のユーザが既に編集していないかを判断するときなどに用いられる。 「if文」も参照 利用者:HogeがHTTPの記事を取得。ETagは1234 利用者:HageがHTTPの記事を取得。ETagは1234 利用者:HogeがHTTPのETagを再度取得。先ほど取得したETag 1234と現在のETag 1234が一致。 利用者:HogeがHTTPの記事を編集。ETagは1256になる。 利用者:HageがHTTPのETagを再度取得。先ほど取得したETagと現在のETagはマッチせず。 サーバは利用者:Hageの書き込みを拒否。 If-Modified-Since このヘッダーで指定された日時以降にオブジェクトが変更されている場合のみリクエストに応答するようサーバに要求する。リソースの削減に効果がある。 If-None-Match If-Matchと逆で条件が真でない場合のみリクエストを処理するよう要求する。 If-Range クライアントがキャッシュにオブジェクトの一部分を持っている場合にパフォーマンスを向上できる。 If-Unmodified-Since If-Modified-Sinceの逆の働きをする Last-Modified サーバオブジェクトの最終更新日時を示す。クライアントはこのヘッダを利用しIf-Modified-Sinceヘッダ等と組み合わせることによって効果を発揮する。 Location サーバがクライアントにリダイレクト先URLを知らせる際に用いられる。一般的にステータスコードが3xx代のレスポンスと共に使われるが201 Createdのレスポンスでも使うことが出来る。Content-Locationヘッダと名前が似ているが全く関係のない別のヘッダであるため注意。 Max-Forwards プロキシサーバ等を経由する際の最大ホップ数を指定する。二重ループなどでサーバから応答が得られない場合の問題解決の際、OPTIONメソッドやTRACEメソッドと共に用いられる。 HTTPステータスコード ステータスコードはクライアントのリクエストが成功したかどうかを示した上で追加情報を提供するいずれも3桁の数字から成る。具体的には100-199が情報提供、200-299が成功を示す。300-399はリダイレクト、400-499はエラーを示す。 セキュリティ技術 Basic認証 HTTP/1.1でBasic認証が定義されており最も単純なセキュリティ技術である。しかし仕様書を読むと定義を書いた著者自身が認証技術に疎いことがよくわかる。『HTTPプロトコル セキュア&スケーラブルなWeb開発』の著者は「基本認証を用いるくらいならなにも使わない方がまし」と著書に書いている。通常サーバは401ステータスコードで応答する。 行末文字はWindowsと同じCRLF。 RFC 2818 - HTTP Over TLS RFC 2817 - Upgrading to TLS Within HTTP/1.1 RFC 2616 - HTTP/1.1 ハイパーテキスト転送プロトコル -- HTTP/1.1 RFC 2068 - HTTP/1.1(初版,RFC 2616 によって obsolete) TS X 0085 2004 - ハイパテキスト転送プロトコル HTTP/1.1 標準仕様書(TS) RFC 1945 - HTTP/1.0 HttpTea Freeware HTTP Logger Studying HTTP
https://w.atwiki.jp/reisiki/pages/59.html
※このページに書かれている内容は http //www.boost.org/doc/libs/1_38_0/libs/multi_index/doc/index.html を参考にしていますが、推測も多く含まれています。 概要 下図が示す通りです。詳細な説明は Boost.org にあります。 画像はBoost.orgより。 名前空間 multi_index関連のものは基本的に名前空間boost multi_index内で定義されている。 コンテナであるmulti_index_containerは名前空間boostでusingされているので、 boost multi_index_containerでアクセスできる。 ヘッダ コンテナ boost/multi_index_container.hpp multi_index_containerを使用する インデックス boost/multi_index/ordered_index.hpp setやmapのように整列されたインデックスを使用する。ordered_unique, ordered_non_unique boost/multi_index/hashed_index.hpp ハッシュをキーに持つインデックスを使用する。hashed_unique, hashed_non_unique boost/multi_index/sequenced_index.hpp listのような順番にアクセスするインデックスを使用する。sequenced boost/multi_index/random_access_index.hpp vectorのようなランダムアクセスが可能なインデックスを使用する。random_access ソート方法 boost/multi_index/key_extractors.hpp 以下のヘッダ全てをインクルードする boost/multi_index/identity.hpp 要素のクラス(インスタンス)同士を比較する場合に必要 boost/multi_index/member 要素のフィールドを比較する場合に必要 boost/multi_index/mem_fun.hpp 要素のメンバ関数で比較する場合に必要 boost/multi_index/global_fun.hpp グローバルな関数で比較する場合に必要 boost/multi_index/composite_key.hpp 複数の条件で比較する( 参考 )場合に必要 コンテナ (multi_index_container) デフォルトではstd setのような振舞いになる。 indexed_by の中に使用したいインデックスを追加することで、 内部に複数のコンテナを保持しているかのように振舞うことができる。 template typename Value, typename IndexSpecifierList=indexed_by ordered_unique identity Value , typename Allocator=std allocator Value class multi_index_container; インデックス 使用する側から見れば、multi_index_containerが内部に持つコンテナのようなもの。 実際は複数のコンテナを保持している訳ではない。 おそらく現在のところ、用意されているのは ordered_unique ordered_non_unique hashed_unique hashed_non_unique sequenced random_access の6つ。 indexed_by の中に並べることで使用可能になる。 type specifier key-based ordered ordered_unique ordered_non_unique hashed hashed_unique hashed_non_unique non key-based sequenced random_access ordered_unique, ordered_non_unique キーの値を基に自動的にソートされるインデックス。 ordered_uniqueは重複を許さない。 ordered_non_uniqueは重複を許す。 template typename KeyFromValue, typename Compare=std less KeyFromValue result_type struct (ordered_unique | ordered_non_unique); template typename TagList, typename KeyFromValue, typename Compare=std less KeyFromValue result_type struct (ordered_unique | ordered_non_unique); hashed_unique, hashed_non_unique キーから作られるハッシュで管理するインデックス。いわゆる連想配列。当然、要素の順番は不定。 template typename KeyFromValue, typename Hash=boost hash KeyFromValue result_type , typename Pred=std equal_to KeyFromValue result_type struct (hashed_unique | hashed_non_unique); template typename TagList, typename KeyFromValue, typename Hash=boost hash KeyFromValue result_type , typename Pred=std equal_to KeyFromValue result_type struct (hashed_unique | hashed_non_unique); - - テンプレート引数 制限 - - Value - - Allocator - - TagList - - KeyFromValue - - Hash - - Pred - 可視性 ベースクラス 機能 - 可視性 型名 元の型名 - public key_type KeyFromValue result_type - public value_type Value - public key_from_value KeyFromValue - public hasher Hash - public key_equal Pred - public ctor_args tuple size_type,key_from_value,hasher,key_equal - public allocator_type Allocator - public pointer Allocator pointer - public const_pointer Allocator const_pointer - public reference Allocator reference - public const_reference Allocator const_reference - public size_type implementation defined - public difference_type implementation defined - public iterator implementation defined - public const_iterator implementation defined - public local_iterator implementation defined - public const_local_iterator implementation defined 静的/仮想 可視性 関数 機能 - public operator=() - public get_allocator() const - public empty() const - public size() const - public max_size() const - public begin() - public begin() const - public end() - public end() const - public cbegin() const - public cend() const - public iterator_to() - public iterator_to() const - public insert() modifiers - public erase() - public replace() - public modify() - public modify_key() - public clear() - public swap() - public key_extractor() const observers - public hash_function() const - public key_eq() const - public find() const lookup - public count() const - public equal_range() const - public bucket_count() const bucket interface - public max_bucket_count() const - public bucket_size() const - public bucket() const - public load_factor() const hash policy - public max_load_factor() const - public rehash(size_type n) 静的 可視性 フィールド 用途 クラス 可視性 機能 sequenced std listのように順番を保つインデックス。ソートの必要がある場合は手動で行う。 template typename TagList=tag struct sequenced; random_access std vectorのようにランダムアクセスが可能なインデックス。 template typename TagList=tag struct random_access; Key Extractors キーを持つインデックス (ordered_unique, ordered_non_unique, hashed_unique, hashed_non_unique) について、キーの指定方法を指定する。 基本的な指定方法は以下の6つ。 identity member const_mem_fun mem_fun global_fun composite_key identity template typename T struct identity; member, member_offset template class Class,typename Type,Type Class *PtrToMember struct member; template class Class,typename Type,std size_t OffsetOfMember struct member_offset; #define BOOST_MULTI_INDEX_MEMBER(Class,Type,MemberName) implementation defined const_mem_fun, mem_fun, const_mem_fun_explicit, mem_fun_explicit template class Class,typename Type,Type (Class *PtrToMemberFunction)() const struct const_mem_fun; template class Class, typename Type, Type (Class *PtrToMemberFunction)() struct mem_fun; template class Class, typename Type, typename PtrToMemberFunctionType, PtrToMemberFunctionType PtrToMemberFunction struct const_mem_fun_explicit; template class Class,typename Type, typename PtrToMemberFunctionType,PtrToMemberFunctionType PtrToMemberFunction struct mem_fun_explicit; #define BOOST_MULTI_INDEX_CONST_MEM_FUN(Class, Type, MemberFunName) \ implementation defined #define BOOST_MULTI_INDEX_MEM_FUN(Class, Type, MemberFunName) \ implementation defined global_fun template class Value,typename Type,Type (*PtrToFunction)(Value) struct global_fun; composite_key template typename Value,typename KeyFromValue0,...,typename KeyFromValuen struct composite_key; template typename CompositeKey struct composite_key_result; その他 indexed_by multi_index_containerが持つデータ群にアクセスする複数のインデックス(インターフェース)を持たせるために使用する。 multi_index_container 要素の型, indexed_by 0番目のインデックス, // 例えばsequenced 1番目のインデックス, // 例えばordered_unique ... ... tag インデックスに任意の型のタグを設定する。 multi_index_containerはget ()メソッドを使ってインデックスを取得できる。 typedef multi_index_container 要素の型, indexed_by sequenced , // 0番目のインデックス ordered_unique ... // 1番目のインデックス ... Container; Container container; ... Container nth_index 0 type index0 = container.get 0 (); Container nth_index 1 type index1 = container.get 1 (); ... 上記の例では0番目のインデックスと1番目のインデックスを取得している。 Container nth_index 0 type がインデックスの型。 これはタグ付けすると以下のようになる。 typedef multi_index_container 要素の型, indexed_by sequenced tag 型A , // 0番目のインデックス ordered_unique tag 型B , ... // 1番目のインデックス ... Container; Container container; ... Container index 型A type index0 = container.get 型A (); Container index 型B type index1 = container.get 型B (); ... この場合、Container index 型A type がインデックスの型。 タグは型名にのみ意味を持つので、空の構造体などでもよい。 [09/02/26 21 58][][編集]
https://w.atwiki.jp/anshangrila/
INDEX 此処は、のら管理人・吉良弌 Kiraichi と紕辜 Hidumi がのらりくらりと訳の解らないモノを排出していく非公式よろず同人ファンサイトです。 と、言うのも節操なしにやって行く予定なので何が出てくるか自分達にも解っていません。 落書き中心に特に目立った活動をする予定もなく運営していきます。 以下の注意事項をお読みになり、自己判断にてお入り下さい。 1.非公式・同人・ファンサイトの意味が解らない。もしくは理解できない方。 2.荒らしが目的の方 3.両管理人が嫌いな方 以上に当てはまる方はブラウザバックでお戻り下さい。 注意事項をすっとばしてお進みになり気分を害した等のクレームは受け付けません。 ドウゾ宜しく。 by.吉良弌 紕辜 家の看板息子:livlyのアマティエル 可愛がってあげてください。 審判の日 飼い主 吉良弌 Livly アマティエル #ref error :ご指定のファイルが見つかりません。ファイル名を確認して、再度指定してください。 ( noedit script language="JavaScript" src="http //www.livly.com/f.php?uid=343s s=3" /script /noedit )
https://w.atwiki.jp/lanikaihairyotsuya/pages/2.html
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http //www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" html xmlns="http //www.w3.org/1999/xhtml" xml lang="ja" lang="ja" head meta http-equiv="Content-Type" content="text/html;charset=UTF-8" / title MENU | LANIKAI. HAIR | ラニカイ ヘアー /title link rel="stylesheet" href="http //www.lanikaihair.jp/shop/wp-content/themes/Lanikai_2/style.css" type="text/css" / link rel="shortcut icon" href="http //www.lanikaihair.jp/shop/wp-content/themes/Lanikai_2/favicon.ico" / !-- All in One SEO Pack 2.2.6.2 by Michael Torbert of Semper Fi Web Design[266,311] -- meta name="description" content="※価格は税抜き表示となっております。" / link rel="canonical" href="http //www.lanikaihair.jp/menu/" / !-- /all in one seo pack -- link rel="alternate" type="application/rss+xml" title="LANIKAI. HAIR | ラニカイ ヘアー » MENU のコメントのフィード" href="http //www.lanikaihair.jp/menu/feed/" / script type="text/javascript" window._wpemojiSettings = {"baseUrl" "http \/\/s.w.org\/images\/core\/emoji\/72x72\/","ext" ".png","source" {"concatemoji" "http \/\/www.lanikaihair.jp\/shop\/wp-includes\/js\/wp-emoji-release.min.js?ver=4.2.5"}}; !function(a,b,c){function d(a){var c=b.createElement("canvas"),d=c.getContext c.getContext("2d");return d d.fillText?(d.textBaseline="top",d.font="600 32px Arial","flag"===a?(d.fillText(String.fromCharCode(55356,56812,55356,56807),0,0),c.toDataURL().length 3e3) (d.fillText(String.fromCharCode(55357,56835),0,0),0!==d.getImageData(16,16,1,1).data[0])) !1}function e(a){var c=b.createElement("script");c.src=a,c.type="text/javascript",b.getElementsByTagName("head")[0].appendChild(c)}var f,g;c.supports={simple d("simple"),flag d("flag")},c.DOMReady=!1,c.readyCallback=function(){c.DOMReady=!0},c.supports.simple c.supports.flag||(g=function(){c.readyCallback()},b.addEventListener?(b.addEventListener("DOMContentLoaded",g,!1),a.addEventListener("load",g,!1)) (a.attachEvent("onload",g),b.attachEvent("onreadystatechange",function(){"complete"===b.readyState c.readyCallback()})),f=c.source||{},f.concatemoji?e(f.concatemoji) f.wpemoji f.twemoji (e(f.twemoji),e(f.wpemoji)))}(window,document,window._wpemojiSettings); /script style type="text/css" img.wp-smiley, img.emoji { display inline !important; border none !important; box-shadow none !important; height 1em !important; width 1em !important; margin 0 .07em !important; vertical-align -0.1em !important; background none !important; padding 0 !important; } /style link rel= stylesheet id= jetpack-subscriptions-css href= http //www.lanikaihair.jp/shop/wp-content/plugins/jetpack/modules/subscriptions/subscriptions.css?ver=4.2.5 type= text/css media= all / link rel= stylesheet id= contact-form-7-css href= http //www.lanikaihair.jp/shop/wp-content/plugins/contact-form-7/includes/css/styles.css?ver=4.1.2 type= text/css media= all / link rel= stylesheet id= easingslider-css href= http //www.lanikaihair.jp/shop/wp-content/plugins/easing-slider/css/easingslider.min.css?ver=2.2.1.1 type= text/css media= all / link rel= stylesheet id= jetpack-widgets-css href= http //www.lanikaihair.jp/shop/wp-content/plugins/jetpack/modules/widgets/widgets.css?ver=20121003 type= text/css media= all / script type= text/javascript src= http //www.lanikaihair.jp/shop/wp-includes/js/jquery/jquery.js?ver=1.11.2 /script script type= text/javascript src= http //www.lanikaihair.jp/shop/wp-includes/js/jquery/jquery-migrate.min.js?ver=1.2.1 /script script type= text/javascript src= http //www.lanikaihair.jp/shop/wp-content/plugins/easing-slider/js/jquery.easingslider.min.js?ver=2.2.1.1 /script script type= text/javascript src= http //www.lanikaihair.jp/shop/wp-content/plugins/google-analyticator/external-tracking.min.js?ver=6.4.9 /script link rel="EditURI" type="application/rsd+xml" title="RSD" href="http //www.lanikaihair.jp/shop/xmlrpc.php?rsd" / link rel="wlwmanifest" type="application/wlwmanifest+xml" href="http //www.lanikaihair.jp/shop/wp-includes/wlwmanifest.xml" / meta name="generator" content="WordPress 4.2.5" / link rel= shortlink href= http //wp.me/P4zAXB-e / style type="text/css" .recentcomments a{display inline !important;padding 0 !important;margin 0 !important;} /style !-- Google Analytics Tracking by Google Analyticator 6.4.9 http //www.videousermanuals.com/google-analyticator/ -- script type="text/javascript" window.google_analytics_uacct = "UA-53472244-1"; /script script type="text/javascript" var analyticsFileTypes = [ ]; var analyticsSnippet = enabled ; var analyticsEventTracking = enabled ; /script script type="text/javascript" var _gaq = _gaq || []; _gaq.push([ _setAccount , UA-53472244-1 ]); _gaq.push([ _addDevId , i9k95 ]); // Google Analyticator App ID with Google _gaq.push([ _trackPageview ]); (function() { var ga = document.createElement( script ); ga.type = text/javascript ; ga.async = true; ga.src = ( https == document.location.protocol ? https //ssl http //www ) + .google-analytics.com/ga.js ; var s = document.getElementsByTagName( script )[0]; s.parentNode.insertBefore(ga, s); })(); /script /head body class="page page-id-14 page-template page-template-custom-noside page-template-custom-noside-php" div id="container" div id="head" div id="logo" a href="http //www.lanikaihair.jp/" img src="http //www.lanikaihair.jp/shop/wp-content/themes/Lanikai_2/images/top_lanikai.jpg" alt="LANIKAI. HAIR | ラニカイ ヘアー" / /a /div /div div id="menu" ul id="globalnavi" li id="navi1" a href="http //www.lanikaihair.jp/shop/" title="HOME" /a /li li id="navi2" a href="http //www.lanikaihair.jp/shop/menu/" title="MENU" /a /li li id="navi3" a href="http //www.lanikaihair.jp/shop/access" title="ACCESS" /a /li li id="navi4" a href="http //www.lanikaihair.jp/shop/staff" title="STAFF" /a /li li id="navi5" a href="http //www.lanikaihair.jp/shop/contact" title="CONTACT" /a /li li id="navi6" a href="http //www.lanikaihair.jp/shop/sitemap" title="SITEMAP" /a /li /ul /div div id="content_no_side" p img class="alignnone size-full wp-image-24" src="http //www.lanikaihair.jp/shop/wp-content/uploads/2014/04/menu_title.jpg" alt="MENU" width="78" height="18" / /p p a href="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/01/images.jpg" img class="alignnone wp-image-258" src="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/01/images.jpg" alt="images" width="245" height="224" / /a a href="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/01/9277b2358cd5be3e8ada93c16a9cf0a0.jpg" img class="alignnone size-medium wp-image-255" src="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/01/9277b2358cd5be3e8ada93c16a9cf0a0-300x225.jpg" alt="ドール_R" width="300" height="225" / /a a href="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/01/f81fd2e4c52864042852c112ce927ae2.jpg" img class="alignnone wp-image-247" src="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/01/f81fd2e4c52864042852c112ce927ae2.jpg" alt="ダウンロード" width="154" height="228" / /a /p p a href="http //www.lanikaihair.jp/shop/wp-content/uploads/2014/04/lanikai_web_price.jpg" img class="alignnone size-full wp-image-123" src="http //www.lanikaihair.jp/shop/wp-content/uploads/2014/04/lanikai_web_price.jpg" alt="Price" width="850" height="200" / /a /p p a href="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/08/11.jpg" img class="alignnone wp-image-507" src="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/08/11.jpg" alt="11" width="219" height="210" / /a a href="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/05/8e09af98.jpg" img class="alignnone wp-image-408" src="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/05/8e09af98.jpg" alt="8e09af98" width="265" height="183" / /a a href="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/04/SPA_image-1024x642.jpg" img class="alignnone wp-image-343" src="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/04/SPA_image-1024x642-300x188.jpg" alt="SPA_image-1024x642" width="335" height="210" / /a /p p a href="http //www.lanikaihair.jp/shop/wp-content/uploads/2014/04/lanikai_web_price_002.jpg" img class="alignnone size-full wp-image-122" src="http //www.lanikaihair.jp/shop/wp-content/uploads/2014/04/lanikai_web_price_002.jpg" alt="price_002" width="850" height="200" / /a /p p ※価格は税抜き表示となっております。 /p p a href="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/01/images-2.jpg" img class="alignnone wp-image-246" src="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/01/images-2.jpg" alt="images (2)" width="74" height="93" / /a a href="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/01/f81fd2e4c52864042852c112ce927ae21.jpg" img class="alignnone wp-image-251" src="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/01/f81fd2e4c52864042852c112ce927ae21.jpg" alt="ダウンロード" width="78" height="87" / /a a href="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/01/f81fd2e4c52864042852c112ce927ae22.jpg" img class="alignnone wp-image-261" src="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/01/f81fd2e4c52864042852c112ce927ae22.jpg" alt="ダウンロード" width="82" height="82" / /a a href="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/02/product_wave.jpg" img class="alignnone wp-image-293" src="http //www.lanikaihair.jp/shop/wp-content/uploads/2015/02/product_wave-198x300.jpg" alt="product_wave" width="89" height="135" / /a /p /div div id="foot" p Copyright © LANIKAI. HAIR | ラニカイ ヘアー, All Rights Reserved.Created by a href="http //cask-s.net/" target="_blank" Cask-Strength /a /p /div /div /body /html script src="http //stats.wordpress.com/e-201549.js" type="text/javascript" /script script type="text/javascript" st_go({v ext ,j 1 2.9.3 ,blog 67588903 ,post 14 ,tz 9 }); var load_cmc = function(){linktracker_init(67588903,14,2);}; if ( typeof addLoadEvent != undefined ) addLoadEvent(load_cmc); else load_cmc(); /script
https://w.atwiki.jp/mainichimatome-en/
What is the WaiWai issue? Astonishingly hideous newspaper articles published by one of Japanese "quality" papers on their English-language news site has infuriated many people. Some concerned people began online campaign to raise awareness of the issue, resulting in a large-scale protest movement. Mainichi Newspapers, one of Japan s four major "quality" newspapers, who has the 3rd largest readership, had published incredibly vulgar and indecent articles, many of which described Japanese women and girls as sexually promiscuous on the "WaiWai" corner of their English news site, Mainich Daily News. There were articles which gave tips for safe ways to buy under-age Japanese girls. There were also a report which described a traditional religious festival as having strangly strong sexual connotation. The problem is that these articles had been online for several years. The problematic articles have been already deleted -- Mainich Newspapers has apparently chosen to delete all the evidence. They re now claiming that a very small number of extreme people are making a fuss about a few not-so-appropriate articles. That is why the volunteers began to archive such articles so that we will be able to show Mainichi that their cover-up attempt is only in vain. Since 06/27/08
https://w.atwiki.jp/v-lyrics/pages/61.html
Latest 10 Updated Artist Page mumumusic KazuP UtataP NayutaP malo SHIKI ShakeP(Shake Sphere) OreP TatamiP(North-T) cosMo@bousouP Index in Alphabetical Order 164 40meterP AgoanikiP AkunoP awk BasutiP BosuhashirazuisoidearuitekitebokurawotasuketeP BucchigiriP CapmiraP chu-ji CielP cosMo@bousouP DeadballP Dixie Flatline doriko FumidoriP HadanoP HanasoumenP haruna808 HaruP@gotorin HayayaP ika inaphon JimmyThumbP KajukiP KasuteranohitoP KazuP KuwagataP KyoudaiP kz LamazeP m@rk MachigeriitaP malo MazoP mikuru396 mumumusic Naopo NataP NayutaP orange OreP OSTER-project PENGUINS PROJECT PutinP Re nG ryo RyuuseiP ShakeP(Shake Sphere) ShigotoshiteP SHIKI ShinP shu-tP SignalP SunzriverP SuzukiP TatamiP(North-T) ToraborutaP TsurishiP TuKuRu UtataP yae YugamiP YuuyuP _
https://w.atwiki.jp/asterisk99/pages/608.html
# SOME DESCRIPTIVE TITLE. # Copyright (C) 2021, PB'99 # This file is distributed under the same license as the NetworkX [Un # official Machine Translate] Japanese Doc package. # FIRST AUTHOR EMAIL@ADDRESS , 2021. # #, fuzzy msgid "" msgstr "" "Project-Id-Version NetworkX [Un official Machine Translate] Japanese Doc \n" "Report-Msgid-Bugs-To \n" "POT-Creation-Date 2021-06-25 23 18+0900\n" "PO-Revision-Date YEAR-MO-DA HO MI+ZONE\n" "Last-Translator FULL NAME EMAIL@ADDRESS \n" "Language-Team LANGUAGE LL@li.org \n" "MIME-Version 1.0\n" "Content-Type text/plain; charset=utf8\n" "Content-Transfer-Encoding 8bit\n" "Generated-By Babel 2.9.1\n" # ../../doc/index.rst 4 msgid "Software for Complex Networks" msgstr "複雑なネットワーク用のソフトウェア" # ../../doc/index.rst 6 msgid "" "NetworkX is a Python package for the creation, manipulation, and study of" " the structure, dynamics, and functions of complex networks." msgstr "NetworkXは、複雑なネットワークの構造、ダイナミクス、および関数を作成、操作、および調査するためのPythonパッケージです。" # ../../doc/index.rst 9 msgid "NetworkX provides " msgstr "NetworkXには次のものがあり" # ../../doc/index.rst 11 msgid "" "tools for the study of the structure and dynamics of social, biological, " "and infrastructure networks;" msgstr "ツール ソーシャル、生物、インフラ・ネットワークの構造と動態を研究する。" # ../../doc/index.rst 13 msgid "" "a standard programming interface and graph implementation that is " "suitable for many applications;" msgstr "多くのグラフに適した標準的なプログラミング・インターフェースとアプリケーション・インプリメンテーション" # ../../doc/index.rst 15 msgid "" "a rapid development environment for collaborative, multidisciplinary " "projects;" msgstr "協力的で学際的なプロジェクトのための迅速な開発環境" # ../../doc/index.rst 17 msgid "" "an interface to existing numerical algorithms and code written in C, C++," " and FORTRAN; and" msgstr "C、C++およびFORTRANで書かれた既存の数値アルゴリズムおよびコードへのインターフェース、および" # ../../doc/index.rst 19 msgid "the ability to painlessly work with large nonstandard data sets." msgstr "大規模な非標準データ・セットを容易に処理できるようになりました。" # ../../doc/index.rst 21 msgid "" "With NetworkX you can load and store networks in standard and nonstandard" " data formats, generate many types of random and classic networks, " "analyze network structure, build network models, design new network " "algorithms, draw networks, and much more." msgstr "NetworkXを使用すると、標準および非標準のデータ形式でネットワークを荷重および保存したり、さまざまなタイプのランダムおよびクラシックネットワークを生成したり、ネットワーク構造を解析したり、ネットワークモデルを構築したり、新しいネットワークアルゴリズムを設計したり、ネットワークを描画したりすることができます。" # ../../doc/index.rst 27 msgid "Audience" msgstr "対象ユーザー" # ../../doc/index.rst 29 # 🕷🕷🕷 Barabási msgid "" "The audience for NetworkX includes mathematicians, physicists, " "biologists, computer scientists, and social scientists. Good reviews of " "the science of complex networks are presented in Albert and Barab叩si " "[BA02]_, Newman [Newman03]_, and Dorogovtsev and Mendes [DM03]_. See also" " the classic texts [Bollobas01]_, [Diestel97]_ and [West01]_ for graph " "theoretic results and terminology. For basic graph algorithms, we " "recommend the texts of Sedgewick (e.g., [Sedgewick01]_ and " "[Sedgewick02]_) and the survey of Brandes and Erlebach [BE05]_." msgstr "NetworkXの読者には、数学者、物理学者、生物学者、コンピュータ科学者、ソーシャルの科学者が含まれています。複雑なネットワークの科学に関する優れたレビューは、Albert and Barab叩si[BA02]_、Newman[Newman03]_、Dorogovtsevとメンデス[DM03]_に掲載されています。グラフの理論的結果および用語については、クラシックのテキスト[Bollobas01]_、[Diestel97]_および[West01]_も参照してください。基本グラフアルゴリズムについては、Sedgewickのテキスト(例 [Sedgewick01]_および[Sedgewick02]_)およびBrandesとErlebachの調査[BE05]_をお勧めします。" # ../../doc/index.rst 39 # 🕷🕷🕷 用語集へ Python/Python msgid "Python" msgstr "パイソン(Python)" # ../../doc/index.rst 41 msgid "" "Python is a powerful programming language that allows simple and flexible" " representations of networks as well as clear and concise expressions of " "network algorithms. Python has a vibrant and growing ecosystem of " "packages that NetworkX uses to provide more features such as numerical " "linear algebra and drawing. In order to make the most out of NetworkX " "you will want to know how to write basic programs in Python. Among the " "many guides to Python, we recommend the `Python documentation " " https //docs.python.org/3/ `_ and the text by Alex Martelli " "[Martelli03]_." msgstr "Pythonは強力なプログラミング言語であり、ネットワークの単純で柔軟な表現と、ネットワークアルゴリズムの明確で簡潔な表現を可能にします。Pythonには、NetworkXが数値線形代数やドローイングなどの機能を提供するために使用するパッケージの活発で成長しているエコシステムがあります。NetworkXを最大限に活用するために、Pythonで基本プログラムを作成する方法を知りたいと思うでしょう。Pythonに関する多くのガイドの中で、`Python documentation https //docs.python.org/3/ `_とAlexマルテリ[マルテリ03]_によるテキストをお勧めします。" # ../../doc/index.rst 51 msgid "Free software" msgstr "フリーソフトウェア" # ../../doc/index.rst 53 msgid "" "NetworkX is free software; you can redistribute it and/or modify it under" " the terms of the doc `3-clause BSD License /license `. We welcome " "contributions. Join us on `GitHub " " https //github.com/networkx/networkx `_." msgstr "NetworkXはフリーソフトウェアです。doc `3-clause BSDライセンス /ライセンス `の条件に従って再配布および/または修正することができます。私たちは貢献を歓迎します。`GitHub https //github.com/networkx/networkx `_に参加してください。" # ../../doc/index.rst 58 msgid "History" msgstr "履歴" # ../../doc/index.rst 60 msgid "" "NetworkX was born in May 2002. The original version was designed and " "written by Aric Hagberg, Dan Schult, and Pieter Swart in 2002 and 2003. " "The first public release was in April 2005. Many people have contributed " "to the success of NetworkX. Some of the contributors are listed in the " " doc `credits. credits `" msgstr "NetworkXは2002年5月に生まれました。オリジナル版は、Aric Hagberg氏、Dan Schult氏、ピーテルSwart氏によって2002年と2003年に設計・執筆されました。最初のパブリックリリースは2005年4月でした。多くの人々がNetworkXの成功に貢献してきました。doc `クレジット. クレジット `には、多くの貢献者が掲載されています。" # ../../doc/index.rst 67 msgid "Documentation" msgstr "ドキュメント化" # ../../doc/index.rst msgid "Release" msgstr "リリース" # ../../doc/index.rst 71 msgid "|version|" msgstr "バージョン" # ../../doc/index.rst msgid "Date" msgstr "[日付]" # ../../doc/index.rst 72 msgid "|today|" msgstr "今日" # ../../doc/index.rst 89 msgid "Indices and tables" msgstr "インデックスおよびテーブル" # ../../doc/index.rst 91 msgid " ref `genindex`" msgstr " ref `genindex`" # ../../doc/index.rst 92 msgid " ref `modindex`" msgstr " ref `modindex`" # ../../doc/index.rst 93 msgid " ref `search`" msgstr " ref `検索`" # ../../doc/index.rst 94 msgid " ref `glossary`" msgstr " ref `用語集`" カウンタ: - 名前 コメント
https://w.atwiki.jp/testlink/pages/101.html
?php/** * TestLink Open Source Project - http //testlink.sourceforge.net/ * This script is distributed under the GNU General Public License 2 or later. * * Filename $RCSfile const.inc.php,v $ * * @version $Revision 1.37 $ * @modified $Date 2007/08/27 06 36 40 $ by $Author franciscom $ * @author Martin Havl叩t * * SCOPE * Global Constants used throughout TestLink * Script is included via config.inc.php * There should be changed for your environment * *------------------------------------------------------------------- * Revisions * 20070822 - franciscom - localisation ru_RU * 20070818 - franciscom - $g_default_roleid * 20070705 - franciscom - config of $g_req_status. * 20070624 - franciscom - $g_title_sep* * 20070607 - franciscom * to solve BUGID 887 * GET_ACTIVE_BUILD, GET_INACTIVE_BUILD * GET_OPEN_BUILD,GET_CLOSED_BUILD * * 20070523 - franciscom * MENU_ITEM_OPEN, MENU_ITEM_CLOSE * * 20070519 - franciscom * $g_locales_html_select_date_field_order * *------------------------------------------------------------------- * Japanese translation *------------------------------------------------------------------- * Testing Engineer s Forum (TEF) in Japan * Working Group of TestLink Japanese Translation Project * * http //blues.se.uec.ac.jp/swtest/forum.html * http //www38.atwiki.jp/testlink/ * http //sourceforge.jp/projects/testlinkjp/ * * @modified $Date$ $Author$ *-------------------------------------------------------------------**/ // ----------------------------------------------------------------------------/** [GLOBAL] */ // ----------------------------------------------------------------------------/** [GUI] */ /* Release MUST BE changed at the release day */define( TL_VERSION , 1.7.0 RC 3 ); define( TL_BACKGROUND_DEFAULT , "#9BD"); // default color // planAddTC_m1-tpldefine( TL_STYLE_FOR_ADDED_TC , "background-color yellow;"); define( TL_COOKIE_KEEPTIME , (time()+60*60*24*30)); // 30 days // Configurable templates this can help if you want to use a non standard template.// i.e. you want to develop a new one without loosing the original template.// $g_tpl = array( tcView = "tcView.tpl", tcSearchView = "tcSearchView.tpl", tcEdit = "tcEdit.tpl", tcNew = "tcNew.tpl", execSetResults = "execSetResults.tpl", tcView = "tcView.tpl", tcSearchView = "tcView.tpl", usersview = "usersview.tpl"); // -------------------------------------------------------------------/** [LDAP authentication errors */// // Based on mantis issue tracking system code// ERROR_LDAP_*define( ERROR_LDAP_AUTH_FAILED ,1400 );define( ERROR_LDAP_SERVER_CONNECT_FAILED ,1401 );define( ERROR_LDAP_UPDATE_FAILED ,1402 );define( ERROR_LDAP_USER_NOT_FOUND ,1403 );define( ERROR_LDAP_BIND_FAILED ,1404 ); // ----------------------------------------------------------------------------/** [LOCALIZATION] */ // String that will used as prefix, to generate an string when a label to be localized// is passed to lang_get() to be translated, by the label is not present in the strings// file.// The resulting string will be TL_LOCALIZE_TAG . label// Example // want to translate "Hello" - LOCALIZE Hello//define( TL_LOCALIZE_TAG ,"LOCALIZE "); // These are the supported locales.// This array will be used to create combo box at user interface.// Please mantain the alphabetical order when adding new locales.// Attention // The locale selected by default in the combo box when// creating a new user WILL BE fixed by the value of the default locale,// NOT by the order of the elements in this array.//$g_locales = array( zh_CN = Chinese Simplified , en_GB = English (UK) , en_US = English (US) , fr_FR = Fran ccedil;ais , de_DE = German , it_IT = Italian , pl_PL = Polski , pt_BR = Portuguese (Brazil) , es_AR = Spanish (Argentine) , es_ES = Spanish , ru_RU = Russian , jp_JP = Japanese ); // see strftime() in PHP manual// Very IMPORTANT // setting according local is done in testlinkInitPage() using set_dt_formats()// Default values$g_date_format ="%d/%m/%Y";$g_timestamp_format = "%d/%m/%Y %H %M %S"; $g_locales_date_format = array( en_GB = "%d/%m/%Y", en_US = "%m/%d/%Y", it_IT = "%d/%m/%Y", es_AR = "%d/%m/%Y", es_ES = "%d/%m/%Y", de_DE = "%d.%m.%Y", pl_PL = "%d.%m.%Y", fr_FR = "%d/%m/%Y", pt_BR = "%d/%m/%Y", ru_RU = "%d/%m/%Y", zh_CN = "%Y鐃緒申%m鐃緒申%d鐃緒申", jp_JP = "%Y/%m/%d"); $g_locales_timestamp_format = array( en_GB = "%d/%m/%Y %H %M %S", en_US = "%m/%d/%Y %H %M %S", it_IT = "%d/%m/%Y %H %M %S", es_AR = "%d/%m/%Y %H %M %S", es_ES = "%d/%m/%Y %H %M %S", de_DE = "%d.%m.%Y %H %M %S", pl_PL = "%d.%m.%Y %H %M %S", fr_FR = "%d/%m/%Y %H %M %S", pt_BR = "%d/%m/%Y %H %M %S", ru_RU = "%d/%m/%Y %H %M %S", zh_CN = "%Y鐃緒申%m鐃緒申%d鐃緒申 %H扮%M鐃緒申%S鐃緒申", jp_JP = "%Y/%m/%d %H %M %S"); // for smarty html_select_date custom function$g_locales_html_select_date_field_order = array( en_GB = "dmY", en_US = "mdY", it_IT = "dmY", es_AR = "dmY", es_ES = "dmY", de_DE = "dmY", pl_PL = "dmY", fr_FR = "dmY", pt_BR = "dmY", ru_RU = "dmY", zh_CN = "Ymd", jp_JP = "Ymd"); // -------------------------------------------------------------------/** ATTACHMENTS */ /* some attachment related defines, no need to modify them */define("TL_REPOSITORY_TYPE_DB",1);define("TL_REPOSITORY_TYPE_FS",2); define("TL_REPOSITORY_COMPRESSIONTYPE_NONE",1);define("TL_REPOSITORY_COMPRESSIONTYPE_GZIP",2); // Two models to manage attachment interface in the execution screen// $att_model_m1 - shows upload button and title //$att_model_m1- show_upload_btn = true;$att_model_m1- show_title = true;$att_model_m1- num_cols = 4;$att_model_m1- show_upload_column = false; // $att_model_m2 - hides upload button and title// $att_model_m2- show_upload_btn = false;$att_model_m2- show_title = false;$att_model_m2- num_cols = 5;$att_model_m2- show_upload_column = true; // -------------------------------------------------------------------/** [MISC] */ /** [Test Case Status] */ // $g_tc_status// $g_tc_status_css// $g_tc_status_verbose_labels// $g_tc_status_for_ui////// These are the possible Test Case statuses.//// Localisation Note // IMPORTANT // Do not do localisation here, i.e do not change "passed"// with the corresponding word in you national language.// These strings ARE NOT USED at User interface level.//// Labels showed to users will be created using lang_get()// function, getting key from // $g_tc_status_verbose_labels// example // lang_get($g_tc_status_verbose_labels["passed"]);//// If you add new statuses, please use custom_strings.txt to add your// localized strings//$g_tc_status = array ("failed" = f ,"blocked" = b ,"passed" = p ,"not_run" = n ,"not_available" = x ,"unknown" = u ,"all" = all ); // Please if you add an status you need to add a corresponding CSS Class// in the CSS files (see the gui directory)$g_tc_status_css = array_flip($g_tc_status); // Used to get localized string to show to users// key status// value id to use with lang_get() to get the string, from strings.txt// or custom_strings.txt//$g_tc_status_verbose_labels = array( "all" = "test_status_all_status","not_run" = "test_status_not_run","passed" = "test_status_passed","failed" = "test_status_failed","blocked" = "test_status_blocked","not_available" = "test_status_not_available","unknown" = "test_status_unknown"); // Used to generate radio and buttons at user interface level.// Order is important, because this will be display order on User Interface//// key = verbose status as defined in $g_tc_status// value = string id defined in the strings.txt file, // used to localize the strings.//// $g_tc_status_for_ui = array(// "not_run" = "test_status_not_run",// "passed" = "test_status_passed",// "failed" = "test_status_failed",// "blocked" = "test_status_blocked"// ); $g_tc_status_for_ui = array("passed" = "test_status_passed","failed" = "test_status_failed","blocked" = "test_status_blocked"); // radio button selected by default$g_tc_status_for_ui_default="blocked"; // ------------------------------------------------------------------------------- /** [Roles] */define("TL_ROLES_GUEST",5);define("TL_ROLES_NONE",3);define("TL_ROLES_NO_RIGHTS",3); define("TL_ROLES_UNDEFINED",0);define("TL_ROLES_INHERITED",0); // Roles with id to this role can be deleted from user interfacedefine("TL_LAST_SYSTEM_ROLE",9); // you can change the default role used for new users // - created from the login page.// - created using user management features//// use custom_config.inc.php instead of doing changes here$g_default_roleid=TL_ROLES_GUEST; // when a role is deleted, a new role must be assigned to all users// having role to be deleted// A right choice seems to be using $g_default_roleid.// You can change this adding a config line in custom_config.inc.php$g_role_replace_for_deleted_roles=$g_default_roleid; // used to mark up inactive objects (test projects, etc)define("TL_INACTIVE_MARKUP","* "); // used on user management page to give different colour // to different roles.// If you don t want use colouring then configure in this way// $g_role_colour = array ( );//$g_role_colour = array ( "admin" = white ,"tester" = wheat , leader = acqua , senior tester = #FFA , guest = pink , test designer = cyan , no rights = salmon , inherited = seashell ); $g_tc_risks = array( L1 , L2 , L3 , M1 , M2 , M3 , H1 , H2 , H3 ); // use when componing an title using several strings$g_title_sep= ;$g_title_sep_type2= ;$g_title_sep_type3= - ; // used when created a test suite path, concatenating test suite names$g_testsuite_sep= / ; // [Main page]// define( MENU_ITEM_OPEN , div class="module-grey" div div div );// define( MENU_ITEM_CLOSE , /div /div /div /div ); // using niftycornersdefine( MENU_ITEM_OPEN , div class="menu_bubble" );define( MENU_ITEM_CLOSE , /div p ); // moved from requirements.inc.phpdefine( TL_REQ_STATUS_VALID , V );define( TL_REQ_STATUS_NOT_TESTABLE , N ); $g_req_status=array(TL_REQ_STATUS_VALID = req_state_valid , TL_REQ_STATUS_NOT_TESTABLE = req_state_not_testable ); // // [FUNCTION MAGIC NUMBERS] [DON T BOTHER ABOUT]// used in several functions instead of MAGIC NUMBERS - Don t change define( ALL_PRODUCTS ,0);define( TP_ALL_STATUS ,null);define( FILTER_BY_PRODUCT ,1);define( FILTER_BY_TESTPROJECT ,FILTER_BY_PRODUCT);define( TP_STATUS_ACTIVE ,1);define( NON_TESTABLE_REQ , n );define( VALID_REQ , v ); define( DSN ,FALSE); // for method connect() of database.classdefine( ANY_BUILD ,null);define( GET_NO_EXEC ,1); define( ACTIVE ,1);define( INACTIVE ,0);define( OPEN ,1);define( CLOSED ,0); // moved from testSetNavigator.phpdefine( FILTER_BY_BUILD_OFF ,0);define( FILTER_BY_OWNER_OFF ,0);define( FILTER_BY_TC_STATUS_OFF ,null); // moved from testSetRemove.phpdefine( WRITE_BUTTON_ONLY_IF_LINKED ,1); // moved from tc_exec_assignment.phpdefine( FILTER_BY_TC_OFF ,null); define( ALL_USERS_FILTER ,null); define( ADD_BLANK_OPTION ,true); define( DO_LANG_GET ,1);define( DONT_DO_LANG_GET ,0); // define( FILTER_BY_SHOW_ON_EXECUTION ,1); define( GET_ALSO_NOT_EXECUTED ,null);define( GET_ONLY_EXECUTED , executed ); // generateTestSpecTree()define( HIDE_TESTCASES ,1);define( SHOW_TESTCASES ,0);define( FILTER_INACTIVE_TESTCASES ,1);define( DO_NOT_FILTER_INACTIVE_TESTCASES ,0); define( DO_ON_TESTCASE_CLICK ,1);define( NO_ADDITIONAL_ARGS , );define( NO_KEYWORD_ID_TO_FILTER ,0); define( RECURSIVE_MODE ,TRUE);define( NO_NODE_TYPE_TO_FILTER ,null);define( ANY_OWNER ,null); define( ALL_BUILDS , a );define( ALL_TEST_SUITES , all ); define( GET_ACTIVE_BUILD ,1);define( GET_INACTIVE_BUILD ,0);define( GET_OPEN_BUILD ,1);define( GET_CLOSED_BUILD ,0); // bug_interface- buildViewBugLink()define( GET_BUG_SUMMARY ,true); // gen_spec_view()define( DO_PRUNE ,1); // getAllRoles()define( EXCLUDE_UNDEFINED_ROLE ,0);// -------------------------------------------------------------------?
https://w.atwiki.jp/irukakiss/pages/52.html
/*繝ュ繧エ逕サ蜒上r螟画峩縺励◆縺・?エ蜷医・縲∽サ・荳九・URL繧偵Ο繧エ縺ョURL縺ォ譖ク縺肴鋤縺医※縺上□縺輔>縲・/ #atwiki jp-bg1 { background transparent url(http //img.atwiki.com/image/035col3/logo_atwiki.gif) no-repeat scroll 0%; } #header a#atwiki-jp-bg1 { height 100px; width 100px; } /*ads*/ .gafc_on{ background-color #FEFF8F; } .gafc_domain{ color green; } /* 繝壹・繧ク荳矩Κ縺ョ邱ィ髮・Γ繝九Η繝シ繧定。ィ遉コ縺励◆縺・?エ蜷医・繝ヲ繝シ繧カCSS縺ォ莉・荳九・・題。後r霑ス蜉?縺励※縺上□縺輔>縲・ #toolbar{display block;} */ body { background #fff; color #666; font-family arial,helvetica,"繝偵Λ繧ョ繝手ァ偵ざ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"繝。繧、繝ェ繧ェ",Meiryo,"MS P繧エ繧キ繝・け",clean,sans-serif; font-size 13px; font-size-adjust none; font-stretch normal; font-style normal; font-variant normal; font-weight normal; line-height normal; } body *{ line-height 1.5; } a link, a visited{ color #480; } a hover, a active{ color #FFA500; } .box after { clear both; content "."; display block; height 0pt; visibility hidden; } .box{ zoom 100%; } /**/ #header #header a#atwiki-jp-bg1 { display block; float left; margin 20px 25px 20px 5px; } #header h1, #header h2{ margin 0; padding 0; line-height 1; } #header h1{ padding-top 40px; padding-bottom 4px; } #header h1 a{ color #6c0; font-size 30px; text-decoration none; line-height 1; } #header h2 a{ color #333; font-size 15px; text-decoration none; line-height 1; } #container #wrapper #footer , #toolbar #toolbar #contents_inner #menubar_wrapper #menubar #menubar2 #menubar_inner , #menubar_inner2 .menu fieldset{ width 135px; overflow hidden; } .menu select{ max-width 135px; } .menu input{ max-width 135px; } .menu textarea{ max-width 135px; background #fff; } #footer_inner #toolbar_inner /* General Rules */ p, dl, multicol{ display block; margin 1em 0; } dd{ display block; margin-left 20px; } dt{ font-weight bold; } blockquote{ display block; margin 1em; } address{ display block; font-style italic; } center{ display block; text-align center; } h1{ margin 13px 0; font-size 167%; font-weight bold; } h2{ margin 13px 0; font-size 152%; font-weight bold; } h3{ margin 13px 0; font-size 144%; font-weight bold; } h4{ margin 13px 0; font-size 129%; font-weight bold; } h5{ margin 13px 0; font-size 114%; font-weight bold; } h6{ margin 13px 0; font-size 100%; font-weight bold; } xmp, pre, plaintext{ display block; font-family fixed; margin 1em 0; white-space -moz-pre-wrap; /* Mozilla */ white-space -pre-wrap; /* Opera 4-6 */ white-space -o-pre-wrap; /* Opera 7 */ white-space pre-wrap;/* CSS3 */ word-wrap break-word;/* IE 5.5+ */ } table{ display table; border-spacing 2px; border-collapse collapse; margin-top 1em; margin-bottom 1em; -moz-box-sizing border-box; text-indent 0; border 1px solid #aaa; } caption{ display table-caption; text-align center; } tr{ display table-row; vertical-align inherit; } col{ display table-column; } colgroup{ display table-column-group; } tbody{ display table-row-group; vertical-align middle; } thead{ display table-header-group; vertical-align middle; } tfoot{ display table-footer-group; vertical-align middle; } table tr{ vertical-align middle; } td{ display table-cell; vertical-align inherit; text-align inherit; padding 3px; border 1px solid #999; } th{ display table-cell; vertical-align inherit; font-weight bold; padding 3px; border 1px solid #999; } q before{ content open-quote; } q after{ content close-quote; } b, strong{ font-weight bolder; } i, cite, em, var, dfn{ font-style italic; } u, ins{ text-decoration underline; } s, strike, del{ text-decoration line-through; } sub{ vertical-align sub; font-size smaller; line-height normal; } sup{ vertical-align super; font-size smaller; line-height normal; } nobr{ white-space nowrap; } ul{ display block; list-style-type disc; margin 1em 0; padding-left 25px; } ol{ display block; list-style-type decimal; margin 1em 0; padding-left 25px; } li{ display list-item; } ul ul, ul ol, ul dl, ol ul, ol ol, ol dl, dl ul, dl ol, dl dl { margin-top 0; margin-bottom 0; } ol ul, ul ul{ list-style-type circle; } ol ol ul, ol ul ul, ul ol ul, ul ul ul{ list-style-type square; } hr{ display block; height 1px; border 0px none; margin 0.5em auto; } /**/ ul { list-style-image url( http //img.atwiki.com/image/035col3/menu_arrow.gif ); } pre{ background #fd8; padding 10px; color #333; } blockquote{ border-left 3px solid #FFA500; padding-left .5em; }
https://w.atwiki.jp/l2j-wiki/pages/28.html
設定の前に、まずCドライブ直下に 【WWW】と言うフォルダを作成して下さい。 これはホームディレクトリになるので名前は英語なら好きな文字でも 平気です。 ホームディレクトリ名を変更する場合は、設定をそれに合わせて下さい。 さらにその中に【public_html】と言うフォルダも作成して下さい ここから【httpd.conf】の修正をしていきます。 CドライブのApache2フォルダにconfフォルダがありその中に httpd.confファイルがあるのでメモ帳などで開いて下さい。 173行目付近に LoadModule php5_module "c /php5/php5apache2.dll" を追加します。 これはApache2にPHPのdllの場所を教えてやります。 228行目の DocumentRoot "C /Apache2/htdocs" 変更後は、 #DocumentRoot "C /Apache2/htdocs" DocumentRoot "C /WWW/public_html" にします。 【注意】 作成したホームディレクトリ名とドキュメントルートに指定するホームディレクトリ名が完全に一致すること 253行目 Directory "C /Apache2/htdocs" 変更後は、 # Directory "C /Apache2/htdocs" Directory "C /WWW/public_html" 作業ディレクトリの C \WWW\public_html をドキュメントルートに指定したために、 public_htmlにあるファイルは、 http //127.0.0.1/にファイル名(たとえば test.html)を付て、 http //127.0.0.1/test.htmlとアクセスすると、 見られるようになりました。 また、index.htmlなど、優先表示されるファイルがあれば、 http //127.0.0.1/またはhttp //127.0.0.1だけで表示されす。 267行目 Options Indexes FollowSymLinks 変更後は、 Options Indexes FollowSymLinks MultiViews ExecCGI Includes MultiViews は、ブラウザから来るさまざまな言語やメディアタイプに対する要求にスムーズに応じられるようにします。 ExecCGI はCGI が使えるように、 Includes は SSI が使えるようにします。 321行目 DirectoryIndex index.html index.html.var 変更後は、 DirectoryIndex index.html index.html.var DirectoryIndex index.php index.htm index.htm.var これは、ブラウザでディレクトリが呼び出されたときに、真っ先に表示されるファイルの名前の指定です。 そのようなファイル名として、 元からあったindex.htmlの次にindex.htmを追加したので、 ディレクトリにindex.htmlがないときは、index.htmが優先表示されます。 511行目付近 ここには最初何も書かれていません。Apache manual の設定部分の直後にキーボードの Enter キーを押して1行空白行を作り、 その下に次の記述を挿入します。 Alias /html "C /usr/local/html" Directory "C /usr/local/html" Options Indexes FollowSymLinks MultiViews IncludesNoExec AddOutputFilter Includes html AllowOverride None Order allow,deny Allow from all /Directory 元からあった記述は、Alias 命令を使って、Apache2の本体と同時にインストールされたApacheのマニュアルを簡単に読めるようにしています。 ブラウザで http //127.0.0.1/manual/ にアクセスすると、Apache のマニュアルが表示されます。 516行目 ScriptAlias /cgi-bin/ "C /Apach/Apache2/cgi-bin/" 変更後は、 ScriptAlias /cgi-bin/ "C /Apach/Apache2/cgi-bin/" ScriptAlias /php/ "C /php/" PHPの自体の場所を指定します。 615行目-616行目 (上記修正後の行番号。行番号がずれているかもしれません) ReadmeName README.html HeaderName HEADER.html 変更後は、 #ReadmeName README.html #HeaderName HEADER.html 622行目(上記修正後の行番号。行番号がずれているかもしれません) IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t 変更後は、 #IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t この設定を有効にしておくと、せっかく作ったreadme.html や readme.txt などの名前が表示されません。 この設定も無効にしておきましょう。 704行目 (上記修正後の行番号。行番号がずれているかもしれません) LanguagePriority en da nl et fr de el it ja ko no pl pt pt-br ltz ca es sv tw 変更後は、 LanguagePriority ja en da nl et fr de el it ko no pl pt pt-br ltz ca es sv tw 言語の優先順位で、英語が最優先で、日本語が9番目になっています。 これでは、英語と認識して、日本語が文字化けする原因になります。日本語最優先に変更します。 762行目 AddType application/x-compress .Z AddType application/x-gzip .gz .tgz 変更後は、 AddType application/x-compress .Z AddType application/x-gzip .gz .tgz AddType application/x-httpd-php .php Action application/x-httpd-php "/php/php.exe" 786行目 (上記修正後の行番号。行番号がずれているかもしれません) #AddHandler cgi-script .cgi 変更後は、 AddHandler cgi-script .cgi コメントアウト (#) を削除して、記述を有効にします。「拡張子 .cgi がついたファイルをCGIスクリプトとして実行する」という意味です。 791行目 (上記修正後の行番号。行番号がずれているかもしれません) #AddHandler send-as-is asis 変更後は、 AddHandler send-as-is asis コメントアウト (#) を削除して、CGIスクリプトなどからHTTPヘッダを送れるようにします。 796行目 (上記修正後の行番号。行番号がずれているかもしれません) #AddHandler imap-file map 変更後は、 AddHandler imap-file map コメントアウト (#) を削除して、イメージマップが使えるようにします。 811-812行目 (上記修正後の行番号。行番号がずれているかもしれません) #AddType text/html .shtml #AddOutputFilter INCLUDES .shtml 変更後は、 AddType text/html .shtml AddOutputFilter INCLUDES .shtml AddType text/html .html AddOutputFilter INCLUDES .html 最初の2行からコメントアウト (#) を削除する! 拡張が .shtmlのSSIが使えるようにします。 同時に、3、4行目を追加して、拡張子が .shtmlでなく、.htmlでもSSIが機能するようにします。 変更後、httpd.conf を「上書き保存」または「名前をつけて保存」します。httpd.conf の名前を変更しないように。 最後に、Apache2を再起動してhttpd.confファイルの設定変更を有効にします。 戻る