約 6,043,040 件
https://w.atwiki.jp/goldkai1/pages/181.html
DISC1 walkthrough Introduction 1.Digging CampBoss Puga 2.Hergest Forest 3.Rune Gate 4.Rune Malna 5.Lake Mount 6.Sanitas Village 7.Mell 8.New Heinrogue Castle town & New Heinrogue Castle 9.To Sage's Road 10.Sage's Tower Gate 11.Port of No Return 12.Training Port 13.Tower of MusclesBoss Swordsman 14.Training Port 15.Tower of SpiritBoss Sorcerer 16.Training Port 17.Sage's Tower GateBoss Monk×3 Boss Bishop×3 Boss Grand Sage 18.Sage's Road 19.New Heinrogue Castle 20.Mahtas Village 21.Pixian Forest 22.Elf Land 23.New Heinrogue Castle 24.Barrows MayBoss Dracotaur 25.Old Heinrogue CastleBoss Blore 26.New Heinrogue Castle 27.Nautilus Port City Introduction It's called a walkthrough, but it's a straight path, so there's no particular strategy or anything.Chart to advance the main quest without detours, and sub-quests are on your own with reference to area data. I'll spare you the battle strategy, since you can just lvl up and hit them with physicals. 1.Digging Camp Talk to all the NPCs when you get to the square, and suddenly the monster boss gives you a vacation. After receiving leave, enter the building in the lower left corner, talk to Missilia and ask her about the secret passage. Back to the first building we were in, Examine the barrels and go to the secret passageway, which is funny that we haven't noticed them for 17 years. Eavesdrop on Romias and Puga's conversation and return, rising up en masse in the spirit of kill before you are killed. Burke and Michelia joins the party Go to the watch tower while watching the NPCs and the monster jostling around. Boss Puga After defeating Puga, bury Jonathan appropriate and go to Hergest Forest. 2.Hergest Forest Nothing special, just passing through. 3.Rune Gate Recover the locket from the soldier's corpse and you're done. 4.Rune Malna Enter the building and proceed with the story, stay overnight for now. Encounters Boo Rei during overnight stay and hears about the "People Becoming Monsters Disease." Boo Rei asked me to go see Marl to ask him about the progress of his research, so I go to see Marl. 5.Lake Mount Show the locket to the captain in the garrison, and he asks me to give it to the bereaved family since he going to guard the Rune Gate.Return to Rune Malna at the end of the above conversation, and flashy woman quest will occur. 6.Sanitas Village Heard that Marl was attacked and carried to the clinic, so went to see him at the clinic. Doctor asked me to get the "Spirit Healing Medicine." in pharmacy. When you receive the "Spirit Healing Medicine," give it to the doctor, who will tell you to come back tomorrow and stay overnight at the inn.If you go to the hot spring before staying at the inn, a sub-quest will occur. The inn doesn't have to payment, just go to the back room and the story goes on. Marl is regaining consciousness, so we talk to him, and we something or other decide to go to the New Heinrogue Castle. Kai lacks initiative. 7.Mell First, go to the Proprietress to give the sad news. We go to the elders to hear about Michelia's parents, from this point on, the parents' story fades out of the scenario. Do exactly what Marr told to do and leave Missilia at a relative's house, then something or other we'll get back to the three of us and leave for the New Heinrogue Castle.After leaving Missilia with her aunt in the Meru, whether or not you go into your aunt's house without returning to the inn determines whether or not events in Training Port will occur later on. When Missilia joins the party, there will be a Lv correct for Missilia. Fara joins just outside of Mell. 8.New Heinrogue Castle town & New Heinrogue Castle First, try to enter the castle and get turned away at the gate. Examined the flier near to the inn and decided to apply for the guard soldier recruitment.Dragon QuestⅥ? Overnight stay at an inn and New Heinrogue Castle Grand Sumo Tournament, which is called the Soldier Recruitment Examination, is held. Loses easily, but something or other it is revealed that Kai is a prince. I knew it. Told to go to the Sage's Tower to undergo a trial before starting journey, so asked for the location and go to the Sage's Tower.If you leave the Royal Chambers without asking the Sage where the Sage's Tower is, will return to the Royal Chambers to ask where it is.If you talk to the minister at this time, you get an allowance. 9.To Sage s Road Nothing special, just passing through. 10.Sage s Tower Gate Meet the Grand Sage, ask him where to go as he tells you to go and undergo the trials. 11.Port of No Return Get a boat ride to the Training Port. 12.Training Port Talk to the Guard and ask him about the ordeal, first overnight before going to Tower of Muscles.If you had picked up Michelia at her aunt's house in Mell, the quest occurs here 13.Tower of Muscles Nothing special, just passing through. Boss Swordsman Nothing of note, drop has good stuff. 14.Training Port Talk to the Guard and get compliments, first overnight before going to Tower of Spirit.If a quest occurs in No.12, it will also occur here. 15.Tower of Spirit Nothing special, just passing through. Boss Sorcerer Nothing of note. 16.Training Port Talk to the Guard and get compliments, first overnight before leaving. You leave after one night, and you can't leave without properly greeting the Guard at the end. 17.Sage s Tower Gate When come back, told on the first floor that there are more trials to go through. I knew it. Boss Monk×3 The half-nakedness is understandable if it's a reference to Monk around FF4, defeat them and go to the next floor. Boss Bishop×3 It's odd that Bishop is half-naked, defeat them and go to the next floor. Boss Grand Sage Don't get me started on the looks anymore, beat it and the trial is over. Leaving because a messenger is coming from New Heinrogue Castle. 18.Sage s Road On this side, the name is a little different, just passing through. 19.New Heinrogue Castle They say things about a "People Becoming Monsters Disease" epidemic. Look for the elves to find out. Leon, who lives in Mahtas Village, knows a lot about elves.So going to see Leon. Suddenly encountering an excited patient on the Map1, but being taken away in a disciplined and orderly manner. 20.Mahtas Village Talk to Leon, he's the only one who can't defend being called a jerk. Talk to the man in the red hat outside Leon's house and ask him about Subahnoff the woodcutter who saw the elves. Talk to Subahnoff in the lower right corner of the Map1, he is busy and wants you to come to the bar at night. Pass the time until night, listen to the story about the pixie in the dirty shrine on Map3.Be sure to take special care of your tiny friend. At night, talked to Subahnoff at the bar and he said he saw elves in the Pixian Forest, so decided to go there.You can take the Fara's equipment off around here. 21.Pixian Forest Nothing special, just passing through. Tsujigiri in front of Elf Land. couldn't take special care. 22.Elf Land Fara was cut down, but goes to see the elder, which was his original goal anyway. Elder didn't know anything, wasted time. Minna joins the party, taking responsibility for the Tsujigiri, is Kai a saint or something? Going back to New Heinrogue Castle to report a wasted trip. Dragon Sword obtain quest can be done in Sanitas Village from this timing. 23.New Heinrogue Castle Report to the ministers that it was a wasted trip, and hear that they are building a ship to go to the Sealed Cave. And by the way, I hear the story of the town being occupied, isn't that story more important? There is a person in charge at Rune Gate, so we decided to go meet him there.That said, Rune Gate can be skipped separately. 24.Barrows May McLeod meet up and join the party, Kai is too lazy to remember Romias' name.If you don't go to the Liberation of the town right here and take McLeod around, you'll see a few events. Climb the tower, note that Harpy and Kitsune's QP is high among the enemies that appear at this point. Boss Dracotaur Difficult part of DISC1. Though, is not an enemy of high lv physics or Kepler. Sarina joined after the boss battle.As we were leaving town, McLeod asked if we would like to visit Old Heinrogue Castle. We decided to go there. 25.Old Heinrogue Castle Kitsune appears here too. Memorize the look of the dungeon so you can enjoy it at the end. Be careful not to remove McLeod's equipment before the boss fight or he will take it with him. Boss Blore Dracotaur are stronger. How should I say to be told that he was the father of Sarina, who just joined us a few minutes ago.McLeod and Sarina will get a Lv adjustment at this time. In the back room, they find Kai's mother's 17 year-old corpse. ・◇・ Having served his purpose, returns to New Heinrogue Castle. McLeod leaves the party. 26.New Heinrogue Castle Report to the ministers, Sarina's origins and the names of the minister are revealed!Report to the ministers, Sarina's origins and the names of the minister are revealed! background up in this story fades out of the scenario. A ship has been completed in the Nautilus Port City, but there are no sailors, so we decided to go there.If you forgot to ask for the location of the Sage's Tower and had to go back, the Sage will be subtly sarcastic. 27.Nautilus Port City Conversation with the Manager near the ship, and since it seems they can't get enough sailors, the prince himself decides to go out and scout for sailors. Talk to every NPC in city and go to the bar at night. Talk to the nihilistic sailor at the bar, and he will say something like, "I'll give you an answer tomorrow," so you stay overnight at the inn. After staying one night, go to the place where the ship is, and talk to the nihilistic sailor who was at the bar.Baroa joins the party "It's settled then! Let's stock up then hit the waves!" The end of DISC 1 at this timing.Note that the "You must save before switching to Disc 2. Save now?" to save, you can't go on forever unless you save.
https://w.atwiki.jp/hisero/pages/23.html
クッキー付加 head !-- メタ情報として指定する場合 -- meta http-equiv="Set-Cookie" content="クッキー情報" /head !-- Javaで書く場合 -- script language="JavaScript" TYPE="text/javascript" document.cookie = "クッキー情報" /script !-- 適当なbody -- body WebServer01 br a href="./hoge" hoge /a br body 名前 コメント
https://w.atwiki.jp/wicky/pages/212.html
HTTPメッセージ HTTPは単純なテキストベースのプロトコルである。現在広く使用されているHTTPプロトコルはHTTP/1.1である。ただし古いブラウザなどではHTTP/1.0が使用されるが、Apacheを含むたいていのWebサーバではその両方に対応している。 Webサーバとクライアントの間では、複数行からなるHTTPメッセージがやり取りされる。WebクライアントがWebサーバへ送るメッセージを「リクエストメッセージ」、その応答としてWebサーバが返すメッセージを「レスポンスメッセージ」という。なお、HTTPメッセージにおける1行とは行末が「CRLF」(キャリッジリターン・ラインフィード)のテキストデータである。 リクエストメッセージ 次にリクエストメッセージのフォーマットの概略を示す。 先頭行のリクエストラインでは、次のような書式でサーバに送る「メソッド」(コマンド)を指定する。 メソッド URI HTTPバージョン ※「URI」(Universal Resource identifiers)とは、リソースの位置を示すための表記法である。実際にはURLはURIの一形式である。ここでは、WebサーバでDocumentRootとして設定されているディレクトリを起点とする絶対パスと考えてかまわない。 HTMLファイルやイメージファイルの取得には「GET」メソッドが使用される。たとえば、WebサーバのDocumentRootとして設定されているディレクトリから、HTTP/1.1プロトコルを使用し、HTMLファイル「index.html」を取得するリクエストラインは次のようになる。 GET /index.html HTTP/1.1 2行目以降のリクエストヘッダはリクエストに関する付加的な情報である。各行のフォーマットは次のようになる。 フィールド名:値 たとえば「host」フィールドはサーバのホスト名を指定する。なお、「バーチャルホストの設定?」で説明する、バーチャルホストに対応するため、HTTP/1.1以降ではリクエストヘッダに少なくともhostフィールドが必須になっている。次にhostフィールドの例を示す。 host www.peachpress.co.jp リクエストメッセージのヘッダ以降の部分であるメッセージボディが、クライアントからサーバに送る実際のデータである。コンテンツを取得するGETメソッドなどでは不要だが、たとえば、CGIプログラムなどにデータを送るPOSTメソッドでは、メッセージボディにデータを格納する。 主なメソッド 次に、一般的に使用されているHTTP/1.1のメソッドの例を示す。 ■HTTP/1.1の主なメソッド メソッド 説明 GET 指定したリソースを取得 HEAD 指定したリソースのレスポンスヘッダのみを取得 OPTIONS 使用できるメソッドやオプションの一覧を取得 POST サーバにリソースを送信 TRACE サーバの診断に利用 レスポンスメッセージ 次にリクエストメッセージを受け取ったWebサーバが返すレスポンスメッセージのフォーマットを示す。 先頭のステータスラインは要求されたリクエストの結果を示している。 HTTPバージョン ステータスコード 理由フレーズ 「ステータスコード」は結果を示す3桁の数値で、「理由フレーズ」はその簡単な説明である。たとえば要求されたファイルが見つからない場合には、次のようなステータスラインが返される。 ●ステータスコード HTTP/1.1 404 Not Found 次に主なステータスコードと理由フレーズを示す。 ■主なステータスコードと理由フレーズ ステータスコード 理由フレーズ 説明 200 OK リクエストが正しく処理された 400 Bad Request リクエストが不正なものであった 403 Forbidden アクセスが拒否された 404 Not Found ファイルが見つからない 405 Method Not Allowed 指定したメソッドがサポートされていない 415 Unsupporeted Media Type 指定したメディアタイプがサポートされていない 500 Internal Server Error サーバ内部のエラーが発生した 505 HTTP Version Not Supported リクエストしたバージョンはサポートされていない 「レスポンスヘッダ」はメッセージに関する付加情報である。各行の書式は「フィールド:値」となる。次に例を示す。 ●レスポンスヘッダ Date Wed, 08 Nov 2006 05 22 35 GMT ←日付 Server Apache/2.2.3 (Fedora) ←サーバ名 Last-Modified Fri, 29 Sep 2006 14 57 49 GMT ←最終更新日 ETag "1979a1-127-3d29b840" ←コンテンツに割り当てられる固有の値 Accept-Ranges bytes Content-Length 295 ←ファイルのサイズ Conection close Content-Type text/html; charset=UTF-8 ←①ファイルのタイプ ①の「Content-Type」がファイルのMIMIタイプである。HTMLファイルの場合には「text/html」になる。そのあとの「charset」で文字コードを指定することもある。 最後の「メッセージボディ」は実際にクライアントに送信するファイルである。つまり、HTMLファイルが要求された場合にはそのHTMLファイルの中身がメッセージボディになる。 ●メッセージボディ !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http //www.w3.org/TR/html4/loose.dtd" " html head title Sample /title meta http-equiv="Content-type" content="text/html; charset=UTF-8" /head body bgcolor="#FFFFFF" h1 Hello /h1 /body /html
https://w.atwiki.jp/sevenlives/pages/43.html
HTTP/0.9? HTTP/1.0? HTTP/1.1 HTTPS? HTTP/2? マルチパートデータ 【MIMEマルチーパート】? メディアタイプ【Content-type】 basic認証【ベーシック認証】 クッキー【Cookie】 リファラ パイプライン? データレンジ? コンテント・ネゴシエーション? 全二重? SPDY? メッセージ(HTTP) リクエスト?リクエスト・メッセージ?リクエスト・ライン? リクエスト・ヘッダ? リクエスト・ボディ? メッセージ・ボディ レスポンス?レスポンス・メッセージ?ステータス・ライン? レスポンス・ヘッダ? レスポンス・ボディ? ステータス・コード?ステータス・コード(200)? ステータス・コード(301) ステータス・コード(302) ステータス・コード(404)? ステータス・コード(500)?
https://w.atwiki.jp/feedback1970/pages/57.html
memo source 1 /* Licensed to the Apache Software Foundation (ASF) under one or more 2 * contributor license agreements. See the NOTICE file distributed with 3 * this work for additional information regarding copyright ownership. 4 * The ASF licenses this file to You under the Apache License, Version 2.0 5 * (the "License"); you may not use this file except in compliance with 6 * the License. You may obtain a copy of the License at 7 * 8 * http //www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 #ifndef APACHE_HTTP_CONFIG_H 18 #define APACHE_HTTP_CONFIG_H 19 20 #include "apr_hooks.h" 21 #include "util_cfgtree.h" 22 23 #ifdef __cplusplus 24 extern "C" { 25 #endif 26 27 /** 28 * @file http_config.h 29 * @brief Apache Configuration 30 */ 31 32 /* 33 * The central data structures around here... 34 */ 35 36 /* Command dispatch structures... */ 37 38 /** 39 * How the directives arguments should be parsed. 40 * @remark Note that for all of these except RAW_ARGS, the config routine is 41 * passed a freshly allocated string which can be modified or stored 42 * or whatever... 43 */ 44 enum cmd_how { 45 RAW_ARGS, /** cmd_func parses command line itself */ 46 TAKE1, /** one argument only */ 47 TAKE2, /** two arguments only */ 48 ITERATE, /** one argument, occuring multiple times 49 * (e.g., IndexIgnore) 50 */ 51 ITERATE2, /** two arguments, 2nd occurs multiple times 52 * (e.g., AddIcon) 53 */ 54 FLAG, /** One of On or Off */ 55 NO_ARGS, /** No args at all, e.g. /Directory */ 56 TAKE12, /** one or two arguments */ 57 TAKE3, /** three arguments only */ 58 TAKE23, /** two or three arguments */ 59 TAKE123, /** one, two or three arguments */ 60 TAKE13 /** one or three arguments */ 61 }; 62 /** 63 * This structure is passed to a command which is being invoked, 64 * to carry a large variety of miscellaneous data which is all of 65 * use to *somebody*... 66 */ 67 typedef struct cmd_parms_struct cmd_parms; 68 69 #if defined(AP_HAVE_DESIGNATED_INITIALIZER) || defined(DOXYGEN) 70 71 /** 72 * All the types of functions that can be used in directives 73 * @internal 74 */ 75 typedef union { 76 /** function to call for a no-args */ 77 const char *(*no_args) (cmd_parms *parms, void *mconfig); 78 /** function to call for a raw-args */ 79 const char *(*raw_args) (cmd_parms *parms, void *mconfig, 80 const char *args); 81 /** function to call for a take1 */ 82 const char *(*take1) (cmd_parms *parms, void *mconfig, const char *w); 83 /** function to call for a take2 */ 84 const char *(*take2) (cmd_parms *parms, void *mconfig, const char *w, 85 const char *w2); 86 /** function to call for a take3 */ 87 const char *(*take3) (cmd_parms *parms, void *mconfig, const char *w, 88 const char *w2, const char *w3); 89 /** function to call for a flag */ 90 const char *(*flag) (cmd_parms *parms, void *mconfig, int on); 91 } cmd_func; 92 93 /** This configuration directive does not take any arguments */ 94 # define AP_NO_ARGS func.no_args 95 /** This configuration directive will handle it s own parsing of arguments*/ 96 # define AP_RAW_ARGS func.raw_args 97 /** This configuration directive takes 1 argument*/ 98 # define AP_TAKE1 func.take1 99 /** This configuration directive takes 2 arguments */ 100 # define AP_TAKE2 func.take2 101 /** This configuration directive takes 3 arguments */ 102 # define AP_TAKE3 func.take3 103 /** This configuration directive takes a flag (on/off) as a argument*/ 104 # define AP_FLAG func.flag 105 106 /** method of declaring a directive with no arguments */ 107 # define AP_INIT_NO_ARGS(directive, func, mconfig, where, help) \ 108 { directive, { .no_args=func }, mconfig, where, RAW_ARGS, help } 109 /** method of declaring a directive with raw argument parsing */ 110 # define AP_INIT_RAW_ARGS(directive, func, mconfig, where, help) \ 111 { directive, { .raw_args=func }, mconfig, where, RAW_ARGS, help } 112 /** method of declaring a directive which takes 1 argument */ 113 # define AP_INIT_TAKE1(directive, func, mconfig, where, help) \ 114 { directive, { .take1=func }, mconfig, where, TAKE1, help } 115 /** method of declaring a directive which takes multiple arguments */ 116 # define AP_INIT_ITERATE(directive, func, mconfig, where, help) \ 117 { directive, { .take1=func }, mconfig, where, ITERATE, help } 118 /** method of declaring a directive which takes 2 arguments */ 119 # define AP_INIT_TAKE2(directive, func, mconfig, where, help) \ 120 { directive, { .take2=func }, mconfig, where, TAKE2, help } 121 /** method of declaring a directive which takes 1 or 2 arguments */ 122 # define AP_INIT_TAKE12(directive, func, mconfig, where, help) \ 123 { directive, { .take2=func }, mconfig, where, TAKE12, help } 124 /** method of declaring a directive which takes multiple 2 arguments */ 125 # define AP_INIT_ITERATE2(directive, func, mconfig, where, help) \ 126 { directive, { .take2=func }, mconfig, where, ITERATE2, help } 127 /** method of declaring a directive which takes 1 or 3 arguments */ 128 # define AP_INIT_TAKE13(directive, func, mconfig, where, help) \ 129 { directive, { .take3=func }, mconfig, where, TAKE13, help } 130 /** method of declaring a directive which takes 2 or 3 arguments */ 131 # define AP_INIT_TAKE23(directive, func, mconfig, where, help) \ 132 { directive, { .take3=func }, mconfig, where, TAKE23, help } 133 /** method of declaring a directive which takes 1 to 3 arguments */ 134 # define AP_INIT_TAKE123(directive, func, mconfig, where, help) \ 135 { directive, { .take3=func }, mconfig, where, TAKE123, help } 136 /** method of declaring a directive which takes 3 arguments */ 137 # define AP_INIT_TAKE3(directive, func, mconfig, where, help) \ 138 { directive, { .take3=func }, mconfig, where, TAKE3, help } 139 /** method of declaring a directive which takes a flag (on/off) as a argument*/ 140 # define AP_INIT_FLAG(directive, func, mconfig, where, help) \ 141 { directive, { .flag=func }, mconfig, where, FLAG, help } 142 143 #else /* AP_HAVE_DESIGNATED_INITIALIZER */ 144 145 typedef const char *(*cmd_func) (); 146 147 # define AP_NO_ARGS func 148 # define AP_RAW_ARGS func 149 # define AP_TAKE1 func 150 # define AP_TAKE2 func 151 # define AP_TAKE3 func 152 # define AP_FLAG func 153 154 # define AP_INIT_NO_ARGS(directive, func, mconfig, where, help) \ 155 { directive, func, mconfig, where, RAW_ARGS, help } 156 # define AP_INIT_RAW_ARGS(directive, func, mconfig, where, help) \ 157 { directive, func, mconfig, where, RAW_ARGS, help } 158 # define AP_INIT_TAKE1(directive, func, mconfig, where, help) \ 159 { directive, func, mconfig, where, TAKE1, help } 160 # define AP_INIT_ITERATE(directive, func, mconfig, where, help) \ 161 { directive, func, mconfig, where, ITERATE, help } 162 # define AP_INIT_TAKE2(directive, func, mconfig, where, help) \ 163 { directive, func, mconfig, where, TAKE2, help } 164 # define AP_INIT_TAKE12(directive, func, mconfig, where, help) \ 165 { directive, func, mconfig, where, TAKE12, help } 166 # define AP_INIT_ITERATE2(directive, func, mconfig, where, help) \ 167 { directive, func, mconfig, where, ITERATE2, help } 168 # define AP_INIT_TAKE13(directive, func, mconfig, where, help) \ 169 { directive, func, mconfig, where, TAKE13, help } 170 # define AP_INIT_TAKE23(directive, func, mconfig, where, help) \ 171 { directive, func, mconfig, where, TAKE23, help } 172 # define AP_INIT_TAKE123(directive, func, mconfig, where, help) \ 173 { directive, func, mconfig, where, TAKE123, help } 174 # define AP_INIT_TAKE3(directive, func, mconfig, where, help) \ 175 { directive, func, mconfig, where, TAKE3, help } 176 # define AP_INIT_FLAG(directive, func, mconfig, where, help) \ 177 { directive, func, mconfig, where, FLAG, help } 178 179 #endif /* AP_HAVE_DESIGNATED_INITIALIZER */ 180 181 /** 182 * The command record structure. Each modules can define a table of these 183 * to define the directives it will implement. 184 */ 185 typedef struct command_struct command_rec; 186 struct command_struct { 187 /** Name of this command */ 188 const char *name; 189 /** The function to be called when this directive is parsed */ 190 cmd_func func; 191 /** Extra data, for functions which implement multiple commands... */ 192 void *cmd_data; 193 /** What overrides need to be allowed to enable this command. */ 194 int req_override; 195 /** What the command expects as arguments 196 * @defvar cmd_how args_how*/ 197 enum cmd_how args_how; 198 199 /** usage message, in case of syntax errors */ 200 const char *errmsg; 201 }; 202 203 /** 204 * @defgroup ConfigDirectives Allowed locations for configuration directives. 205 * 206 * The allowed locations for a configuration directive are the union of 207 * those indicated by each set bit in the req_override mask. 208 * 209 * @{ 210 */ 211 #define OR_NONE 0 /** *.conf is not available anywhere in this override */ 212 #define OR_LIMIT 1 /** *.conf inside Directory or Location 213 and .htaccess when AllowOverride Limit */ 214 #define OR_OPTIONS 2 /** *.conf anywhere 215 and .htaccess when AllowOverride Options */ 216 #define OR_FILEINFO 4 /** *.conf anywhere 217 and .htaccess when AllowOverride FileInfo */ 218 #define OR_AUTHCFG 8 /** *.conf inside Directory or Location 219 and .htaccess when AllowOverride AuthConfig */ 220 #define OR_INDEXES 16 /** *.conf anywhere 221 and .htaccess when AllowOverride Indexes */ 222 #define OR_UNSET 32 /** unset a directive (in Allow) */ 223 #define ACCESS_CONF 64 /** *.conf inside Directory or Location */ 224 #define RSRC_CONF 128 /** *.conf outside Directory or Location */ 225 #define EXEC_ON_READ 256 /** force directive to execute a command 226 which would modify the configuration (like including another 227 file, or IFModule */ 228 /** this directive can be placed anywhere */ 229 #define OR_ALL (OR_LIMIT|OR_OPTIONS|OR_FILEINFO|OR_AUTHCFG|OR_INDEXES) 230 231 /** @} */ 232 233 /** 234 * This can be returned by a function if they don t wish to handle 235 * a command. Make it something not likely someone will actually use 236 * as an error code. 237 */ 238 #define DECLINE_CMD "\a\b" 239 240 /** Common structure for reading of config files / passwd files etc. */ 241 typedef struct ap_configfile_t ap_configfile_t; 242 struct ap_configfile_t { 243 int (*getch) (void *param); /** a getc()-like function */ 244 void *(*getstr) (void *buf, size_t bufsiz, void *param); 245 /** a fgets()-like function */ 246 int (*close) (void *param); /** a close handler function */ 247 void *param; /** the argument passed to getch/getstr/close */ 248 const char *name; /** the filename / description */ 249 unsigned line_number; /** current line number, starting at 1 */ 250 }; 251 252 /** 253 * This structure is passed to a command which is being invoked, 254 * to carry a large variety of miscellaneous data which is all of 255 * use to *somebody*... 256 */ 257 struct cmd_parms_struct { 258 /** Argument to command from cmd_table */ 259 void *info; 260 /** Which allow-override bits are set */ 261 int override; 262 /** Which methods are Limit ed */ 263 apr_int64_t limited; 264 /** methods which are limited */ 265 apr_array_header_t *limited_xmethods; 266 /** methods which are xlimited */ 267 ap_method_list_t *xlimited; 268 269 /** Config file structure. */ 270 ap_configfile_t *config_file; 271 /** the directive specifying this command */ 272 ap_directive_t *directive; 273 274 /** Pool to allocate new storage in */ 275 apr_pool_t *pool; 276 /** Pool for scratch memory; persists during configuration, but 277 * wiped before the first request is served... */ 278 apr_pool_t *temp_pool; 279 /** Server_rec being configured for */ 280 server_rec *server; 281 /** If configuring for a directory, pathname of that directory. 282 * NOPE! That s what it meant previous to the existance of Files , 283 * Location and regex matching. Now the only usefulness that can be 284 * derived from this field is whether a command is being called in a 285 * server context (path == NULL) or being called in a dir context 286 * (path != NULL). */ 287 char *path; 288 /** configuration command */ 289 const command_rec *cmd; 290 291 /** per_dir_config vector passed to handle_command */ 292 struct ap_conf_vector_t *context; 293 /** directive with syntax error */ 294 const ap_directive_t *err_directive; 295 }; 296 297 /** 298 * Module structures. Just about everything is dispatched through 299 * these, directly or indirectly (through the command and handler 300 * tables). 301 */ 302 typedef struct module_struct module; 303 struct module_struct { 304 /** API version, *not* module version; check that module is 305 * compatible with this version of the server. 306 */ 307 int version; 308 /** API minor version. Provides API feature milestones. Not checked 309 * during module init */ 310 int minor_version; 311 /** Index to this modules structures in config vectors. */ 312 int module_index; 313 314 /** The name of the module s C file */ 315 const char *name; 316 /** The handle for the DSO. Internal use only */ 317 void *dynamic_load_handle; 318 319 /** A pointer to the next module in the list 320 * @defvar module_struct *next */ 321 struct module_struct *next; 322 323 /** Magic Cookie to identify a module structure; It s mainly 324 * important for the DSO facility (see also mod_so). */ 325 unsigned long magic; 326 327 /** Function to allow MPMs to re-write command line arguments. This 328 * hook is only available to MPMs. 329 * @param The process that the server is running in. 330 */ 331 void (*rewrite_args) (process_rec *process); 332 /** Function to allow all modules to create per directory configuration 333 * structures. 334 * @param p The pool to use for all allocations. 335 * @param dir The directory currently being processed. 336 * @return The per-directory structure created 337 */ 338 void *(*create_dir_config) (apr_pool_t *p, char *dir); 339 /** Function to allow all modules to merge the per directory configuration 340 * structures for two directories. 341 * @param p The pool to use for all allocations. 342 * @param base_conf The directory structure created for the parent directory. 343 * @param new_conf The directory structure currently being processed. 344 * @return The new per-directory structure created 345 */ 346 void *(*merge_dir_config) (apr_pool_t *p, void *base_conf, void *new_conf); 347 /** Function to allow all modules to create per server configuration 348 * structures. 349 * @param p The pool to use for all allocations. 350 * @param s The server currently being processed. 351 * @return The per-server structure created 352 */ 353 void *(*create_server_config) (apr_pool_t *p, server_rec *s); 354 /** Function to allow all modules to merge the per server configuration 355 * structures for two servers. 356 * @param p The pool to use for all allocations. 357 * @param base_conf The directory structure created for the parent directory. 358 * @param new_conf The directory structure currently being processed. 359 * @return The new per-directory structure created 360 */ 361 void *(*merge_server_config) (apr_pool_t *p, void *base_conf, 362 void *new_conf); 363 364 /** A command_rec table that describes all of the directives this module 365 * defines. */ 366 const command_rec *cmds; 367 368 /** A hook to allow modules to hook other points in the request processing. 369 * In this function, modules should call the ap_hook_*() functions to 370 * register an interest in a specific step in processing the current 371 * request. 372 * @param p the pool to use for all allocations 373 */ 374 void (*register_hooks) (apr_pool_t *p); 375 }; 376 377 /** 378 * @defgroup ModuleInit Module structure initializers 379 * 380 * Initializer for the first few module slots, which are only 381 * really set up once we start running. Note that the first two slots 382 * provide a version check; this should allow us to deal with changes to 383 * the API. The major number should reflect changes to the API handler table 384 * itself or removal of functionality. The minor number should reflect 385 * additions of functionality to the existing API. (the server can detect 386 * an old-format module, and either handle it back-compatibly, or at least 387 * signal an error). See src/include/ap_mmn.h for MMN version history. 388 * @{ 389 */ 390 391 /** The one used in Apache 1.3, which will deliberately cause an error */ 392 #define STANDARD_MODULE_STUFF this_module_needs_to_be_ported_to_apache_2_0 393 394 /** Use this in all standard modules */ 395 #define STANDARD20_MODULE_STUFF MODULE_MAGIC_NUMBER_MAJOR, \ 396 MODULE_MAGIC_NUMBER_MINOR, \ 397 -1, \ 398 __FILE__, \ 399 NULL, \ 400 NULL, \ 401 MODULE_MAGIC_COOKIE, \ 402 NULL /* rewrite args spot */ 403 404 /** Use this only in MPMs */ 405 #define MPM20_MODULE_STUFF MODULE_MAGIC_NUMBER_MAJOR, \ 406 MODULE_MAGIC_NUMBER_MINOR, \ 407 -1, \ 408 __FILE__, \ 409 NULL, \ 410 NULL, \ 411 MODULE_MAGIC_COOKIE 412 413 /** @} */ 414 415 /* CONFIGURATION VECTOR FUNCTIONS */ 416 417 /** configuration vector structure */ 418 typedef struct ap_conf_vector_t ap_conf_vector_t; 419 420 /** 421 * Generic accessors for other modules to get at their own module-specific 422 * data 423 * @param conf_vector The vector in which the modules configuration is stored. 424 * usually r- per_dir_config or s- module_config 425 * @param m The module to get the data for. 426 * @return The module-specific data 427 */ 428 AP_DECLARE(void *) ap_get_module_config(const ap_conf_vector_t *cv, 429 const module *m); 430 431 /** 432 * Generic accessors for other modules to set at their own module-specific 433 * data 434 * @param conf_vector The vector in which the modules configuration is stored. 435 * usually r- per_dir_config or s- module_config 436 * @param m The module to set the data for. 437 * @param val The module-specific data to set 438 */ 439 AP_DECLARE(void) ap_set_module_config(ap_conf_vector_t *cv, const module *m, 440 void *val); 441 442 #if !defined(AP_DEBUG) 443 444 #define ap_get_module_config(v,m) \ 445 (((void **)(v))[(m)- module_index]) 446 #define ap_set_module_config(v,m,val) \ 447 ((((void **)(v))[(m)- module_index]) = (val)) 448 449 #endif /* AP_DEBUG */ 450 451 452 /** 453 * Generic command handling function for strings 454 * @param cmd The command parameters for this directive 455 * @param struct_ptr pointer into a given type 456 * @param arg The argument to the directive 457 * @return An error string or NULL on success 458 */ 459 AP_DECLARE_NONSTD(const char *) ap_set_string_slot(cmd_parms *cmd, 460 void *struct_ptr, 461 const char *arg); 462 463 /** 464 * Generic command handling function for integers 465 * @param cmd The command parameters for this directive 466 * @param struct_ptr pointer into a given type 467 * @param arg The argument to the directive 468 * @return An error string or NULL on success 469 */ 470 AP_DECLARE_NONSTD(const char *) ap_set_int_slot(cmd_parms *cmd, 471 void *struct_ptr, 472 const char *arg); 473 474 /** 475 * Return true if the specified method is limited by being listed in 476 * a Limit container, or by *not* being listed in a LimiteExcept 477 * container. 478 * 479 * @param method Pointer to a string specifying the method to check. 480 * @param cmd Pointer to the cmd_parms structure passed to the 481 * directive handler. 482 * @return 0 if the method is not limited in the current scope 483 */ 484 AP_DECLARE(int) ap_method_is_limited(cmd_parms *cmd, const char *method); 485 486 /** 487 * Generic command handling function for strings, always sets the value 488 * to a lowercase string 489 * @param cmd The command parameters for this directive 490 * @param struct_ptr pointer into a given type 491 * @param arg The argument to the directive 492 * @return An error string or NULL on success 493 */ 494 AP_DECLARE_NONSTD(const char *) ap_set_string_slot_lower(cmd_parms *cmd, 495 void *struct_ptr, 496 const char *arg); 497 /** 498 * Generic command handling function for flags 499 * @param cmd The command parameters for this directive 500 * @param struct_ptr pointer into a given type 501 * @param arg The argument to the directive (either 1 or 0) 502 * @return An error string or NULL on success 503 */ 504 AP_DECLARE_NONSTD(const char *) ap_set_flag_slot(cmd_parms *cmd, 505 void *struct_ptr, 506 int arg); 507 /** 508 * Generic command handling function for files 509 * @param cmd The command parameters for this directive 510 * @param struct_ptr pointer into a given type 511 * @param arg The argument to the directive 512 * @return An error string or NULL on success 513 */ 514 AP_DECLARE_NONSTD(const char *) ap_set_file_slot(cmd_parms *cmd, 515 void *struct_ptr, 516 const char *arg); 517 /** 518 * Generic command handling function to respond with cmd- help as an error 519 * @param cmd The command parameters for this directive 520 * @param struct_ptr pointer into a given type 521 * @param arg The argument to the directive 522 * @return The cmd- help value as the error string 523 * @tip This allows simple declarations such as; 524 * pre 525 * AP_INIT_RAW_ARGS("Foo", ap_set_deprecated, NULL, OR_ALL, 526 * "The Foo directive is no longer supported, use Bar"), 527 * /pre 528 */ 529 AP_DECLARE_NONSTD(const char *) ap_set_deprecated(cmd_parms *cmd, 530 void *struct_ptr, 531 const char *arg); 532 /** 533 * For modules which need to read config files, open logs, etc. this returns 534 * the canonical form of fname made absolute to ap_server_root. 535 * @param p pool to allocate data from 536 * @param fname The file name 537 */ 538 AP_DECLARE(char *) ap_server_root_relative(apr_pool_t *p, const char *fname); 539 540 /* Finally, the hook for dynamically loading modules in... */ 541 542 /** 543 * Add a module to the server 544 * @param m The module structure of the module to add 545 * @param p The pool of the same lifetime as the module 546 */ 547 AP_DECLARE(void) ap_add_module(module *m, apr_pool_t *p); 548 549 /** 550 * Remove a module from the server. There are some caveats 551 * when the module is removed, its slot is lost so all the current 552 * per-dir and per-server configurations are invalid. So we should 553 * only ever call this function when you are invalidating almost 554 * all our current data. I.e. when doing a restart. 555 * @param m the module structure of the module to remove 556 */ 557 AP_DECLARE(void) ap_remove_module(module *m); 558 /** 559 * Add a module to the chained modules list and the list of loaded modules 560 * @param m The module structure of the module to add 561 * @param p The pool with the same lifetime as the module 562 */ 563 AP_DECLARE(void) ap_add_loaded_module(module *mod, apr_pool_t *p); 564 /** 565 * Remove a module fromthe chained modules list and the list of loaded modules 566 * @param m the module structure of the module to remove 567 */ 568 AP_DECLARE(void) ap_remove_loaded_module(module *mod); 569 /** 570 * Add a module to the list of loaded module based on the name of the 571 * module 572 * @param name The name of the module 573 * @param p The pool valid for the lifetime of the module 574 * @return 1 on success, 0 on failure 575 */ 576 AP_DECLARE(int) ap_add_named_module(const char *name, apr_pool_t *p); 577 /** 578 * Find the name of the specified module 579 * @param m The module to get the name for 580 * @return the name of the module 581 */ 582 AP_DECLARE(const char *) ap_find_module_name(module *m); 583 /** 584 * Find a module based on the name of the module 585 * @param name the name of the module 586 * @return the module structure if found, NULL otherwise 587 */ 588 AP_DECLARE(module *) ap_find_linked_module(const char *name); 589 590 /** 591 * Open a ap_configfile_t as apr_file_t 592 * @param ret_cfg open ap_configfile_t struct pointer 593 * @param p The pool to allocate the structure from 594 * @param name the name of the file to open 595 */ 596 AP_DECLARE(apr_status_t) ap_pcfg_openfile(ap_configfile_t **ret_cfg, 597 apr_pool_t *p, const char *name); 598 599 /** 600 * Allocate a ap_configfile_t handle with user defined functions and params 601 * @param p The pool to allocate from 602 * @param descr The name of the file 603 * @param param The argument passed to getch/getstr/close 604 * @param getc_func The getch function 605 * @param gets_func The getstr function 606 * @param close_func The close function 607 */ 608 AP_DECLARE(ap_configfile_t *) ap_pcfg_open_custom(apr_pool_t *p, 609 const char *descr, 610 void *param, 611 int(*getc_func)(void*), 612 void *(*gets_func) (void *buf, size_t bufsiz, void *param), 613 int(*close_func)(void *param)); 614 615 /** 616 * Read one line from open ap_configfile_t, strip LF, increase line number 617 * @param buf place to store the line read 618 * @param bufsize size of the buffer 619 * @param cfp File to read from 620 * @return 1 on success, 0 on failure 621 */ 622 AP_DECLARE(int) ap_cfg_getline(char *buf, size_t bufsize, ap_configfile_t *cfp); 623 624 /** 625 * Read one char from open configfile_t, increase line number upon LF 626 * @param cfp The file to read from 627 * @return the character read 628 */ 629 AP_DECLARE(int) ap_cfg_getc(ap_configfile_t *cfp); 630 631 /** 632 * Detach from open ap_configfile_t, calling the close handler 633 * @param cfp The file to close 634 * @return 1 on sucess, 0 on failure 635 */ 636 AP_DECLARE(int) ap_cfg_closefile(ap_configfile_t *cfp); 637 638 /** 639 * Read all data between the current foo and the matching /foo . All 640 * of this data is forgotten immediately. 641 * @param cmd The cmd_parms to pass to the directives inside the container 642 * @param directive The directive name to read until 643 * @return Error string on failure, NULL on success 644 */ 645 AP_DECLARE(const char *) ap_soak_end_container(cmd_parms *cmd, char *directive); 646 647 /** 648 * Read all data between the current foo and the matching /foo and build 649 * a config tree from it 650 * @param p pool to allocate from 651 * @param temp_pool Temporary pool to allocate from 652 * @param parms The cmd_parms to pass to all directives read 653 * @param current The current node in the tree 654 * @param curr_parent The current parent node 655 * @param orig_directive The directive to read until hit. 656 * @return Error string on failure, NULL on success 657 */ 658 AP_DECLARE(const char *) ap_build_cont_config(apr_pool_t *p, 659 apr_pool_t *temp_pool, 660 cmd_parms *parms, 661 ap_directive_t **current, 662 ap_directive_t **curr_parent, 663 char *orig_directive); 664 665 /** 666 * Build a config tree from a config file 667 * @param parms The cmd_parms to pass to all of the directives in the file 668 * @param conf_pool The pconf pool 669 * @param temp_pool The temporary pool 670 * @param conftree Place to store the root node of the config tree 671 * @return Error string on erro, NULL otherwise 672 */ 673 AP_DECLARE(const char *) ap_build_config(cmd_parms *parms, 674 apr_pool_t *conf_pool, 675 apr_pool_t *temp_pool, 676 ap_directive_t **conftree); 677 678 /** 679 * Walk a config tree and setup the server s internal structures 680 * @param conftree The config tree to walk 681 * @param parms The cmd_parms to pass to all functions 682 * @param section_vector The per-section config vector. 683 * @return Error string on error, NULL otherwise 684 */ 685 AP_DECLARE(const char *) ap_walk_config(ap_directive_t *conftree, 686 cmd_parms *parms, 687 ap_conf_vector_t *section_vector); 688 689 /** 690 * @defgroup ap_check_cmd_context ap_check_cmd_context 691 * @{ 692 */ 693 /** 694 * Check the context a command is used in. 695 * @param cmd The command to check 696 * @param forbidden Where the command is forbidden. 697 * @return Error string on error, NULL on success 698 */ 699 AP_DECLARE(const char *) ap_check_cmd_context(cmd_parms *cmd, 700 unsigned forbidden); 701 702 #define NOT_IN_VIRTUALHOST 0x01 /** Forbidden in Virtualhost */ 703 #define NOT_IN_LIMIT 0x02 /** Forbidden in Limit */ 704 #define NOT_IN_DIRECTORY 0x04 /** Forbidden in Directory */ 705 #define NOT_IN_LOCATION 0x08 /** Forbidden in Location */ 706 #define NOT_IN_FILES 0x10 /** Forbidden in Files */ 707 /** Forbidden in Directory / Location / Files */ 708 #define NOT_IN_DIR_LOC_FILE (NOT_IN_DIRECTORY|NOT_IN_LOCATION|NOT_IN_FILES) 709 /** Forbidden in VirtualHost / Limit / Directory / Location / Files */ 710 #define GLOBAL_ONLY (NOT_IN_VIRTUALHOST|NOT_IN_LIMIT|NOT_IN_DIR_LOC_FILE) 711 712 /** @} */ 713 714 #ifdef CORE_PRIVATE 715 716 /** 717 * The topmost module in the list 718 * @defvar module *ap_top_module 719 */ 720 AP_DECLARE_DATA extern module *ap_top_module; 721 722 /** 723 * Array of all statically linked modules 724 * @defvar module *ap_prelinked_modules[] 725 */ 726 AP_DECLARE_DATA extern module *ap_prelinked_modules[]; 727 /** 728 * Array of all preloaded modules 729 * @defvar module *ap_preloaded_modules[] 730 */ 731 AP_DECLARE_DATA extern module *ap_preloaded_modules[]; 732 /** 733 * Array of all loaded modules 734 * @defvar module **ap_loaded_modules 735 */ 736 AP_DECLARE_DATA extern module **ap_loaded_modules; 737 738 /* For mod_so.c... */ 739 /** Run a single module s two create_config hooks 740 * @param p the pool to allocate from 741 * @param s The server to configure for. 742 * @param m The module to configure 743 */ 744 AP_DECLARE(void) ap_single_module_configure(apr_pool_t *p, server_rec *s, 745 module *m); 746 747 /* For http_main.c... */ 748 /** 749 * Add all of the prelinked modules into the loaded module list 750 * @param process The process that is currently running the server 751 */ 752 AP_DECLARE(void) ap_setup_prelinked_modules(process_rec *process); 753 754 /** 755 * Show the preloaded configuration directives, the help string explaining 756 * the directive arguments, in what module they are handled, and in 757 * what parts of the configuration they are allowed. Used for httpd -h. 758 */ 759 AP_DECLARE(void) ap_show_directives(void); 760 761 /** 762 * Show the preloaded module names. Used for httpd -l. 763 */ 764 AP_DECLARE(void) ap_show_modules(void); 765 766 /** 767 * Show the MPM name. Used in reporting modules such as mod_info to 768 * provide extra information to the user 769 */ 770 AP_DECLARE(const char *) ap_show_mpm(void); 771 772 /** 773 * Read all config files and setup the server 774 * @param process The process running the server 775 * @param temp_pool A pool to allocate temporary data from. 776 * @param config_name The name of the config file 777 * @param conftree Place to store the root of the config tree 778 * @return The setup server_rec list. 779 */ 780 AP_DECLARE(server_rec *) ap_read_config(process_rec *process, 781 apr_pool_t *temp_pool, 782 const char *config_name, 783 ap_directive_t **conftree); 784 785 /** 786 * Run all rewrite args hooks for loaded modules 787 * @param process The process currently running the server 788 */ 789 AP_DECLARE(void) ap_run_rewrite_args(process_rec *process); 790 791 /** 792 * Run the register hooks function for a specified module 793 * @param m The module to run the register hooks function fo 794 * @param p The pool valid for the lifetime of the module 795 */ 796 AP_DECLARE(void) ap_register_hooks(module *m, apr_pool_t *p); 797 798 /** 799 * Setup all virtual hosts 800 * @param p The pool to allocate from 801 * @param main_server The head of the server_rec list 802 */ 803 AP_DECLARE(void) ap_fixup_virtual_hosts(apr_pool_t *p, 804 server_rec *main_server); 805 806 /* For http_request.c... */ 807 808 /** 809 * Setup the config vector for a request_rec 810 * @param p The pool to allocate the config vector from 811 * @return The config vector 812 */ 813 AP_CORE_DECLARE(ap_conf_vector_t*) ap_create_request_config(apr_pool_t *p); 814 815 /** 816 * Setup the config vector for per dir module configs 817 * @param p The pool to allocate the config vector from 818 * @return The config vector 819 */ 820 AP_CORE_DECLARE(ap_conf_vector_t *) ap_create_per_dir_config(apr_pool_t *p); 821 822 /** 823 * Run all of the modules merge per dir config functions 824 * @param p The pool to pass to the merge functions 825 * @param base The base directory config structure 826 * @param new_conf The new directory config structure 827 */ 828 AP_CORE_DECLARE(ap_conf_vector_t*) ap_merge_per_dir_configs(apr_pool_t *p, 829 ap_conf_vector_t *base, 830 ap_conf_vector_t *new_conf); 831 832 /* For http_connection.c... */ 833 /** 834 * Setup the config vector for a connection_rec 835 * @param p The pool to allocate the config vector from 836 * @return The config vector 837 */ 838 AP_CORE_DECLARE(ap_conf_vector_t*) ap_create_conn_config(apr_pool_t *p); 839 840 /* For http_core.c... ( Directory command and virtual hosts) */ 841 842 /** 843 * parse an htaccess file 844 * @param resulting htaccess_result 845 * @param r The request currently being served 846 * @param override Which overrides are active 847 * @param path The path to the htaccess file 848 * @param access_name The list of possible names for .htaccess files 849 * int The status of the current request 850 */ 851 AP_CORE_DECLARE(int) ap_parse_htaccess(ap_conf_vector_t **result, 852 request_rec *r, int override, 853 const char *path, 854 const char *access_name); 855 856 /** 857 * Setup a virtual host 858 * @param p The pool to allocate all memory from 859 * @param hostname The hostname of the virtual hsot 860 * @param main_server The main server for this Apache configuration 861 * @param ps Place to store the new server_rec 862 * return Error string on error, NULL on success 863 */ 864 AP_CORE_DECLARE(const char *) ap_init_virtual_host(apr_pool_t *p, 865 const char *hostname, 866 server_rec *main_server, 867 server_rec **); 868 869 /** 870 * Process the config file for Apache 871 * @param s The server rec to use for the command parms 872 * @param fname The name of the config file 873 * @param conftree The root node of the created config tree 874 * @param p Pool for general allocation 875 * @param ptem Pool for temporary allocation 876 */ 877 AP_DECLARE(void) ap_process_resource_config(server_rec *s, const char *fname, 878 ap_directive_t **conftree, 879 apr_pool_t *p, apr_pool_t *ptemp); 880 881 /** 882 * Process all directives in the config tree 883 * @param s The server rec to use in the command parms 884 * @param conftree The config tree to process 885 * @param p The pool for general allocation 886 * @param ptemp The pool for temporary allocations 887 */ 888 AP_DECLARE(void) ap_process_config_tree(server_rec *s, ap_directive_t *conftree, 889 apr_pool_t *p, apr_pool_t *ptemp); 890 891 /* Module-method dispatchers, also for http_request.c */ 892 /** 893 * Run the handler phase of each module until a module accepts the 894 * responsibility of serving the request 895 * @param r The current request 896 * @return The status of the current request 897 */ 898 AP_CORE_DECLARE(int) ap_invoke_handler(request_rec *r); 899 900 /* for mod_perl */ 901 902 /** 903 * Find a given directive in a command_rec table 904 * @param name The directive to search for 905 * @param cmds The table to search 906 * @return The directive definition of the specified directive 907 */ 908 AP_CORE_DECLARE(const command_rec *) ap_find_command(const char *name, 909 const command_rec *cmds); 910 911 /** 912 * Find a given directive in a list module 913 * @param cmd_name The directive to search for 914 * @param mod The module list to search 915 * @return The directive definition of the specified directive 916 */ 917 AP_CORE_DECLARE(const command_rec *) ap_find_command_in_modules(const char *cmd_name, 918 module **mod); 919 920 /** 921 * Ask a module to create per-server and per-section (dir/loc/file) configs 922 * (if it hasn t happened already). The results are stored in the server s 923 * config, and the specified per-section config vector. 924 * @param server The server to operate upon. 925 * @param section_vector The per-section config vector. 926 * @param section Which section to create a config for. 927 * @param mod The module which is defining the config data. 928 * @param pconf A pool for all configuration allocations. 929 * @return The (new) per-section config data. 930 */ 931 AP_CORE_DECLARE(void *) ap_set_config_vectors(server_rec *server, 932 ap_conf_vector_t *section_vector, 933 const char *section, 934 module *mod, apr_pool_t *pconf); 935 936 #endif 937 938 /* Hooks */ 939 940 /** 941 * Run the header parser functions for each module 942 * @param r The current request 943 * @return OK or DECLINED 944 */ 945 AP_DECLARE_HOOK(int,header_parser,(request_rec *r)) 946 947 /** 948 * Run the pre_config function for each module 949 * @param pconf The config pool 950 * @param plog The logging streams pool 951 * @param ptemp The temporary pool 952 * @return OK or DECLINED on success anything else is a error 953 */ 954 AP_DECLARE_HOOK(int,pre_config,(apr_pool_t *pconf,apr_pool_t *plog, 955 apr_pool_t *ptemp)) 956 957 958 /** 959 * Run the post_config function for each module 960 * @param pconf The config pool 961 * @param plog The logging streams pool 962 * @param ptemp The temporary pool 963 * @param s The list of server_recs 964 * @return OK or DECLINED on success anything else is a error 965 */ 966 AP_DECLARE_HOOK(int,post_config,(apr_pool_t *pconf,apr_pool_t *plog, 967 apr_pool_t *ptemp,server_rec *s)) 968 969 /** 970 * Run the open_logs functions for each module 971 * @param pconf The config pool 972 * @param plog The logging streams pool 973 * @param ptemp The temporary pool 974 * @param s The list of server_recs 975 * @return OK or DECLINED on success anything else is a error 976 */ 977 AP_DECLARE_HOOK(int,open_logs,(apr_pool_t *pconf,apr_pool_t *plog, 978 apr_pool_t *ptemp,server_rec *s)) 979 980 /** 981 * Run the child_init functions for each module 982 * @param pchild The child pool 983 * @param s The list of server_recs in this server 984 */ 985 AP_DECLARE_HOOK(void,child_init,(apr_pool_t *pchild, server_rec *s)) 986 987 /** 988 * Run the handler functions for each module 989 * @param r The request_rec 990 * @remark non-wildcard handlers should HOOK_MIDDLE, wildcard HOOK_LAST 991 */ 992 AP_DECLARE_HOOK(int,handler,(request_rec *r)) 993 994 /** 995 * Run the quick handler functions for each module. The quick_handler 996 * is run before any other requests hooks are called (location_walk, 997 * directory_walk, access checking, et. al.). This hook was added 998 * to provide a quick way to serve content from a URI keyed cache. 999 * 1000 * @param r The request_rec 1001 * @param lookup_uri Controls whether the caller actually wants content or not. 1002 * lookup is set when the quick_handler is called out of 1003 * ap_sub_req_lookup_uri() 1004 */ 1005 AP_DECLARE_HOOK(int,quick_handler,(request_rec *r, int lookup_uri)) 1006 1007 /** 1008 * Retrieve the optional functions for each module. 1009 * This is run immediately before the server starts. Optional functions should 1010 * be registered during the hook registration phase. 1011 */ 1012 AP_DECLARE_HOOK(void,optional_fn_retrieve,(void)) 1013 1014 #ifdef __cplusplus 1015 } 1016 #endif 1017 1018 #endif /* !APACHE_HTTP_CONFIG_H */
https://w.atwiki.jp/partial/pages/13.html
mouse Logicool® Performance Optical Mouse G400 http //www.logicool.co.jp/ja-jp/gaming/mice-keyboard-combos/devices/8259 ヲチモノ- 【マウス】ロジクール 『G400』 購入・レビュー http //watchmonoblog.blog71.fc2.com/blog-entry-1514.html Wireless Trackball M570 http //www.logicool.co.jp/ja-jp/mice-pointers/trackballs/devices/7365 ヲチモノ- Razerの新ハイブリッドマウス『Razer Mamba 2012』を借りてみた http //watchmonoblog.blog71.fc2.com/blog-entry-1518.html 【PC Watch】 SteelSeries、8ボタン付きのゲーミングマウス「Sensei」 http //pc.watch.impress.co.jp/docs/news/20110812_467407.html?ref=rss ヲチモノ- レーザー+光学式のデュアルセンサーマウス『Epic Gear Meduza』 http //watchmonoblog.blog71.fc2.com/blog-entry-1535.html case Thermaltake - Japan - Overseer RX-I - VN700M1W2N http //jp.thermaltake.com/products-model.aspx?id=C_00001803 アキバ総研-半密閉タイプの静音PCケース! COOLERMASTER「Silencio 550」発売-[秋葉原総合情報サイト] http //akiba.kakaku.com/pc/1107/16/223000.php エルミタージュ秋葉原 [リリース] Antec、二層構造遮音パネルで静音化が図られた待望の新作「SOLO II」 http //www.gdm.or.jp/pressrelease/201108/29_03.html エルミタージュ秋葉原 [リリース] CORSAIR、最大10基のファンが搭載できるCarbideシリーズミドルタワー「CC9011011-WW」発売 http //www.gdm.or.jp/pressrelease/201108/25_02.html Speaker ヲチモノ- 【スピーカー】JBL 『JBL CAS-33』 レビューチェック http //watchmonoblog.blog71.fc2.com/blog-entry-1039.html N2-20U03 製品情報 コンピュータ関連製品の代理店事業 l 株式会社リンクスインターナショナル http //www.links.co.jp/items/krator-speaker/n220u03.html ヲチモノ- 【スピーカー】KRATOR 『Neso 02 N2-20U03』 レビューチェック http //watchmonoblog.blog71.fc2.com/blog-entry-1513.html headphone Razer から世界初の10ドライバ 7.1chサラウンドヘッドセット Tiamat 7.1 http //japanese.engadget.com/2011/08/22/razer-10-7-1ch-tiamat-7-1/ 4Gamer.net ― Razer,リアル7.1chヘッドセット「Tiamat 7.1」を発表。2.2chモデル「Tiamat 2.2」とともに2011年第4四半期に発売(Razer) http //www.4gamer.net/games/023/G002318/20110823008/ Razer Orca | Razer 日本の公式サイト http //jp.razerzone.com/product.php?act=page pgid=74 pid=1 ヲチモノ- 【ヘッドホン】ソニー 『MDR-DS7500』 レビューチェック http //watchmonoblog.blog71.fc2.com/blog-entry-1757.html gadget ヲチモノ- 保存機能を搭載した『Boogie Board』が秋に登場か!? http //watchmonoblog.blog71.fc2.com/blog-entry-1334.html ヲチモノ- 【USBモニター】レノボ 『ThinkVision LT1421』 レビューチェック http //watchmonoblog.blog71.fc2.com/blog-entry-1726.html ヲチモノ- 【コントローラー】Razer 『Razer Hydra』 画像や動画など http //watchmonoblog.blog71.fc2.com/blog-entry-1496.html エルミタージュ秋葉原 [リリース] Thermaltake、バックライト付の2.5インチ大型液晶のPSUテスター「Dr. Power II」発売 http //www.gdm.or.jp/pressrelease/201109/07_06.html Thermaltake Global Product 電源装置 その他 Dr.PowerⅡ AC0015 http //www.thermaltake.co.jp/product_info.aspx?PARENT_CID=C_00001477 id=C_00001478 name=Dr.Power+%E2%85%A1 ov=n ovid= parent_cp=
https://w.atwiki.jp/stgbuilder/pages/367.html
<upload video list> ニコニコ動画にアップロードされているSB製ゲームの動画リストです。 (STIR) SB広報用動画 http //www.nicovideo.jp/watch/nm11827264 (NOILA-TEM) NOILA-TEM TYPE1でクリア(コンティニューしまくり):http //www.nicovideo.jp/watch/sm1208300 (D-Diver) (A) (ASCII FORCE) ASCII FORCE ver068 1面プレイ 画質修正版:http //www.nicovideo.jp/watch/sm3975774 ASCII FORCE ver091 A~B面プレイ:http //www.nicovideo.jp/watch/sm5005088 ASCII FORCE ver097 A・C・E+α面プレイ:http //www.nicovideo.jp/watch/sm5658353 ASCII FORCE ver0.99d 新機体でA・C・F・LASTまで:http //www.nicovideo.jp/watch/sm5865571 (CARAVAN STAR) CARAVAN STAR Ver0.99A 機体Aで普通にプレイ:http //www.nicovideo.jp/watch/sm2483391 Caravan Star Ver1.09b テストプレイ版:http //www.nicovideo.jp/watch/sm5823781 (BURIKIN) BURIKING ver0.03 勢いで作ったテスト版:http //www.nicovideo.jp/watch/sm5696639 (SSSS) (the one case) the one case v016 1~3面 (自作STG製作者プレイ動画):http //www.nicovideo.jp/watch/sm4454655 the one case v016 4面~ED (自作STG製作者プレイ動画):http //www.nicovideo.jp/watch/sm4454939 the one case v100c Extra (自作STG製作者プレイ動画):http //www.nicovideo.jp/watch/sm6552811 「the One Case」チャレンジモード・普通のプレイ:http //www.nicovideo.jp/watch/sm13924138 「the One Case」Extraモード・普通のプレイ:http //www.nicovideo.jp/watch/sm14054439 【安全プレイ】the One Case extra mode:http //www.nicovideo.jp/watch/sm14039035 (幸せの魔法石) しあわせの魔法石 v005α 0~2面 (自作STG製作者プレイ動画):http //www.nicovideo.jp/watch/sm5760449 しあわせの魔法石V006(初心者向けモード)プレイ動画:http //www.nicovideo.jp/watch/sm7283189 しあわせの魔法石V006(初心者向けモード)プレイ動画その2:http //www.nicovideo.jp/watch/sm7292362 しあわせの魔法石v0.07を熟練者モードでプレイ 1/2:http //www.nicovideo.jp/watch/sm7856548 しあわせの魔法石v0.07を熟練者モードでプレイ 2/2:http //www.nicovideo.jp/watch/sm7856769 (tekitou 1) 自作シューティング tekitou1:http //www.nicovideo.jp/watch/sm3473922 自作シューティング tekitou1 ver1.02 HELL:http //www.nicovideo.jp/watch/sm4124021 (tekitou 2) 自作シューティング Mana Blast Bossrush The Hell:http //www.nicovideo.jp/watch/sm5763210 自作シューティング Mana Blast イベント配布版ムービー:http //www.nicovideo.jp/watch/sm5731882 自作シューティング Mana Blast ver0.2 2面まで:http //www.nicovideo.jp/watch/sm4540139 (tekitou 3) tekitou3+:http //www.nicovideo.jp/watch/sm5820056 ALEXANDRITE part4:http //www.nicovideo.jp/watch/sm5841727 (トリフィドの日) 自作STG:http //www.nicovideo.jp/watch/sm2877485 自作STG 3(トリフィドの日):http //www.nicovideo.jp/watch/sm2967828 自作STG 4(トリフィドの日):http //www.nicovideo.jp/watch/sm3074430 自作STG 5(背景擬似3D化):http //www.nicovideo.jp/watch/sm3950517 (ストライクウィッチーズSTG) ストライクウィッチーズSTG!:http //www.nicovideo.jp/watch/sm4657331 ストライクウィッチーズSTG!プレリュードダッシュプラス:http //www.nicovideo.jp/watch/sm5096030 魔女達の長い午後(スト魔女STG)http //www.nicovideo.jp/watch/sm6747235 【体験版】ストライクウィッチーズSTG!1面C:http //www.nicovideo.jp/watch/sm6229810 【体験版】ストライクウィッチーズSTG!1面E:http //www.nicovideo.jp/watch/sm6466776 【体験版】ストライクウィッチーズSTG!2面C:http //www.nicovideo.jp/watch/sm6229886 【体験版】ストライクウィッチーズSTG!4面C:http //www.nicovideo.jp/watch/sm6229948 【体験版】ストライクウィッチーズSTG!2面E:http //www.nicovideo.jp/watch/sm6466822 【体験版】ストライクウィッチーズSTG!4面E:http //www.nicovideo.jp/watch/sm6466880 スト魔女STG(シャーリィ・ルッキーニ)http //www.nicovideo.jp/watch/sm7587289 (アルギネイロス) (Banisher) 【STG】 Banisher - バニッシャー 【プレイ動画】:http //www.nicovideo.jp/watch/sm7672806 (天災) 天災HeartBEAT!!の体験版をプレイしてみた 1面:http //www.nicovideo.jp/watch/sm4819697 天災HeartBEAT!!の体験版をプレイしてみた 2面:http //www.nicovideo.jp/watch/sm4819974 (THE 触シュー) 自作STGプレイ動画:http //www.nicovideo.jp/watch/sm6583807 THE Shokushoo #1:[http //www.youtube.com/watch?v=iwkTTP1dYgE feature=related] THE Shokushoo #2:[http //www.youtube.com/watch?v=d0dmNSNO4oc eurl=http //tryangle07.blog32.fc2.com/blog-entry-154.html feature=player_embedded] 触シュー体験版v093 1~2面 プレイ動画:http //www.nicovideo.jp/watch/sm7743183 (SHATTERED CHRONICLE) SHATTERED CHRONICLE Test ver1.21普通にプレイ動画:http //www.nicovideo.jp/watch/sm7364621 SHATTERED CHRONICLE(シャッタードクロニクル)デモPLAY ステージ1:http //www.nicovideo.jp/watch/sm7212274 SHATTERED CHRONICLE(シャッタードクロニクル)デモPLAY ステージ2:http //www.nicovideo.jp/watch/sm7215629 SHATTERED CHRONICLE(シャッタードクロニクル)デモPLAY ステージ3:http //www.nicovideo.jp/watch/sm7215629 SHATTERED CHRONICLE体験版プレイ動画:http //www.nicovideo.jp/watch/sm7236197 SHATTERED CHRONICLE体験版1-3面プレイ:http //www.nicovideo.jp/watch/sm7223617 SHATTERED CHRONICLE<Type-EDGE>体験版プレイ動画:http //www.nicovideo.jp/watch/sm7249092 SHATTERED CHRONICLE体験版プレイ動画<Type-FIRE>:http //www.nicovideo.jp/watch/sm7266336 画質&音質テスト用Rev.3<SHATTERED CHRONICLE(シャッタードクロニクル)>:http //www.nicovideo.jp/watch/sm7216736 (東方褌探記) [新作東方STG]東方褌探記:http //www.nicovideo.jp/watch/sm1724462 (Christmasdius) ファミコン風自作STG『Christmasdius』:http //www.nicovideo.jp/watch/sm5648066 (STAR SHIP) ShootingGameBuilder習作『STAR SHIP』:http //www.nicovideo.jp/watch/sm6496645 (ZEX) (再三に及ぶテスト)-AnotheRZEX-1stボス戦:http //www.nicovideo.jp/watch/sm7412257 (再テスト)-AnotheRZEX-:http //www.nicovideo.jp/watch/sm7375022 自作STGアップテスト:http //www.nicovideo.jp/watch/sm7271856 (Moon Soldier X) 从SX3-レーベル第一弾・奥スクロール弾幕STG『Moon Soldier X』:http //www.nicovideo.jp/watch/sm6604770 (Three Invaders) Three Invaders 全ボス対決:http //www.nicovideo.jp/watch/sm7097969 (Angel Weapon) Angel Weapon ヘタレプレイ 難易度HARD 自機ブレイブヒーロー パート1:http //www.nicovideo.jp/watch/sm7808807 Angel Weapon ヘタレプレイ 難易度HARD 自機ブレイブヒーロー パート2:http //www.nicovideo.jp/watch/sm7809117 Angel Weapon 通しプレイ 難易度ハード 自機ギャラクシーエッジ パート1:http //www.nicovideo.jp/watch/sm7787517 Angel Weapon 通しプレイ 難易度ハード 自機ギャラクシーエッジ パート2:http //www.nicovideo.jp/watch/sm7787701 Angel Weapon 製作者VS魔王:http //www.nicovideo.jp/watch/sm7097969 (雷生音流(仮)) STG製作中 ~ 雷生音流(仮) ~:http //www.nicovideo.jp/watch/sm7780782 (エターナル・ネギ・フィーバー) エターナル・ネギ・フィーバー Ver.3.0b (難易度:SHOOTER):http //www.nicovideo.jp/watch/sm13703083 (デザエモン製 良ゲーム) デザエモンでガンダムシューティングを作ってみた:http //www.nicovideo.jp/watch/sm1843704 デザエモンでスーパーマリオシューティングを作ってみた:http //www.nicovideo.jp/watch/sm1504336 デザエモンでスーパーマリオランドを作ってみた:http //www.nicovideo.jp/watch/sm10449972 デザエモンでドラえもんを作ってみたhttp //www.nicovideo.jp/watch/sm10448345 デザエモンでたこルカのシューティングゲームを作ってみたhttp //www.nicovideo.jp/watch/sm6231659
https://w.atwiki.jp/catnap222/pages/386.html
Soup play through by kokoakki レアなハックのプレイ動画を見せてくれるkokoakki氏です。今回はSuper Metroid Soupです。 part1 http //www.nicovideo.jp/watch/sm4252262 part2 http //www.nicovideo.jp/watch/sm4349246 part3 http //www.nicovideo.jp/watch/sm4356443 part4 http //www.nicovideo.jp/watch/sm4364011 part5 http //www.nicovideo.jp/watch/sm4378393 part6 http //www.nicovideo.jp/watch/sm4404964 part7 http //www.nicovideo.jp/watch/sm4418858 part8 http //www.nicovideo.jp/watch/sm4427039 part9 http //www.nicovideo.jp/watch/sm4442430 感想・レビュー等 名前 コメント
https://w.atwiki.jp/dmtf/pages/14.html
1Scope The Common Information Model (CIM) (DSP0004) is an object-oriented information model defined by the Distributed Management Task Force (DMTF) that provides a conceptual framework for describing management data. The Common Information Model (CIM) (DSP0004) はDistributed Management Task Force (DMTF) によって定義されたデータ管理のためのオブジェクト指向データモデルです。 The Hypertext Transfer Protocol (HTTP) (RFC 1945, RFC 2068, RFC 2616) is an application-level protocol for distributed, collaborative, hypermedia information systems. This generic stateless protocol can be used for many tasks through extension of its request methods, error codes, and headers. The Hypertext Transfer Protocol (HTTP) (RFC 1945, RFC 2068, RFC 2616) は、ハイパーメディア情報システムを記述したり、コラボレートするためのアプリケーションレベルのプロトコル(規約)です。 この総括的なステートレスプロトコルはリクエストメソッド、エラーコードとヘッダをつかって多くのタスクに使用することが可能です。 The Extensible Markup Language (XML) is a simplified subset of SGML that offers powerful and extensible data modeling capabilities. An XML document is a collection of data represented in XML. An XML schema is a grammar that describes the structure of an XML document. The Extensible Markup Language (XML) Iはパワフルで拡張的なデータモデリングが可能なSGMLの簡素なサブセットです。XMLドキュメントはXMLで表現されたデータの集まりです。XMLスキーマはXMLドキュメントの構造を記述する文法です。 This document defines a mapping of CIM messages onto HTTP that allows implementations of CIM to interoperate in an open, standardized manner. It is based on the CIM XML DTD (DSP0201 and DSP0203) that defines the XML schema for CIM objects and messages. このドキュメントはHTTP上でやり取りされるのCIM実装で許容されたCIMメッセージと オープンで標準化されたマナーとしての相互運用(の規則)へのマッピングを定義します。
https://w.atwiki.jp/insomniazzz/pages/23.html
なんしぃお前ぶさいくだなぁ minaphyの本音 派生バージョン さくらはでぶだからなぁ なんしぃお前ぐれねーどへたくそだなぁ Aロンしばいてくるわ^^ 死亡フラグ 最近LGとヤレてないからなあ よそでやってください。 LGケツ毛びっしりだから 声で分かるらしい ナイスデスウゥゥ↑↑ ハァァイ!!↑↑ InsomniaGirlsの49% 静かにして、足音聞こえない そういうこと サドンは遊びじゃねえんだよ! 孤高のSR venatio が放った一言。 無知って罪だなぁ 知識王Venatioの口癖^^; 我慢出来ない~♪ 我らInsomniaの逆ラッシュBGM(MiLes担当) 危ない!危ない!危ない!引いて!引いて!引いて!!! 突っ込めってことだよ言わせんな恥ずかしい Insomnia..深夜部 サドンは遊びじゃねえんだよ! KOUSI:持ち歌ある?え?天体観測きもww俺、残酷な天使のテーゼ92点だから^^ Minaphy きも Minaphy あ?(怒) 不意打ち まんすじ見えてる!! 卑猥な意味じゃないよ そろそろ芋るか^^; 勝負ラウンドから本気 僕米田駿なんでぇ↑↑WWWWWWW 自己紹介 いますごいこといったw \まんこ/ いーーや↑ ああそうで? 他のクランで言うと何言ってんだこいつと思われる