1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
|
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja"><head><!--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>core - Apache HTTP サーバ</title>
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
<link href="../images/favicon.ico" rel="shortcut icon" /></head>
<body>
<div id="page-header">
<p class="menu"><a href="../mod/">モジュール</a> | <a href="../mod/directives.html">ディレクティブ</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">用語</a> | <a href="../sitemap.html">サイトマップ</a></p>
<p class="apache">Apache HTTP サーバ バージョン 2.2</p>
<img alt="" src="../images/feather.gif" /></div>
<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP サーバ</a> > <a href="http://httpd.apache.org/docs/">ドキュメンテーション</a> > <a href="../">バージョン 2.2</a> > <a href="./">モジュール</a></div>
<div id="page-content">
<div id="preamble"><h1>Apache コア機能</h1>
<div class="toplang">
<p><span>Available Languages: </span><a href="../de/mod/core.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
<a href="../en/mod/core.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/core.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
<a href="../ja/mod/core.html" title="Japanese"> ja </a> |
<a href="../tr/mod/core.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
</div>
<div class="outofdate">This translation may be out of date. Check the
English version for recent changes.</div>
<table class="module"><tr><th><a href="module-dict.html#Description">説明:</a></th><td>常に使用可能な Apache HTTP サーバのコア機能</td></tr>
<tr><th><a href="module-dict.html#Status">ステータス:</a></th><td>Core</td></tr></table>
</div>
<div id="quickview"><h3 class="directives">ディレクティブ</h3>
<ul id="toc">
<li><img alt="" src="../images/down.gif" /> <a href="#acceptfilter">AcceptFilter</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#acceptpathinfo">AcceptPathInfo</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#accessfilename">AccessFileName</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#adddefaultcharset">AddDefaultCharset</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#addoutputfilterbytype">AddOutputFilterByType</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#allowencodedslashes">AllowEncodedSlashes</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#allowoverride">AllowOverride</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#authname">AuthName</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#authtype">AuthType</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#cgimapextension">CGIMapExtension</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#contentdigest">ContentDigest</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#defaulttype">DefaultType</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#directory"><Directory></a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#directorymatch"><DirectoryMatch></a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#documentroot">DocumentRoot</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#enablemmap">EnableMMAP</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#enablesendfile">EnableSendfile</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#errordocument">ErrorDocument</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#errorlog">ErrorLog</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#fileetag">FileETag</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#files"><Files></a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#filesmatch"><FilesMatch></a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#forcetype">ForceType</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#gprofdir">GprofDir</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#hostnamelookups">HostnameLookups</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#ifdefine"><IfDefine></a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#ifmodule"><IfModule></a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#include">Include</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#keepalive">KeepAlive</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#keepalivetimeout">KeepAliveTimeout</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#limit"><Limit></a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#limitexcept"><LimitExcept></a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#limitinternalrecursion">LimitInternalRecursion</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#limitrequestbody">LimitRequestBody</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#limitrequestfields">LimitRequestFields</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#limitrequestfieldsize">LimitRequestFieldSize</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#limitrequestline">LimitRequestLine</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#limitxmlrequestbody">LimitXMLRequestBody</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#location"><Location></a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#locationmatch"><LocationMatch></a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#loglevel">LogLevel</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#maxkeepaliverequests">MaxKeepAliveRequests</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#namevirtualhost">NameVirtualHost</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#options">Options</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#protocol">Protocol</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#require">Require</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#rlimitcpu">RLimitCPU</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#rlimitmem">RLimitMEM</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#rlimitnproc">RLimitNPROC</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#satisfy">Satisfy</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#scriptinterpretersource">ScriptInterpreterSource</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#serveradmin">ServerAdmin</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#serveralias">ServerAlias</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#servername">ServerName</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#serverpath">ServerPath</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#serverroot">ServerRoot</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#serversignature">ServerSignature</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#servertokens">ServerTokens</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#sethandler">SetHandler</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#setinputfilter">SetInputFilter</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#setoutputfilter">SetOutputFilter</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#suexec">Suexec</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#timeout">TimeOut</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#traceenable">TraceEnable</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#usecanonicalname">UseCanonicalName</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#usecanonicalphysicalport">UseCanonicalPhysicalPort</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#virtualhost"><VirtualHost></a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="AcceptFilter" id="AcceptFilter">AcceptFilter</a> <a name="acceptfilter" id="acceptfilter">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>プロトコルを Listen しているソケットの最適化を設定する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AcceptFilter <var>protocol</var> <var>accept_filter</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>2.1.5 以降</td></tr>
</table>
<p>Listen しているソケットに対して、OS が固有に持っているプロトコルについての最適化を
有効にするディレクティブです。大前提となる条件は、データが受信されるか
HTTP リクエスト全体がバッファされるかするまで、カーネルがサーバプロセスに
ソケットを送らないようになっている、ということです。現在サポートされているのは、
<a href="http://www.freebsd.org/cgi/man.cgi?query=accept_filter&sektion=9">
FreeBSD の Accept Filter</a> と Linux のプリミティブな
<code>TCP_DEFER_ACCEPT</code> のみです。</p>
<p>FreeBSD のデフォルト値は :</p>
<div class="example"><p><code>
AcceptFilter http httpready <br />
AcceptFilter https dataready
</code></p></div>
<p><code>httpready</code> Accept Filter は HTTP リクエスト全体を、
カーネルレベルでバッファリングします。リクエスト全体を受信し終わると、
その後サーバプロセスにそれを送ります。詳細については <a href="http://www.freebsd.org/cgi/man.cgi?query=accf_http&sektion=9">accf_http(9)</a>
を参照してください。HTTPS のリクエストは暗号化されているので <a href="http://www.freebsd.org/cgi/man.cgi?query=accf_data&sektion=9">accf_data(9)</a>
フィルタのみが使用されます。</p>
<p>Linux でのデフォルト値は :</p>
<div class="example"><p><code>
AcceptFilter http data <br />
AcceptFilter https data
</code></p></div>
<p>Linux の <code>TCP_DEFER_ACCEPT</code> は HTTP リクエストのバッファリングを
サポートしていません。<code>none</code> 以外の値で
<code>TCP_DEFER_ACCEPT</code> が有効になります。詳細については Linux
man ページ <a href="http://homepages.cwi.nl/~aeb/linux/man2html/man7/tcp.7.html">tcp(7)</a>
を参照してください。</p>
<p>引数に <code>none</code> を指定すると、プロトコルに対する全ての Accept
Filter が無効になります。<code>nntp</code> といった、先にサーバにデータを
送る必要のあるプロトコルに有効です :</p>
<div class="example"><p><code>AcceptFilter nntp none</code></p></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="AcceptPathInfo" id="AcceptPathInfo">AcceptPathInfo</a> <a name="acceptpathinfo" id="acceptpathinfo">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>後に続くパス名情報を受け付けるリソースの指定</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AcceptPathInfo On|Off|Default</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>AcceptPathInfo Default</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 2.0.30 以降で使用可能</td></tr>
</table>
<p>このディレクティブは実際のファイル名 (もしくは存在するディレクトリの
存在しないファイル) の後に続くパス名情報があるリクエストを受け付けるか
拒否するかを制御します。続きのパス名情報はスクリプトには <code>PATH_INFO</code>
環境変数として利用可能になります。</p>
<p>例えば、<code>/test/</code> が、<code>here.html</code> というファイル
一つのみがあるディレクトリを指しているとします。そうすると、
<code>/test/here.html/more</code> と <code>/test/nothere.html/more</code>
へのリクエストは両方とも <code>/more</code> を <code>PATH_INFO</code> とします。</p>
<p><code class="directive">AcceptPathInfo</code> ディレクティブに指定可能な
三つの引数は:</p>
<dl>
<dt><code>Off</code></dt><dd>リクエストは存在するパスにそのまま
マップされる場合にのみ受け付けられます。ですから、上の例の
<code>/test/here.html/more</code> のように、本当のファイル名の
後にパス名情報が続くリクエストには 404 NOT FOUND エラーが返ります。</dd>
<dt><code>On</code></dt><dd>前の方のパスが存在するファイルにマップする場合は
リクエストが受け付けられます。上の例の <code>/test/here.html/more</code>
は <code>/test/here.html</code> が有効なファイルにマップすれば
受け付けられます。</dd>
<dt><code>Default</code></dt><dd>続きのパス名情報の扱いはリクエストの
<a href="../handler.html">ハンドラ</a>で決まります。
普通のファイルのためのコアハンドラのデフォルトは <code>PATH_INFO</code> を拒否します。
<a href="mod_cgi.html">cgi-script</a> や <a href="mod_isapi.html">isapi-handler</a> のようにスクリプトを扱うハンドラは
一般的にデフォルトで <code>PATH_INFO</code> を受け付けます。</dd>
</dl>
<p><code>AcceptPathInfo</code> の主な目的はハンドラの <code>PATH_INFO</code> を
受け付けるか拒否するかの選択を上書きできるようにすることです。
例えば、これは例えば <a href="mod_include.html">INCLUDES</a> のような
<a href="../filter.html">フィルタ</a>を使って <code>PATH_INFO</code> に
基づいてコンテンツを生成しているときに必要になります。</p>
<div class="example"><p><code>
<Files "mypaths.shtml"><br />
<span class="indent">
Options +Includes<br />
SetOutputFilter INCLUDES<br />
AcceptPathInfo On<br />
</span>
</Files>
</code></p></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="AccessFileName" id="AccessFileName">AccessFileName</a> <a name="accessfilename" id="accessfilename">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>分散設定ファイルの名前</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AccessFileName <var>filename</var> [<var>filename</var>] ...</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>AccessFileName .htaccess</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>リクエストを処理するとき、サーバはディレクトリに
対して分散設定ファイルが<a href="#allowoverride">有効になっていれば</a>、
そのドキュメントへの
パス上にある全てのディレクトリから、ここで指定された名前の一覧の中で
最初に見つかったファイルをそれぞれ設定ファイルとして読み込みます。例えば:</p>
<div class="example"><p><code>
AccessFileName .acl
</code></p></div>
<p>という設定があると、以下のようにして無効にされていない限り、
ドキュメント <code>/usr/local/web/index.html</code>
を返す前に、サーバは <code>/.acl</code>, <code>/usr/.acl</code>,
<code>/usr/local/.acl</code>, <code>/usr/local/web/.acl</code> から
ディレクティブを読み込みます。</p>
<div class="example"><p><code>
<Directory /><br />
<span class="indent">
AllowOverride None<br />
</span>
</Directory>
</code></p></div>
<h3>参照</h3>
<ul>
<li><code class="directive"><a href="#allowoverride">AllowOverride</a></code></li>
<li><a href="../configuring.html">設定ファイル</a></li>
<li><a href="../howto/htaccess.html">.htaccess ファイル</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="AddDefaultCharset" id="AddDefaultCharset">AddDefaultCharset</a> <a name="adddefaultcharset" id="adddefaultcharset">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>レスポンスのコンテントタイプが <code>text/plain</code> あるいは
<code>text/html</code> の場合に追加するデフォルトの charset パラメータ</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AddDefaultCharset On|Off|<var>charset</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>AddDefaultCharset Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>レスポンスのコンテントタイプが <code>text/plain</code>
あるいは <code>text/html</code>
の場合に限りますが、レスポンスに追加するメディアタイプの文字セットパラメータ
(文字エンコーディングの名前) のデフォルト値を、このディレクティブで指定します。
これはレスポンス <span class="transnote">(<em>訳注:</em> レスポンスの HTML)</span> 内で <code>META</code>
要素で指定された、どのような文字セットも無効にしますが、
最終的な挙動はユーザのクライアント側の設定で決まります。
この機能は <code>AddDefaultCharset Off</code> という設定で無効になります。
<code>AddDefaultCharset On</code> にすれば、
Apache 内部のデフォルト文字セット <code>iso-8859-1</code> に設定されます。
その他 <var>charset</var> に指定できる値であれば、どんな値でも使えます。
指定する値は、MIME メディアタイプとして使われる
<a href="http://www.iana.org/assignments/character-sets">IANA
に登録されている文字セット名</a>のうちの一つにすべきです。
例えば:</p>
<div class="example"><p><code>
AddDefaultCharset utf-8
</code></p></div>
<p><code class="directive">AddDefaultCharset</code> を使うときは、全てのテキストリソースが
指定する文字エンコードになっていると分かっていて、かつ、
リソースの個々に文字セットを指定するのが大変な場合のみです。
例を挙げると、レガシーな CGI スクリプトなどの、動的に生成される
コンテンツを含むリソースに文字セットパラメータを追加する場合で、
ユーザの入力データが出力に入り、クロスサイトスクリプティングが
引き起こされうる場合です。デフォルト文字セットをセットしたとしても、
ブラウザの "文字エンコードの自動選択" 機能が有効になっているユーザを
守ることにはならないので、もちろんより良い解決策は単にスクリプトを修正
(あるいは削除) することです。</p>
<h3>参照</h3>
<ul>
<li><code class="directive"><a href="../mod/mod_mime.html#addcharset">AddCharset</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="AddOutputFilterByType" id="AddOutputFilterByType">AddOutputFilterByType</a> <a name="addoutputfilterbytype" id="addoutputfilterbytype">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>MIME-type に出力フィルタを割り当てる</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AddOutputFilterByType <var>filter</var>[;<var>filter</var>...] <var>MIME-type</var>
[<var>MIME-type</var>] ...</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 2.0.33 以降で使用可能。ただし 2.1 以降で非推奨。</td></tr>
</table>
<p>このディレクティブは応答の <a class="glossarylink" href="../glossary.html#mime-type" title="用語集を参照">MIME タイプ</a> に応じて出力<a href="../filter.html">フィルタ</a>を使用するようにします。
ただし下で説明される理由により、本ディレクティブは非推奨です。
同等の機能は <code class="module"><a href="../mod/mod_filter.html">mod_filter</a></code> で利用できます。</p>
<p>次の例は <code class="module"><a href="../mod/mod_deflate.html">mod_deflate</a></code> の <code>DEFLATE</code> フィルタを
使っています。<code>text/html</code> と <code>text/plain</code> の
すべての出力 (静的なものも動的なものも) をクライアントに送られる前に
圧縮します。</p>
<div class="example"><p><code>
AddOutputFilterByType DEFLATE text/html text/plain
</code></p></div>
<p>複数のフィルタでコンテンツを処理させたいときは、それぞれの名前をセミコロンで
分ける必要があります。各フィルタに対して
<code class="directive">AddOutputFilterByType</code> を一つずつ書くこともできます。</p>
<p>次の例は <code>text/html</code> のスクリプトのすべての出力を
まず <code>INCLUDES</code> フィルタで処理し、さらに <code>DEFLATE</code> フィルタにかけます。</p>
<div class="example"><p><code>
<Location /cgi-bin/><br />
<span class="indent">
Options Includes<br />
AddOutputFilterByType INCLUDES;DEFLATE text/html<br />
</span>
</Location>
</code></p></div>
<div class="warning"><h3>注:</h3>
<p><code class="directive">AddOutputFilterByType</code> ディレクティブにより
有効にしたフィルタは場合によっては、部分的もしくは完全に適用されないことが
あります。例えば、<a class="glossarylink" href="../glossary.html#mime-type" title="用語集を参照">MIME タイプ</a> が決定できないときには
<code class="directive"><a href="#defaulttype">DefaultType</a></code> の設定が同じだったとしても、
<code class="directive"><a href="#defaulttype">DefaultType</a></code> 設定を使うようになります。</p>
<p>しかし、確実にフィルタが適用されるようにしたいときは、リソースに
明示的にコンテントタイプを割り当てることができます。これには例えば
<code class="directive"><a href="../mod/mod_mime.html#addtype">AddType</a></code> ディレクティブや
<code class="directive"><a href="#forcetype">ForceType</a></code> ディレクティブを使います。
(nphでない) CGI スクリプトでコンテントタイプを設定するというものでも
大丈夫です。</p>
</div>
<h3>参照</h3>
<ul>
<li><code class="directive"><a href="../mod/mod_mime.html#addoutputfilter">AddOutputFilter</a></code></li>
<li><code class="directive"><a href="#setoutputfilter">SetOutputFilter</a></code></li>
<li><a href="../filter.html">フィルタ</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="AllowEncodedSlashes" id="AllowEncodedSlashes">AllowEncodedSlashes</a> <a name="allowencodedslashes" id="allowencodedslashes">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>URL 中の符号化されたパス分離文字が先に伝えられるのを許可するかどうかを
決定する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AllowEncodedSlashes On|Off</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>AllowEncodedSlashes Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 2.0.46 以降で使用可能</td></tr>
</table>
<p><code class="directive">AllowEncodedSlashes</code> ディレクティブは符号化された
パス分離文字 (<code>/</code> は <code>%2F</code>、さらにシステムによっては
<code>\</code> に対応する <code>%5C</code>) が存在する URL の使用を
許可するかどうかを決定します。通常はそのような URL は 404 (Not found) エラー
で拒否されます。</p>
<p><code class="directive">AllowEncodedSlashes</code> <code>On</code> による
パス分離文字の使用は、<code>PATH_INFO</code> と合わせて
使うときに一番役に立ちます。</p>
<div class="note"><h3>注</h3>
<p>符号化されたスラッシュを許可することは、<em>復号</em>をすることを
意味<em>しません</em>。<code>%2F</code> や (関係するシステムでの)
<code>%5C</code> は、他の部分が復号された URL の中でもそのままの形式で
残されます。</p>
</div>
<h3>参照</h3>
<ul>
<li><code class="directive"><a href="#acceptpathinfo">AcceptPathInfo</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="AllowOverride" id="AllowOverride">AllowOverride</a> <a name="allowoverride" id="allowoverride">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td><code>.htaccess</code> で許可されるディレクティブの種類</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AllowOverride All|None|<var>directive-type</var>
[<var>directive-type</var>] ...</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>AllowOverride All</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>サーバが (<code class="directive"><a href="#accessfilename">AccessFileName</a></code> によって指定された)
<code>.htaccess</code> ファイルを見つけた時、そのファイルの中で
宣言されたどのディレクティブがより前に定義された設定ディレクティブを
上書きできるかを知る必要があります。</p>
<div class="note"><h3><Directory> セクションでのみ使用可能</h3>
<code class="directive">AllowOverride</code> は正規表現無しの<code class="directive"><a href="#directory"><Directory></a></code>
セクションでのみ有効で、<code class="directive"><a href="#location"><Location></a></code> や <code class="directive"><a href="#directorymatch"><DirectoryMatch></a></code>
や <code class="directive"><a href="#files"><Files></a></code> セクションでは無効です。
</div>
<p>このディレクティブを <code>None</code> に設定すると、<a href="#accessfilename">.htaccess</a> ファイルは完全に
無視されます。
この場合、サーバはファイルシステムの <code>.htaccess</code> ファイルを読むことを
試みさえしません。</p>
<p>このディレクティブが <code>All</code> に設定されている時には、
<code>.htaccess</code> という <a href="directive-dict.html#Context">コンテキスト</a> を持つ
全てのディレクティブが利用できます。</p>
<p><var>directive-type</var> には、以下のディレクティブ群の
キーワードのどれかを指定します。</p>
<dl>
<dt>AuthConfig</dt>
<dd>
認証に関するディレクティブの使用を許可する (<code class="directive"><a href="../mod/mod_authn_dbm.html#authdbmgroupfile">AuthDBMGroupFile</a></code>,
<code class="directive"><a href="../mod/mod_authn_dbm.html#authdbmuserfile">AuthDBMUserFile</a></code>,
<code class="directive"><a href="../mod/mod_authz_groupfile.html#authgroupfile">AuthGroupFile</a></code>,
<code class="directive"><a href="#authname">AuthName</a></code>,
<code class="directive"><a href="#authtype">AuthType</a></code>, <code class="directive"><a href="../mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code>, <code class="directive"><a href="#require">Require</a></code> <em>など</em>)。</dd>
<dt>FileInfo</dt>
<dd>
ドキュメントタイプを制御するディレクティブ (<code class="directive"><a href="#defaulttype">DefaultType</a></code>, <code class="directive"><a href="#errordocument">ErrorDocument</a></code>, <code class="directive"><a href="#forcetype">ForceType</a></code>, <code class="directive"><a href="../mod/mod_negotiation.html#languagepriority">LanguagePriority</a></code>,
<code class="directive"><a href="#sethandler">SetHandler</a></code>, <code class="directive"><a href="#setinputfilter">SetInputFilter</a></code>, <code class="directive"><a href="#setoutputfilter">SetOutputFilter</a></code>,
<code class="module"><a href="../mod/mod_mime.html">mod_mime</a></code> の Add* と Remove*
ディレクティブ<em>など</em>)、
ドキュメントのメタデータを制御するディレクティブ (<code class="directive"><a href="../mod/mod_headers.html#header">Header</a></code>, <code class="directive"><a href="../mod/mod_headers.html#requestheader">RequestHeader</a></code>, <code class="directive"><a href="../mod/mod_setenvif.html#setenvif">SetEnvIf</a></code>, <code class="directive"><a href="../mod/mod_setenvif.html#setenvifnocase">SetEnvIfNoCase</a></code>, <code class="directive"><a href="../mod/mod_setenvif.html#browsermatch">BrowserMatch</a></code>, <code class="directive"><a href="../mod/mod_usertrack.html#cookieexpires">CookieExpires</a></code>, <code class="directive"><a href="../mod/mod_usertrack.html#cookiedomain">CookieDomain</a></code>, <code class="directive"><a href="../mod/mod_usertrack.html#cookiestyle">CookieStyle</a></code>, <code class="directive"><a href="../mod/mod_usertrack.html#cookietracking">CookieTracking</a></code>, <code class="directive"><a href="../mod/mod_usertrack.html#cookiename">CookieName</a></code>),
<code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> のディレクティブ <code class="directive"><a href="../mod/mod_rewrite.html#rewriteengine">RewriteEngine</a></code>, <code class="directive"><a href="../mod/mod_rewrite.html#rewriteoptions">RewriteOptions</a></code>, <code class="directive"><a href="../mod/mod_rewrite.html#rewritebase">RewriteBase</a></code>, <code class="directive"><a href="../mod/mod_rewrite.html#rewritecond">RewriteCond</a></code>, <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code>) と
<code class="module"><a href="../mod/mod_actions.html">mod_actions</a></code> の
<code class="directive"><a href="../mod/mod_actions.html#action">Action</a></code>
ディレクティブの使用を許可する。</dd>
<dt>Indexes</dt>
<dd>
ディレクトリインデックスを制御するためのディレクティブの使用を許可する
(<code class="directive"><a href="../mod/mod_autoindex.html#adddescription">AddDescription</a></code>,
<code class="directive"><a href="../mod/mod_autoindex.html#addicon">AddIcon</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#addiconbyencoding">AddIconByEncoding</a></code>,
<code class="directive"><a href="../mod/mod_autoindex.html#addiconbytype">AddIconByType</a></code>,
<code class="directive"><a href="../mod/mod_autoindex.html#defaulticon">DefaultIcon</a></code>, <code class="directive"><a href="../mod/mod_dir.html#directoryindex">DirectoryIndex</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#fancyindexing">FancyIndexing</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#headername">HeaderName</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#indexignore">IndexIgnore</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#indexoptions">IndexOptions</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#readmename">ReadmeName</a></code>
<em>など</em>)。</dd>
<dt>Limit</dt>
<dd>
ホストへのアクセス制御を行うためのディレクティブの使用を許可する (<code class="directive"><a href="../mod/mod_authz_host.html#allow">Allow</a></code>, <code class="directive"><a href="../mod/mod_authz_host.html#deny">Deny</a></code>, <code class="directive"><a href="../mod/mod_authz_host.html#order">Order</a></code>).</dd>
<dt>Options[=<var>Option</var>,...]</dt>
<dd>
特定のディレクトリにおける機能を指定するためのディレクティブの使用を許可する
(<code class="directive"><a href="#options">Options</a></code> と
<code class="directive"><a href="../mod/mod_include.html#xbithack">XBitHack</a></code>)。
<code class="directive"><a href="#options">Options</a></code> で設定するオプション
を、(空白を含めない) コンマ区切りのリストにして等号の後に続けることで
設定できます。</dd>
</dl>
<p>例:</p>
<div class="example"><p><code>
AllowOverride AuthConfig Indexes
</code></p></div>
<p>上の例では <code>AuthConfig</code> と <code>Indexes</code> のどちらにも
属さないディレクティブはすべて内部サーバエラーを引き起こします。</p>
<h3>参照</h3>
<ul>
<li><code class="directive"><a href="#accessfilename">AccessFileName</a></code></li>
<li><a href="../configuring.html">設定ファイル</a></li>
<li><a href="../howto/htaccess.html">.htaccess ファイル</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="AuthName" id="AuthName">AuthName</a> <a name="authname" id="authname">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>HTTP 認証の認可領域 (訳注: realm)</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AuthName <var>auth-domain</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>AuthConfig</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>このディレクティブはディレクトリに対する認可領域 (訳注: realm)
の名前を指定します。
認可領域は、利用者がどのユーザ名とパスワードを送信すればよいのかを
クライアントに教えるために利用します。
<code class="directive">AuthName</code> は一つの引数をとり、
スペースが含まれる場合には、
引用符で括らなければなりません。
このディレクティブは
<code class="directive"><a href="#authtype">AuthType</a></code> ディレクティブや
<code class="directive"><a href="#require">Require</a></code> ディレクティブと、
<code class="directive"><a href="../mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code> や
<code class="directive"><a href="../mod/mod_authz_groupfile.html#authgroupfile">AuthGroupFile</a></code> などのディレクティブと
一緒に利用する必要があります。</p>
<p>例えば:</p>
<div class="example"><p><code>
AuthName "Top Secret"
</code></p></div>
<p>ここで <code>AuthName</code> に指定した文字列が、
大部分のブラウザのパスワードダイアログに表示されます。</p>
<h3>参照</h3>
<ul>
<li><a href="../howto/auth.html">認証、承認、アクセス制御</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="AuthType" id="AuthType">AuthType</a> <a name="authtype" id="authtype">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>ユーザ認証の種類</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AuthType Basic|Digest</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>AuthConfig</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>このディレクティブは対象ディレクトリで利用するユーザー認証の種類を選びます。
使用できる認証方式は <code>Basic</code> (<code class="module"><a href="../mod/mod_auth_basic.html">mod_auth_basic</a></code>
で実装) と <code>Digest</code> (<code class="module"><a href="../mod/mod_auth_digest.html">mod_auth_digest</a></code>
で実装) です。</p>
<p>認証を有効にするには、<code class="directive"><a href="#authname">AuthName</a></code>
と <code class="directive"><a href="#require">Require</a></code> ディレクティブも
使う必要があります。それに加えて認証プロバイダモジュールの
<code class="module"><a href="../mod/mod_authn_file.html">mod_authn_file</a></code> 等と、承認モジュール
<code class="module"><a href="../mod/mod_authz_user.html">mod_authz_user</a></code> 等もサーバに組み込む必要があります。</p>
<h3>参照</h3>
<ul>
<li><a href="../howto/auth.html">認証、承認、アクセス制御</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="CGIMapExtension" id="CGIMapExtension">CGIMapExtension</a> <a name="cgimapextension" id="cgimapextension">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>CGI スクリプトのインタープリタの位置を調べるための手法</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>CGIMapExtension <var>cgi-path</var> <var>.extension</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>NetWare のみ</td></tr>
</table>
<p>このディレクティブは Apache が CGI スクリプトを実行するための
インタープリタを探す方法を制御します。
例えば、<code>CGIMapExtension sys:\foo.nlm .foo</code> と設定すると
<code>.foo</code> という拡張子のすべての CGI スクリプトは FOO インタープリタに
渡されます。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ContentDigest" id="ContentDigest">ContentDigest</a> <a name="contentdigest" id="contentdigest">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td><code>Content-MD5</code> HTTP 応答ヘッダの生成を有効にする</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ContentDigest On|Off</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>ContentDigest Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>Options</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>このディレクティブは、RFC1864 及び RFC2616 において定義されている
<code>Content-MD5</code> ヘッダーの生成を有効にします。</p>
<p>MD5 は、任意長のデータの「メッセージダイジェスト」(「指紋」
と表現されることもある) を計算するアルゴリズムで、
データの変更があった場合には非常に高い信頼度でメッセージダイジェストに変更が
反映されます。</p>
<p><code>Content-MD5</code> ヘッダは、エンドツーエンドで
エンティティボディーに含まれるメッセージの完全性チェック
(Message Integrity Check - MIC)を提供します。
このヘッダを調べることで、プロキシやクライアントは、
途中経路におけるエンティティボディの予期せぬ変更などを
検出することができます。ヘッダの例:</p>
<div class="example"><p><code>
Content-MD5: AuLb7Dp1rqtRtxz2m9kRpA==
</code></p></div>
<p>リクエスト毎にメッセージダイジェストを計算する (値はキャッシュされません)
ことから、
サーバパフォーマンスが低下することについて注意してください。</p>
<p><code>Content-MD5</code>は、<code class="module"><a href="../mod/core.html">core</a></code> 機能により処理された
ドキュメントを送るときのみ有効であり、
SSI ドキュメントや CGI スクリプトの出力、バイトレンジを指定した
応答の場合にはこのヘッダは付与されません。
</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="DefaultType" id="DefaultType">DefaultType</a> <a name="defaulttype" id="defaulttype">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバがコンテントタイプを決定できないときに
送られる MIME コンテントタイプ</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>DefaultType <var>MIME-type|none</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>DefaultType text/plain</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>サーバは、<a class="glossarylink" href="../glossary.html#mime-type" title="用語集を参照">MIME タイプ</a>
のマッピングでは決定できない
ドキュメントの送信を要求されることがあります。</p>
<p>サーバは、ドキュメントのコンテントタイプをクライアントに通知するべき(SHOULD)です。
もし通常の方法ではコンテントタイプが分からない場合は、
<code>DefaultType</code> で指定されたタイプを利用します。
例:</p>
<div class="example"><p><code>
DefaultType image/gif
</code></p></div>
<p>これは <code>.gif</code> という拡張子がファイル名に含まれていない
多くの GIF 画像が含まれているディレクトリに適しているでしょう。</p>
<p>サーバ側でも管理者側(たとえば proxy)でもコンテントタイプが分からない場合で、
MIME タイプの情報が誤ってついているかもしれないぐらいであればむしろ無いほうがよい、
という場合もあるでしょう。このような場合は、次のようにします。</p>
<div class="example"><p><code>
DefaultType None
</code></p></div>
<p>DefaultType None は httpd-2.2.7 以降で使えます。</p>
<p><code class="directive"><a href="#forcetype">ForceType</a></code> ディレクティブと
違って、このディレクティブはデフォルトの MIME タイプを提供するだけで
あることに注意してください。ファイル名の拡張子を含め、
メディアタイプを決定できる他の MIME タイプの定義があれば
このデフォルトは上書きされます。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="Directory" id="Directory"><Directory></a> <a name="directory" id="directory">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>指定のファイルシステムのディレクトリとサブディレクトリとのみに
適用されるディレクティブを囲む</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code><Directory <var>directory-path</var>>
... </Directory></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>指定されたディレクトリとそのサブディレクトリにのみ
ディレクティブを適用させるためには、
<code class="directive"><Directory></code> と
<code></Directory></code> を対として、ディレクティブ群を囲います。
その中には、ディレクトリコンテキストで許可された全てのディレクティブを
利用できます。
<var>directive-path</var> は、フルパスもしくは Unix のシェル形式の
ワイルドカードを指定します。
<code>?</code> は任意の 1 文字、<code>*</code> は任意の文字列にマッチします。
シェルにおける指定同様、文字の範囲を <code>[]</code> で指定できます。
ワイルドカードは `/' 文字にはマッチしませんので、
<code>/home/user/public_html</code> には
<code><Directory /*/public_html></code> はマッチしませんが、
<code><Directory /home/*/public_html></code> はマッチします。
例:</p>
<div class="example"><p><code>
<Directory /usr/local/httpd/htdocs><br />
<span class="indent">
Options Indexes FollowSymLinks<br />
</span>
</Directory>
</code></p></div>
<div class="note">
<p><var>directory-path</var> 引数には注意してください: その引数は
Apache がファイルをアクセスするために使うファイルシステムのパスに
そのままマッチする必要があります。ある <code><Directory></code> に
適用されるディレクティブは、別のシンボリックリンクをたどったりして
同じディレクトリを違うパスでアクセスした場合には適用されません。</p>
</div>
<p><code>~</code> という文字を
付加することで<a class="glossarylink" href="../glossary.html#regex" title="用語集を参照">正規表現</a>を利用することもできます。
例えば:</p>
<div class="example"><p><code>
<Directory ~ "^/www/.*/[0-9]{3}">
</code></p></div>
<p>といった指定の場合、<code>/www/</code> 以下にある数字
3 文字のディレクトリにマッチします。</p>
<p>もし複数の (正規表現以外の) <code class="directive"><Directory></code>セクションが
ドキュメントを含むディレクトリ (やその上位ディレクトリのどれか) とマッチしたならば、
<a href="#accessfilename">.htaccess</a> ファイルのディレクティブも読み込みつつ、
短いパスから順に適用されます。
例えば、</p>
<div class="example"><p><code>
<Directory /><br />
<span class="indent">
AllowOverride None<br />
</span>
</Directory><br />
<br />
<Directory /home/><br />
<span class="indent">
AllowOverride FileInfo<br />
</span>
</Directory>
</code></p></div>
<p>と設定し、ドキュメント <code>/home/web/dir/doc.html</code> への
アクセスがあった場合には以下のように動作します:</p>
<ul>
<li><code>AllowOverride None</code> が適用される。
(<code>.htaccess</code> ファイルは無効になる)</li>
<li><code>AllowOverride FileInfo</code> が適用される
(<code>/home</code> ディレクトリに対して)。</li>
<li><code>/home/.htaccess</code>, <code>/home/web/.htaccess</code>,
<code>/home/web/dir/.htaccess</code> の順にそれらのファイル中の
FileInfo ディレクティブが適用される。</li>
</ul>
<p>正規表現は、通常のセクションがすべて適用されるまで
考慮されません。
その後、全ての正規表現が設定ファイルに現れた順で試されます。
例えば、以下のような場合に</p>
<div class="example"><p><code>
<Directory ~ abc$><br />
<span class="indent">
# ... directives here ...<br />
</span>
</Directory>
</code></p></div>
<p>正規表現のセクションはすべての通常の <code class="directive"><Directory></code> と
<code>.htaccess</code> の適用が終わるまで考慮されません。
その後で、正規表現は <code>/home/abc/public_html/abc</code> にマッチし、
対応する <code class="directive"><Directory></code> が適用されます。</p>
<p><strong>Apache のデフォルトでは <code><Directory /></code> へのアクセスは
<code>Allow from All</code> になっていることに注意してください。
これは、URL からマップされたどのファイルでも Apache は送るということです。
これは以下のようにして変更することが推奨されています。</strong></p>
<div class="example"><p><code>
<Directory /><br />
<span class="indent">
Order Deny,Allow<br />
Deny from All<br />
</span>
</Directory>
</code></p></div>
<p><strong>そしてアクセスを<em>可能にしたい</em>ディレクトリに対して
個別に設定すればよいでしょう。
このあたりについては、<a href="../misc/security_tips.html">セキュリティに関するコツ</a>を
参照してください。</strong></p>
<p>ディレクトリセクションは <code>httpd.conf</code> ファイル書きます。
<code class="directive"><Directory></code>
ディレクティブは入れ子にすることができず、
<code class="directive"><a href="#limit"><Limit></a></code> や <code class="directive"><a href="#limitexcept"><LimitExcept></a></code> セクションの中にも
記述できません。</p>
<h3>参照</h3>
<ul>
<li>リクエストを受けた際にこれらの異なるセクションが
組み合わされる方法については <a href="../sections.html">
<Directory>, <Location>, <Files> セクションの動作法</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="DirectoryMatch" id="DirectoryMatch"><DirectoryMatch></a> <a name="directorymatch" id="directorymatch">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>正規表現にマッチするファイルシステムのディレクトリと
サブディレクトリとのみに適用されるディレクティブを囲む</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code><DirectoryMatch <var>regex</var>>
... </DirectoryMatch></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive"><a href="#directory"><Directory></a></code>
ディレクティブと同様に、<code class="directive"><DirectoryMatch></code>
と <code></DirectoryMatch></code> は指定されたディレクトリと
そのサブディレクトリにのみ適用されるディレクティブ群を囲います。
しかし、このディレクティブは引数として<a class="glossarylink" href="../glossary.html#regex" title="用語集を参照">正規表現</a>をとります。例えば:</p>
<div class="example"><p><code>
<DirectoryMatch "^/www/(.+/)?[0-9]{3}">
</code></p></div>
<p>は <code>/www/</code> 以下にある数字 3 文字のディレクトリにマッチします。</p>
<h3>参照</h3>
<ul>
<li>通常の <code class="directive"><Directory></code> と正規表現の指定が
適用される順番については <code class="directive"><a href="#directory"><Directory></a></code></li>
<li>リクエストを受けた際にこれらの異なるセクションが
組み合わされる方法については <a href="../sections.html">
<Directory>, <Location>, <Files> セクションの動作法</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="DocumentRoot" id="DocumentRoot">DocumentRoot</a> <a name="documentroot" id="documentroot">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>ウェブから見えるメインのドキュメントツリーになる
ディレクトリ</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>DocumentRoot <var>directory-path</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>DocumentRoot /usr/local/apache/htdocs</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>このディレクティブは、<code class="program"><a href="../programs/httpd.html">httpd</a></code>
がファイルを提供するディレクトリを設定します。
<code class="directive"><a href="../mod/mod_alias.html#alias">Alias</a></code> のようなディレクティブにマッチしない場合には、
ドキュメントの (訳注:ファイルシステム上の) パスを生成するために、
リクエストされた URL のパス部分をドキュメントルートに付与します。
例:</p>
<div class="example"><p><code>
DocumentRoot /usr/web
</code></p></div>
<p>この場合、
<code>http://www.my.host.com/index.html</code> へのアクセスがあれば
<code>/usr/web/index.html</code> が返されます。
<var>directory-path</var> が絶対パスでない場合は、
<code class="directive"><a href="#serverroot">ServerRoot</a></code>
からの相対パスとみなされます。</p>
<p><code class="directive">DocumentRoot</code> は最後のスラッシュ無しで
指定する必要があります。</p>
<h3>参照</h3>
<ul>
<li><a href="../urlmapping.html">URL をファイルシステムの位置に
マップする</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="EnableMMAP" id="EnableMMAP">EnableMMAP</a> <a name="enablemmap" id="enablemmap">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>配送中にファイルを読み込むためにメモリマッピングを
使うかどうか</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>EnableMMAP On|Off</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>EnableMMAP On</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>このディレクティブは配送中にファイルの内容を読み込む必要があるときに
<code class="program"><a href="../programs/httpd.html">httpd</a></code> がメモリマッピングを使うかどうかを制御します。
デフォルトでは、
例えば、<code class="module"><a href="../mod/mod_include.html">mod_include</a></code> を使って SSI ファイルを配送
するときのように、ファイルの途中のデータをアクセスする必要があるときには
Apache は OS がサポートしていればファイルをメモリにマップします。</p>
<p>
このメモリマップは性能の向上を持たらすことがあります。
しかし、環境によっては運用上の問題を防ぐためにメモリマッピングを
使用しないようにした方が良い場合もあります:</p>
<ul>
<li>マルチプロセッサシステムの中にはメモリマッピングをすると
<code class="program"><a href="../programs/httpd.html">httpd</a></code> の性能が落ちるものがあります。</li>
<li>NFS マウントされた <code class="directive"><a href="#documentroot">DocumentRoot</a></code>
では、<code class="program"><a href="../programs/httpd.html">httpd</a></code> がメモリマップしている間にファイルが削除されたり
短くなったりしたときに起こるセグメンテーションフォールトのために
<code class="program"><a href="../programs/httpd.html">httpd</a></code> がクラッシュする可能性があります。</li>
</ul>
<p>これらの問題に当てはまるサーバの設定の場合は、以下のようにして
ファイルの配送時のメモリマッピングを使用不可にしてください:</p>
<div class="example"><p><code>
EnableMMAP Off
</code></p></div>
<p>NFS マウントされたファイルには、問題のあるファイルにのみ明示的に
この機能を使用不可にします:</p>
<div class="example"><p><code>
<Directory "/path-to-nfs-files">
<span class="indent">
EnableMMAP Off
</span>
</Directory>
</code></p></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="EnableSendfile" id="EnableSendfile">EnableSendfile</a> <a name="enablesendfile" id="enablesendfile">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>ファイルのクライアントへの配送時にカーネルの sendfile サポートを
使うかどうか</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>EnableSendfile On|Off</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>EnableSendfile On</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>バージョン 2.0.44 以降で使用可能</td></tr>
</table>
<p>このディレクティブはクライアントにファイルの内容を送るときに
<code class="program"><a href="../programs/httpd.html">httpd</a></code> がカーネルの
sendfile サポートを使うかどうかを制御します。デフォルトでは、
例えば静的なファイルの配送のように、リクエストの処理にファイルの
途中のデータのアクセスを必要としないときには、Apache は OS が
サポートしていればファイルを読み込むことなく sendfile を使って
ファイルの内容を送ります。</p>
<p>sendfile は read と send を別々に行なうことと、バッファの割り当てを
回避します。しかし、プラットフォームやファイルシステムの中には
運用上の問題を避けるためにこの機能を使用不可にした方が良い場合があります:</p>
<ul>
<li>プラットフォームの中にはビルドシステムが検知できなかった、壊れた
sendfile のサポートが存在するものがあります。これは特に
バイナリが別のマシンでビルドされ、壊れた sendfile のあるマシンに
移動したときに起こります。</li>
<li>Linux では、sendfile を用いると、
IPv6 使用時に存在する特定ネットワークカードの TCP-checksum
オフロードのバグを踏んでしまいます。</li>
<li>Itanium で動いている Linux で、sendfile は 2GB 以上の
ファイルを扱うことができないでしょう。</li>
<li>ネットワークマウントされた <code class="directive"><a href="#documentroot">DocumentRoot</a></code>
(例えば NFS や SMB)
では、カーネルは自身のキャッシュを使ってネットワークからのファイルを
送ることができないことがあります。</li>
</ul>
<p>これらの問題に当てはまるサーバの設定の場合は、以下のようにして
この機能を使用不可にしてください:</p>
<div class="example"><p><code>
EnableSendfile Off
</code></p></div>
<p>NFS や SMB マウントされたファイルには、問題のあるファイルにのみ明示的に
この機能を使用不可にします:</p>
<div class="example"><p><code>
<Directory "/path-to-nfs-files">
<span class="indent">
EnableSendfile Off
</span>
</Directory>
</code></p></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ErrorDocument" id="ErrorDocument">ErrorDocument</a> <a name="errordocument" id="errordocument">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>エラーが発生したときにサーバがクライアントに送るもの</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ErrorDocument <var>error-code document</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 2.0 ではテキストをクウォートする構文が以前のバージョンから
変わっています。</td></tr>
</table>
<p>問題やエラーが発生したときの動作として、
Apache には以下の四つのうち一つの動作を設定することができます。</p>
<ol>
<li>Apache 標準の簡単なエラーメッセージを表示</li>
<li>自分で指定したメッセージを表示</li>
<li>問題やエラーの処理をする為に、自サーバ内の
<var>URL-path</var> へリダイレクト</li>
<li>問題やエラーの処理をする為に、外部の <var>URL</var> へリダイレクト</li>
</ol>
<p>最初のものがデフォルトの動作で、2 番目から 4 番目は、
<code class="directive">ErrorDocument</code>ディレクティブにより、
HTTP のレスポンスコードと、メッセージか URL を指定することで設定します。
Apache が問題もしくはエラーに関する追加情報を提供することがあります。</p>
<p>URL の場合は、スラッシュで始まる (/) ローカルの web-path (
<code class="directive"><a href="#documentroot">DocumentRoot</a></code> からの相対パス
) か、クライアントが解決できる完全な URL を指定します。
もしくは、ブラウザに表示されるメッセージを指定できます。
例:</p>
<div class="example"><p><code>
ErrorDocument 500 http://foo.example.com/cgi-bin/tester<br />
ErrorDocument 404 /cgi-bin/bad_urls.pl<br />
ErrorDocument 401 /subscription_info.html<br />
ErrorDocument 403 "Sorry can't allow you access today"
</code></p></div>
<p>加えて、特別な値 <code>default</code> を使って Apache に
ハードコードされている簡単なメッセージを指定することができます。
通常は必要ではありませんが、<code>default</code> を使うと
既存の <code class="directive">ErrorDocument</code> ディレクティブの設定を
継承するところで、Apache のハードコードされた簡単なメッセージに
戻すことができます。</p>
<div class="example"><p><code>
ErrorDocument 404 /cgi-bin/bad_urls.pl<br /><br />
<Directory /web/docs><br />
<span class="indent">
ErrorDocument 404 default<br />
</span>
</Directory>
</code></p></div>
<p>リモート URL (例えば、頭に <code>http</code> と付与した方法) を
<code class="directive">ErrorDocument</code> に指定するとき、
たとえ文書が同じサーバにあろうとも、ドキュメントがどこにあるかを通知するために、
Apache はリダイレクトをクライアントに送出するということに、注意してください。
これにはいろいろと関連して起こる問題があります。
中でも最も重要なのは、クライアントは元々のエラーステータスコードを受け取らず、
代わりにリダイレクトのステータスコードを受け取るということです。
これにより、ステータスコードを使って URL が有効であるかどうかを決定しようとする
ウェブロボットやその他クライアントを、混乱させるかもしれません。
さらに、<code>ErrorDocument 401</code> にリモートの URL を指定すると、
クライアントは 401 というステータスコードを受け取らないため、
パスワードをユーザーに入力要求しなければならないことがわかりません。
従って、<strong><code>ErrorDocument 401</code> というディレクティブを使う場合は、
必ずローカルな文書を参照しなければなりません。</strong></p>
<p>Microsoft Internet Explorer (MSIE) はデフォルトではサーバが生成したエラーメッセージが
「小さすぎる」ときには無視をして自分自身の「やさしい」エラーメッセージで
置換します。サイズのしきい値はエラーの種類によって異なりますが、
一般的にはエラーの文書を 512 バイトよりも大きくすると、MSIE は
サーバが生成したエラーを隠さずに表示します。詳しい情報は Microsoft
Knowledge Base の記事 <a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;Q294807">Q294807</a>
にあります。</p>
<p>ほとんどのエラーメッセージを上書きすることができますが、特定の状況下では
<code class="directive"><a href="#errordocument">ErrorDocument</a></code> の設定にかかわらず
内蔵のメッセージが使われます。
特に、不正な形式のリクエストが検出された場合、通常のリクエスト処理は
即座に中止され、内蔵のエラーメッセージが返されます。
この処置は不正なリクエストによって引き起こされる、セキュリティ問題から
守るために必要な措置です。</p>
<p>2.0 より前のバージョンでは、対になっていない二重引用符を
先頭に付けることによりメッセージであることを指定していました。</p>
<h3>参照</h3>
<ul>
<li><a href="../custom-error.html">カスタマイズ可能な
エラー応答のドキュメンテーション</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ErrorLog" id="ErrorLog">ErrorLog</a> <a name="errorlog" id="errorlog">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバがエラーをログ収集する場所</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code> ErrorLog <var>file-path</var>|syslog[:<var>facility</var>]</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>ErrorLog logs/error_log (Unix) ErrorLog logs/error.log (Windows and OS/2)</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive">ErrorLog</code> ディレクティブは、
サーバに生じたさまざまなエラーを
記録する為のファイルの名前を設定します。
<var>file-path</var> が絶対パスでないときは、<code class="directive"><a href="#serverroot">ServerRoot</a></code> からの相対パスとみなされます。</p>
<div class="example"><h3>例</h3><p><code>
ErrorLog /var/log/httpd/error_log
</code></p></div>
<p><var>file-path</var> がパイプ (|) から始まる場合は、
エラーログを処理するために実行されるコマンドが
指定されていると解釈されます。</p>
<div class="example"><h3>例</h3><p><code>
ErrorLog "|/usr/local/bin/httpd_errors"
</code></p></div>
<p>ファイル名の変わりに <code>syslog</code> と指定することによって、
システムがサポートしていれば syslogd(8) を利用したロギングが有効になります。
デフォルトでは、<code>local7</code> ファシリティとなりますが、
<code>syslog:<var>facility</var></code> といった形で記述することにより、
通常 syslog(1) のドキュメントで説明されているファシリティの一つを使うように
することができます。</p>
<div class="example"><h3>例</h3><p><code>
ErrorLog syslog:user
</code></p></div>
<p>セキュリティ:
ログファイルを格納するディレクトリが、サーバを起動したユーザ以外の
ユーザによって書き込める場合にセキュリティが破られる可能性があることに
関する詳細は <a href="../misc/security_tips.html#serverroot">セキュリティに関するコツ</a> を
参照してください。</p>
<div class="warning"><h3>注</h3>
<p>Unix 以外のプラットフォームでファイルのパスを入力するときは、
プラットフォームがバックスラッシュの使用を許していたとしても、
確実にスラッシュのみが使用されるように注意してください。一般的には、
設定ファイル全般でスラッシュのみを使う方が良いでしょう。</p>
</div>
<h3>参照</h3>
<ul>
<li><code class="directive"><a href="#loglevel">LogLevel</a></code></li>
<li><a href="../logs.html">Apache ログファイル</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="FileETag" id="FileETag">FileETag</a> <a name="fileetag" id="fileetag">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>ETag HTTP 応答ヘッダを作成するために使用される
ファイルの属性</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>FileETag <var>component</var> ...</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>FileETag INode MTime Size</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>
<code class="directive">FileETag</code> ディレクティブは
ドキュメントがファイルに基づいたものであるときに、
<code>ETag</code> (エンティティタグ) 応答ヘッダフィールドを作成するときに使用する
ファイルの属性を設定します。 (<code>ETag</code> の値はネットワークの帯域を節約するための
キャッシュの管理で使われます。) Apache 1.3.22 以前では、<code>ETag</code> の値は
<em>常に</em>ファイルの inode, サイズ、最終修正時刻 (mtime) から作成
されていました。<code class="directive">FileETag</code> ディレクティブにより、これらのどれを使うかを
選ぶことができます。認識されるキーワードは:
</p>
<dl>
<dt><strong>INode</strong></dt>
<dd>ファイルの inode 番号を計算に使います</dd>
<dt><strong>MTime</strong></dt>
<dd>ファイルの最終修正時刻を使います</dd>
<dt><strong>Size</strong></dt>
<dd>ファイルの中身のバイト数を使います</dd>
<dt><strong>All</strong></dt>
<dd>使用可能なすべてのフィールドを使います。
これは <div class="example"><p><code>FileETag INode MTime Size</code></p></div> と等価です。</dd>
<dt><strong>None</strong></dt>
<dd>ドキュメントがファイルに基づいたものでも、<code>ETag</code> フィールドを
応答に付加しません</dd>
</dl>
<p><code>INode</code>, <code>MTime</code>, <code>Size</code> キーワードには
<code>+</code> や <code>-</code> を前に付けて
指定することもできます。この場合は、より広い範囲から継承された
デフォルトの設定に変更を加えるようになります。そのような接頭辞の
無いキーワードを指定すると、即座に継承した設定を無効にします。</p>
<p>あるディレクトリの設定に
<code>FileETag INode MTime Size</code> があり、
サブディレクトリの設定に <code>FileETag -INode</code> があるときは、
そのサブディレクトリの設定は (設定が上書きされなければサブディレクトリの
サブディレクトリにも継承されます) <code>FileETag MTime Size</code>
と同じになります。</p>
<div class="warning"><h3>警告</h3>
WebDAV を使っていて、<code class="module"><a href="../mod/mod_dav_fs.html">mod_dav_fs</a></code> をストレージプロバイダとして
使っているような Directory や Location では、デフォルト値を変更しないでください。
条件つきリクエスト中で、<code class="module"><a href="../mod/mod_dav_fs.html">mod_dav_fs</a></code> では
<code>INode MTime Size</code>
という形式の固定フォーマットであることを前提として
<code>ETag</code> の比較を行っています。もし <code>ETag</code> フォーマットを
<code class="directive">FileETag</code> で変えてしまうと、条件つきリクエストが
うまく動作しなくなるでしょう。
</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="Files" id="Files"><Files></a> <a name="files" id="files">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>マッチするファイル名に適用されるディレクティブを囲む</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code><Files <var>filename</var>> ... </Files></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive"><Files></code> ディレクティブは、
その中にあるディレクティブの適用範囲をファイル名で制限します。
<code class="directive"><a href="#directory"><Directory></a></code> ディレクティブや <code class="directive"><a href="#location"><Location></a></code> ディレクティブと
同じような機能を持ちます。
これは、<code></Files></code> ディレクティブと対に
なっていなければなりません。
このセクション中のディレクティブは、ベース名 (ファイル名の最後の部分)
が指定されたファイル名にマッチするすべてのオブジェクトに適用されます。
<code class="directive"><Files></code> セクションは
<code class="directive"><Directory></code> セクションと
<code>.htaccess</code> が読み込まれた後、
<code class="directive"><Location></code> セクションよりは先に
設定ファイルに現れた順に適用されます。
<code class="directive"><Files></code> は、
<code class="directive"><Directory></code> セクション内に
ネストさせることができ、
ファイルシステムの一部にのみ限定して適用させることができます。</p>
<p><var>filename</var> 引数は、ファイル名かワイルドカード文字列
で、ワイルドカードでは <code>?</code> は一つの文字、<code>*</code> は任意の文字列にマッチします。
<code>~</code> という文字を付加することで<a class="glossarylink" href="../glossary.html#regex" title="用語集を参照">正規表現</a>を使うこともできます。
例えば、</p>
<div class="example"><p><code>
<Files ~ "\.(gif|jpe?g|png)$">
</code></p></div>
<p>とすることにより、一般的なインターネットの画像フォーマットにマッチします。
ただし、
<code class="directive"><a href="#filesmatch"><FilesMatch></a></code> を使う方が
推奨されています。</p>
<p>ちなみに、<code class="directive"><a href="#directory"><Directory></a></code> と <code class="directive"><a href="#location"><Location></a></code> セクションとは異なり、
<code class="directive"><Files></code>
は <code>.htaccess</code> ファイル内で利用することができます。
これにより、ユーザがファイル毎にアクセスの制御を行なうことができるように
なっています。</p>
<h3>参照</h3>
<ul>
<li>リクエストを受けた際にこれらの異なるセクションが
組み合わされる方法については <a href="../sections.html">
<Directory>, <Location>, <Files> セクションの動作法</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="FilesMatch" id="FilesMatch"><FilesMatch></a> <a name="filesmatch" id="filesmatch">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>正規表現にマッチするファイル名に適用される
ディレクティブを囲む</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code><FilesMatch <var>regex</var>> ... </FilesMatch></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive"><FilesMatch></code> ディレクティブは、
<code class="directive"><a href="#files"><Files></a></code>
ディレクティブ同様にその中にあるディレクティブの適用範囲をファイル名で制限します。ただし、
このディレクティブには正規表現を指定します。
例えば:</p>
<div class="example"><p><code>
<FilesMatch "\.(gif|jpe?g|png)$">
</code></p></div>
<p>は一般的なインターネットの画像形式にマッチします。</p>
<h3>参照</h3>
<ul>
<li>リクエストを受けた際にこれらの異なるセクションが
組み合わされる方法については <a href="../sections.html">
<Directory>, <Location>, <Files> セクションの動作法</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ForceType" id="ForceType">ForceType</a> <a name="forcetype" id="forcetype">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>すべてのマッチするファイルが指定の MIME コンテントタイプで
送られるようにする</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ForceType <var>MIME-type</var>|None</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 2.0 で core に移動</td></tr>
</table>
<p><code>.htaccess</code> や <code class="directive"><a href="#directory"><Directory></a></code> セクション、
<code class="directive"><a href="#location"><Location></a></code> セクション、
<code class="directive"><a href="#files"><Files></a></code> セクションに
書かれた場合、このディレクティブはそこにあるすべてのファイルが
<var>MIME-type</var>
で指定されたコンテントタイプとして扱われるようにします。たとえば、
GIF ファイルばかりのディレクトリがあって、すべてのファイルを <code>.gif</code>
で終わらせたくはないときに、以下のものを使用します:</p>
<div class="example"><p><code>
ForceType image/gif
</code></p></div>
<p><code class="directive"><a href="#defaulttype">DefaultType</a></code> と違って
このディレクティブはメディアタイプを決めることができるかもしれない
ファイルの拡張子も含め、すべての MIME タイプの関連付けを
上書きすることに注意してください。</p>
<p><code>None</code> という値を使うことで <code class="directive">ForceType</code> の
設定を無効にできます:</p>
<div class="example"><p><code>
# force all files to be image/gif:<br />
<Location /images><br />
<span class="indent">
ForceType image/gif<br />
</span>
</Location><br />
<br />
# but normal mime-type associations here:<br />
<Location /images/mixed><br />
<span class="indent">
ForceType None<br />
</span>
</Location>
</code></p></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="GprofDir" id="GprofDir">GprofDir</a> <a name="gprofdir" id="gprofdir">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>Directory to write gmon.out profiling data to. </td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>GprofDir <var>/tmp/gprof/</var>|<var>/tmp/gprof/</var>%</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table><p>The documentation for this directive has
not been translated yet. Please have a look at the English
version.</p></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="HostnameLookups" id="HostnameLookups">HostnameLookups</a> <a name="hostnamelookups" id="hostnamelookups">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>クライアントの IP アドレスの DNS ルックアップを
有効にする</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>HostnameLookups On|Off|Double</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>HostnameLookups Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>このディレクティブは、ホスト名をログ収集できるように
DNS ルックアップを有効にします
(さらに、CGI/SSI に <code>REMOTE_HOST</code> 変数として渡します)。
<code>Double</code>を指定した場合、2 重の逆引きを行ないます。
つまり、逆引きの後に、その結果に対して正引きを行ないます。正引きの
結果の IP アドレスの中にオリジナルのアドレスと一致するものがなければ
なりません。("tcpwrappers" の用語では <code>PARANOID</code> と呼ばれています。)</p>
<p><code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code> でホスト名によるアクセス
制御を行なう場合には、
設定の如何によらず 2 重の逆引きが実行されます。
これは、セキュリティを保つために必要です。
<code>HostnameLookups Double</code> を設定しない限り、
他の部分はこの 2 重逆引きの結果を使うことはできません。
例えば、<code>HostnameLookups On</code> と設定してある状態で、
ホスト名によるアクセス制限を行なったオブジェクトへの
リクエストを受けたとすると、2 重の逆引きが成功するか否かによらず、
<code>REMOTE_HOST</code> には通常の逆引き結果が渡されます。</p>
<p>ディレクティブのデフォルトは
本当に逆引きを必要としているわけではないサイトの
ネットワークトラフィックを低減させるために、<code>Off</code> になっています。
ルックアップによる余計な遅延がなくなるため、
エンドユーザにとっても良いでしょう。
DNS のルックアップには、かなりの時間が必要となる場合が多く、
負荷の高いサイトではこのディレクティブは <code>Off</code> にすべきです。
なお、<var>/support</var> ディレクトリに含まれ、デフォルトでは
インストールディレクトリの <code>bin</code> サブディレクトリに
インストールされる <code class="program"><a href="../programs/logresolve.html">logresolve</a></code> ユーティリティにより、
Apache の動作とは別に、ログに残されている IP アドレスからホスト名を
ルックアップすることが可能です。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="IfDefine" id="IfDefine"><IfDefine></a> <a name="ifdefine" id="ifdefine">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>起動時にテストが真であるときのみに処理されるディレクティブを
囲む</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code><IfDefine [!]<var>parameter-name</var>> ...
</IfDefine></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code><IfDefine <var>test</var>>...</IfDefine></code>
セクションは、
ディレクティブを条件付きで指定するために利用します。
<code class="directive"><IfDefine></code> セクションに
含まれるディレクティブは、<var>test</var>が
定義されているときのみ処理されます。
もし <var>test</var> が定義されていなければ、
開始と終了の指定の間のディレクティブは無視されます。</p>
<p><code class="directive"><IfDefine></code> セクションディレクティブに
指定する <var>test</var> は、
次の二つの形式のうちの一つをとります:</p>
<ul>
<li><var>parameter-name</var></li>
<li><code>!</code><var>parameter-name</var></li>
</ul>
<p>前者の場合には、<var>parameter-name</var> と名付けられたパラメータが
定義されていれば開始と終了の間のディレクティブが処理されます。
後者の場合は逆で、<em>parameter-name</em> が指定されて<strong>いない</strong>
場合に処理されます。</p>
<p><var>parameter-name</var> 引数は、サーバを起動する際に
<code class="program"><a href="../programs/httpd.html">httpd</a></code> のコマンドラインに
<code>-D<var>parameter-</var></code> という形で指定すると定義されます。 </p>
<p><code class="directive"><IfDefine></code> セクションは
入れ子にすることができ、複数のパラメータによるテストをするために使用できます。
例:</p>
<div class="example"><p><code>
httpd -DReverseProxy ...<br />
<br />
# httpd.conf<br />
<IfDefine ReverseProxy><br />
<span class="indent">
LoadModule rewrite_module modules/mod_rewrite.so<br />
LoadModule proxy_module modules/libproxy.so<br />
</span>
</IfDefine>
</code></p></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="IfModule" id="IfModule"><IfModule></a> <a name="ifmodule" id="ifmodule">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>モジュールの存在するかしないかに応じて処理される
ディレクティブを囲む</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code><IfModule [!]<var>module-file</var>|<var>module-identifier</var>> ...
</IfModule></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>モジュール識別子はバージョン 2.1 以降で使用可能。</td></tr>
</table>
<p><code><IfModule <var>test</var>>...</IfModule></code>
セクションは、モジュールが存在するときに処理されるディレクティブを
指定するために利用します。
<code class="directive"><IfModule></code> セクションに
含まれるディレクティブは、<var>test</var>
で指定するモジュールが組み込まれているときのみ処理されます。
もし <var>test</var> が組み込まれていなければ、開始と終了の間のディレクティブ
は無視されます。</p>
<p><code class="directive"><IfModule></code> セクションディレクティブに
指定する <var>test</var> は、
次の二つの形式のうちの一つをとります。</p>
<ul>
<li><var>module</var></li>
<li>!<var>module</var></li>
</ul>
<p>前者の場合は、<var>module</var> と名付けられたモジュールが
Apache に組み込まれていれば
(コンパイル済みのものと、<code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code> を利用して
動的に読み込んだものの両方)、
開始と終了の間のディレクティブが処理されます。
後者の場合は逆で、<var>module</var> が組み込まれて<strong>いない</strong>
場合に処理されます。</p>
<p><var>module</var> 引数は、モジュール識別子か
コンパイルをした時のモジュールのファイル名です。
例えば、<code>rewrite_module</code> は識別子で
<code>mod_rewrite.c</code> はファイル名です。
モジュールが複数のソースファイルから構成されている場合は、文字列
<code>STANDARD20_MODULE_STUFF</code> があるファイルの名前を
使ってください。</p>
<p><code class="directive"><IfModule></code> セクションは
入れ子にすることが可能であり、
複数のモジュールのテストを行なうために使用できます。</p>
<div class="note">特定のモジュールの存在に関わらず動作する
設定ファイルの原本が必要なときにのみこのセクションを使用してください。
通常の動作では、ディレクティブを
<code class="directive"><IfModule></code> セクションの中に
入れる必要はありません。</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="Include" id="Include">Include</a> <a name="include" id="include">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバ設定ファイル中から他の設定ファイルを取り込む</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>Include <var>file-path</var>|<var>directory-path</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>ワイルドカードによるマッチは 2.0.41 以降で使用可能</td></tr>
</table>
<p>このディレクティブにより、サーバの設定ファイルから
他の設定ファイルをインクルードすることができます。</p>
<p>複数のファイルをアルファベット順に一度に読み込むために、
シェル形式 (<code>fnmatch</code>) のワイルドカード文字を使うことができます。
さらに、<code class="directive">Include</code> にディレクトリを指定した場合は、
ディレクトリとそのサブディレクトリ内の全てのファイルを
アルファベット順に読み込んで、設定ファイルとして処理します。
しかし、ディレクトリ全体を読み込むのはお勧めできません。
ふとしたことから <code>httpd</code> が読み込みに失敗するような
一時ファイルをディレクトリに残してしまうようなことがよくあるからです。</p>
<p>指定するファイルパスは絶対パスか、
<code class="directive"><a href="#serverroot">ServerRoot</a></code> ディレクトリからの
相対パスか、のどちらかです。</p>
<p>例:</p>
<div class="example"><p><code>
Include /usr/local/apache2/conf/ssl.conf<br />
Include /usr/local/apache2/conf/vhosts/*.conf
</code></p></div>
<p><code class="directive"><a href="#serverroot">ServerRoot</a></code> からの相対パスの場合は:</p>
<div class="example"><p><code>
Include conf/ssl.conf<br />
Include conf/vhosts/*.conf
</code></p></div>
<p><code>apachectl configtest</code> を実行すると、設定をチェックしている時に
読み込まれたファイルのリストが表示されます:</p>
<div class="example"><p><code>
root@host# apachectl configtest<br />
Processing config file: /usr/local/apache2/conf/ssl.conf<br />
Processing config file: /usr/local/apache2/conf/vhosts/vhost1.conf<br />
Processing config file: /usr/local/apache2/conf/vhosts/vhost2.conf<br />
Syntax OK
</code></p></div>
<h3>参照</h3>
<ul>
<li><code class="program"><a href="../programs/apachectl.html">apachectl</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="KeepAlive" id="KeepAlive">KeepAlive</a> <a name="keepalive" id="keepalive">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>HTTP の持続的な接続を有効にする</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>KeepAlive On|Off</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>KeepAlive On</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>HTTP/1.0 の Keep-Alive 拡張と HTTP/1.1 の持続的接続の機能は、
複数のリクエストが同じ TCP の接続で送られる、長時間持続する
HTTP セッションを提供します。たくさんの画像が
含まれる HTML ドキュメントでは場合によっては遅延時間が 50% 短縮される結果も
でています。Keep-Alive 接続を有効にするには
<code>KeepAlive On</code> と設定します。</p>
<p>HTTP/1.0 に対応したクライアントの際には、
クライアントより特に要求があった場合のみ Keep-Alive 接続となります。
さらに、HTTP/1.0 クライアントでは、コンテンツの容量が先に
(訳注: 要求に対して応答を返す前に) わかる場合のみ Keep-Alive
接続を利用できます。
これは、CGI の出力や SSI のページ、
サーバが生成したディレクトリのリストのような動的コンテンツを
HTTP/1.0 クライアントに送る場合には Keep-Alive 接続を使えないことを意味します。
HTTP/1.1 に対応したクライアントの際には、
特に指定されない限りはデフォルトとして持続的な接続が行なわれます。
クライアントが要求すれば、コンテンツの容量を判別できないものを
持続的な接続を通して送るために、チャンクエンコーディングが用いられます。</p>
<h3>参照</h3>
<ul>
<li><code class="directive"><a href="#maxkeepaliverequests">MaxKeepAliveRequests</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="KeepAliveTimeout" id="KeepAliveTimeout">KeepAliveTimeout</a> <a name="keepalivetimeout" id="keepalivetimeout">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>持続的な接続で次のリクエストが来るまでサーバが待つ時間</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>KeepAliveTimeout <var>seconds</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>KeepAliveTimeout 5</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>接続を閉じる前に、Apache が次のリクエストを何秒待つかを指定します。
リクエストを受け付けた後は、<code class="directive"><a href="#timeout">Timeout</a></code> ディレクティブによって
指定されたタイムアウト値が使われます。</p>
<p><code class="directive">KeepAliveTimeout</code> を大きな値に設定すると、
負荷の高いサーバにおいてはパフォーマンスの問題を引き起こす場合があります。
タイムアウトが長ければ長いほど、より多くのサーバプロセスが
活発でないクライアントからの接続の終了を待ち続けることになります。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="Limit" id="Limit"><Limit></a> <a name="limit" id="limit">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>囲いの中にあるアクセス制御の適用を特定の HTTP メソッドのみに
制限する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code><Limit <var>method</var> [<var>method</var>] ... > ...
</Limit></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>アクセス制御は、通常<strong>全ての</strong>アクセスメソッドに対して
影響し、普通はこれが望ましい挙動です。
<strong>そうしたことから、大部分の場合にはアクセス制御に関わるディレクティブを
<code class="directive"><Limit></code> セクション内に
書くべきではありません。 </strong></p>
<p><code class="directive"><Limit></code> ディレクティブの
目的は、アクセス制御の範囲を
指定された HTTP メソッドに限定するためです。
それ以外のメソッドは、<code class="directive"><Limit></code> で囲われたアクセス制御の
<strong>影響を受けません</strong>。
以下の例は、<code>POST</code>, <code>PUT</code>, <code>DELETE</code> のメソッドに対してのみアクセスの制御を行ない、
それ以外のメソッドについては制限しません:</p>
<div class="example"><p><code>
<Limit POST PUT DELETE><br />
<span class="indent">
Require valid-user<br />
</span>
</Limit>
</code></p></div>
<p>メソッド名には以下の中から一つ以上を列挙することができます:
<code>GET</code>,
<code>POST</code>, <code>PUT</code>, <code>DELETE</code>,
<code>CONNECT</code>, <code>OPTIONS</code>,
<code>PATCH</code>, <code>PROPFIND</code>, <code>PROPPATCH</code>,
<code>MKCOL</code>, <code>COPY</code>, <code>MOVE</code>,
<code>LOCK</code>, <code>UNLOCK</code>. <strong>メソッド名は
大文字小文字を区別します。</strong> <code>GET</code> を指定した場合には
<code>HEAD</code> リクエストにも制限がかかります。<code>TRACE</code>
メソッドに制限をかけることはできません。</p>
<div class="warning">アクセス制御が目的の場合は
<code class="directive"><a href="#limit"><Limit></a></code>
セクションの代わりに <code class="directive"><a href="#limitexcept"><LimitExcept></a></code> セクションを使用した方が良いでしょう。
<code class="directive"><a href="#limitexcept"><LimitExcept></a></code>
セクションでは不特定のメソッドに対しても防御できるからです。</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="LimitExcept" id="LimitExcept"><LimitExcept></a> <a name="limitexcept" id="limitexcept">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>指定されたもの以外の HTTP メソッドにアクセス制御を
制限する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code><LimitExcept <var>method</var> [<var>method</var>] ... > ...
</LimitExcept></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive"><LimitExcept></code> と
<code></LimitExcept></code> は、引数に
<strong>含まれていない</strong>
HTTP のアクセスメソッドに適用するためのアクセス制御
ディレクティブを括るために利用します。
つまり、<code class="directive"><a href="#limit"><Limit></a></code> セクションの反対の動作をし、
標準のメソッドと標準外や未認識のメソッドの場合の両方を設定できます。
<code class="directive"><a href="#limit"><Limit></a></code> のドキュメントも
併せて参照してください。</p>
<p>例:</p>
<div class="example"><p><code>
<LimitExcept POST GET><br />
<span class="indent">
Require valid-user<br />
</span>
</LimitExcept>
</code></p></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="LimitInternalRecursion" id="LimitInternalRecursion">LimitInternalRecursion</a> <a name="limitinternalrecursion" id="limitinternalrecursion">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>内部リダイレクトと入れ子になったサブリクエストの最大数を決定する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>LimitInternalRecursion <var>number</var> [<var>number</var>]</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>LimitInternalRecursion 10</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 2.0.47 以降で使用可能</td></tr>
</table>
<p>内部リダイレクトは例えば <code class="directive">Action</code> ディレクティブを
使っているときに起こります。<code class="directive">Action</code> ディレクティブは
元々のリクエストを CGI スクリプトに内部リダイレクトを行ないます。
サブリクエストはいくつかの URI に対して、リクエストされたときに
何が起こるかを調べるための Apache の機構です。例えば、<code class="module"><a href="../mod/mod_dir.html">mod_dir</a></code>
は <code class="directive"><a href="../mod/mod_dir.html#directoryindex">DirectoryIndex</a></code> ディレクティブ
がリストするファイルを調べるためにサブリクエストを使います。</p>
<p><code class="directive">LimitInternalRecursion</code> は内部リダイレクトや
サブリクエストが無限ループに陥ったときのサーバクラッシュを防ぎます。
普通、そのようなループは設定に失敗したときに発生します。</p>
<p>このディレクティブは、リクエスト毎に評価される、二つの違う限界値を
設定します。最初の <var>number</var> は、起こり得る
内部リクエストの最大値を設定します。二つめの <var>number</var> は
サブリクエストが入れ子にできる深さを設定します。<var>number</var> を
一つだけ指定したときは、両方の限界値にその値が設定されます。</p>
<div class="example"><h3>例</h3><p><code>
LimitInternalRecursion 5
</code></p></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="LimitRequestBody" id="LimitRequestBody">LimitRequestBody</a> <a name="limitrequestbody" id="limitrequestbody">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>クライアントから送られる HTTP リクエストのボディの
総量を制限する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>LimitRequestBody <var>bytes</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>LimitRequestBody 0</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>このディレクティブは、リクエストボディに許されるバイト数、<var>bytes</var>
を 0 (無制限を意味します) から 2147483647 (2GB) までの数値で指定します。</p>
<p><code class="directive">LimitRequestBody</code> ディレクティブは、
ディレクティブが書かれたコンテキスト
(サーバ全体、ディレクトリ、ファイル、ロケーション) 内で
許容する HTTP リクエストメッセージボディのサイズに制限をかけることができます。
クライアントのリクエストがその制限値を越えていれば、
サーバはリクエストを処理せずにエラーを返します。
普通のリクエストメッセージボディのサイズは、リソースの種類や
許可されているメソッドによって大きく変わります。
CGI スクリプトは、よく情報を受信するために
メッセージボディを使います。
<code>PUT</code> メソッドの実装は、このディレクティブの値として
少なくともあるリソースに対してサーバが受け付けようとする
表現の大きさほどの値を必要とします。</p>
<p>このディレクティブは、
管理者にクライアントからの異常なリクエストを制御できるようにし、
何らかの形のサービス拒否攻撃 (訳注:DoS) を避けるのに有効です。</p>
<p>ある場所へのファイルアップロードを許可する場合に、
アップロードできるファイルのサイズを 100K に制限したければ、
以下のように指定します:</p>
<div class="example"><p><code>
LimitRequestBody 102400
</code></p></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="LimitRequestFields" id="LimitRequestFields">LimitRequestFields</a> <a name="limitrequestfields" id="limitrequestfields">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>クライアントからの HTTP リクエストのヘッダフィールドの数を
制限する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>LimitRequestFields <var>number</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>LimitRequestFields 100</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><var>number</var> には、0 (無制限を意味します) から 32767
までの整数を指定します。
デフォルト値は、定数 <code>DEFAULT_LIMIT_REQUEST_FIELDS</code>
によりコンパイル時に定義されます (配布時には 100 と指定されています)。</p>
<p><code class="directive">LimitRequestBody</code> ディレクティブは、
サーバ管理者が HTTP リクエスト中において許可するリクエストヘッダフィールド数を
指定します。
サーバはこの値には通常のクライアントからのリクエストに含まれるであろう
フィールドの数より大きな値が必要とします。
クライアントにより使われた要求ヘッダーフィールドの数が
20 を超えることはほとんどありませんが、
これは種々のクライアントの実装によって変わり、
詳細なコンテントネゴシエーションをするためのブラウザの設定までにも
影響されることがあります。
オプションの HTTP 拡張はリクエストヘッダフィールドを使って表される場合が
多くあります。</p>
<p>このディレクティブは、
管理者にクライアントからの異常なリクエストを制御できるようにし、
何らかの形のサービス拒否攻撃 (訳注:DoS) を避けるのに有効です。
リクエストのフィールドが多過ぎることを意味するエラー応答が
普通のクライアントに返されるような時はこの値を増やしてください。</p>
<p>例:</p>
<div class="example"><p><code>
LimitRequestFields 50
</code></p></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="LimitRequestFieldSize" id="LimitRequestFieldSize">LimitRequestFieldSize</a> <a name="limitrequestfieldsize" id="limitrequestfieldsize">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>クライアントからの HTTP リクエストのヘッダの
サイズを制限する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>LimitRequestFieldSize <var>bytes</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>LimitRequestFieldSize 8190</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>このディレクティブは、HTTP リクエストヘッダ一つで受付ける
バイト数 <var>bytes</var> を指定します。</p>
<p><code class="directive">LimitRequestFieldSize</code> ディレクティブは、
HTTP リクエストヘッダで許容されるサイズを増減させることができます。
サーバは、このディレクティブの値として、
一般的なクライアントからリクエストが送られた際に、そのリクエストに
付属しているどのヘッダフィールドについても、
十分足りる大きさになっていなければなりません。
一般的なリクエストヘッダのサイズといっても、その大きさは個々の
クライアントの実装によって大きく異なり、
詳細なコンテントネゴシエーションをサポートするかどうかの、
ブラウザの設定にも影響されたりします。
SPNEGO 認証ヘッダでは 12392 バイトにまで及ぶことすらあります。</p>
<p>このディレクティブは、
管理者にクライアントからの異常なリクエストを制御できるようにし、
何らかの形のサービス拒否攻撃 (訳注:DoS) を避けるのに有効です。</p>
<p>例:</p>
<div class="example"><p><code>
LimitRequestFieldSize 4094
</code></p></div>
<div class="note">通常はデフォルトから変更する必要はありません。</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="LimitRequestLine" id="LimitRequestLine">LimitRequestLine</a> <a name="limitrequestline" id="limitrequestline">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>クライアントからの HTTP リクエスト行のサイズを制限する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>LimitRequestLine <var>bytes</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>LimitRequestLine 8190</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>このディレクティブは、HTTP リクエスト行内で許容されるバイト数
<var>bytes</var> を指定します。</p>
<p><code class="directive">LimitRequestLine</code> ディレクティブにより、
クライアントからの HTTP リクエスト行の許容サイズを増減できます。
リクエスト行は、HTTPメソッド、URI、プロトコルバージョンから成っており、
<code class="directive">LimitRequestLine</code> はサーバへのリクエストに対して
許容するリクエスト URI の長さを制限することになります。
サーバは、<code>GET</code> リクエストのクエリ部分も含めて、リソースの名前が入るに足る
大きさを必要とします。</p>
<p>このディレクティブは、
管理者にクライアントからの異常なリクエストを制御できるようにし、
何らかの形のサービス拒否攻撃 (訳注:DoS) を避けるのに有効です。</p>
<p>例:</p>
<div class="example"><p><code>
LimitRequestLine 4094
</code></p></div>
<div class="note">通常はデフォルトから変更する必要はありません。</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="LimitXMLRequestBody" id="LimitXMLRequestBody">LimitXMLRequestBody</a> <a name="limitxmlrequestbody" id="limitxmlrequestbody">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>XML 形式のリクエストのボディのサイズを制限する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>LimitXMLRequestBody <var>bytes</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>LimitXMLRequestBody 1000000</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>XML 形式のリクエストのボディの最大値を (バイト単位で) 制限します。
値に <code>0</code> を指定するとチェックを無効にします。</p>
<p>例:</p>
<div class="example"><p><code>
LimitXMLRequestBody 0
</code></p></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="Location" id="Location"><Location></a> <a name="location" id="location">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>囲んだディレクティブをマッチする URL のみに適用</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code><Location
<var>URL-path</var>|<var>URL</var>> ... </Location></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive"><Location></code> ディレクティブは、
URL により中に書かれたディレクティブの適用範囲を制限します。
<code class="directive"><a href="#directory"><Directory></a></code>
ディレクティブと似ていて、
<code></Location></code> ディレクティブで終了する
サブセクションを開始します。
<code class="directive"><Location></code> セクションは、
<code class="directive"><a href="#directory"><Directory></a></code> セクションと
<code>.htaccess</code> の読み込みの後、
<code class="directive"><a href="#files"><Files></a></code> セクションを
適用した後に、設定ファイルに現れた順に処理されます。</p>
<p><code class="directive"><Location></code> セクションは
完全にファイルシステムと関連せずに動作します。このことから導かれる
結果にはいつくか注意する点があります。最も重要なものは、
ファイルシステムの位置へのアクセス制御に <code class="directive"><Location></code> ディレクティブを使うべきではない
ということです。複数の URL がファイルシステムの同じ位置にマップされる
可能がありますので、そのようなアクセス制御は回避されてしまう可能性が
あります。</p>
<div class="note"><h3>いつ <code class="directive"><Location></code> を使うか</h3>
<p><code class="directive"><Location></code> ディレクティブは
ファイルシステム外のコンテンツにディレクティブを適用するときに
使用してください。ファイルシステムに存在するコンテンツに対しては、
<code class="directive"><a href="#directory"><Directory></a></code> と <code class="directive"><a href="#files"><Files></a></code> を使ってください。
例外は、<code><Location /></code> で、これはサーバ全体に対して
設定を適用する簡単な方法です。</p>
</div>
<p>全ての (プロキシ以外の) リクエストに対し、
URL は <code>/path/</code> という、
接頭辞 <code>http://servername</code> を含まない形でマッチします。
プロキシリクエストの場合には、<code>scheme://servername/path</code>
という接頭辞を含む形でマッチし、接頭辞を含めて指定する必要があります。</p>
<p>URL にはワイルドカードを利用することができます。
<code>?</code> は任意の一文字、<code>*</code> は任意の文字列にマッチします。
どちらのワイルドカード文字も URL-path の / にはマッチしません。</p>
<p><code>~</code> という文字を追加することで、<a class="glossarylink" href="../glossary.html#regex" title="用語集を参照">正規表現</a>を
利用することもできます。
例えば:</p>
<div class="example"><p><code>
<Location ~ "/(extra|special)/data">
</code></p></div>
<p>は URL に <code>/extra/data</code> か <code>/special/data</code> という文字列が
含まれている場合にマッチします。
<code class="directive"><a href="#locationmatch"><LocationMatch></a></code> ディレクティブは
<code class="directive"><Location></code> の正規表現
版とまったく同じ動作をします。</p>
<p><code class="directive"><Location></code> 機能は、<code class="directive"><a href="#sethandler">SetHandler</a></code> ディレクティブと
組合わせて利用すると特に便利です。
例えば、<code>foo.com</code> のブラウザからのみステータスの参照を有効にしたければ、
次のようにすれば良いでしょう。</p>
<div class="example"><p><code>
<Location /status><br />
<span class="indent">
SetHandler server-status<br />
Order Deny,Allow<br />
Deny from all<br />
Allow from .foo.com<br />
</span>
</Location>
</code></p></div>
<div class="note"><h3>/ (スラッシュ) に関する注</h3>
<p>スラッシュ文字は、URL 内に現れる場所に応じて変化する
特別な意味を持っています。
ファイルシステムにおいて利用する場合には複数のスラッシュでも一つの
スラッシュとして扱われることが多いですが、
(<em>すなわち</em>、<code>/home///foo</code> は
<code>/home/foo</code> と同じいったように)
URL においては必ずしもそうなるわけではありません。
<code class="directive"><a href="#locationmatch"><LocationMatch></a></code>
ディレクティブや正規表現を利用した
<code class="directive"><Location></code> ディレクティブで、
複数のスラッシュにマッチさせたいときには、、明示的に記述する
必要があります。</p>
<p>例えば、<code><LocationMatch ^/abc></code> は、
<code>/abc</code> というリクエスト URL にマッチしますが、
<code>//abc</code> というリクエスト URL にはマッチしません。
(正規表現でない) <code class="directive"><Location></code>
ディレクティブは、
proxy リクエストに対して利用する際には同様の振る舞いをしますが、
(正規表現でない) <code class="directive"><Location></code> を proxy
でないリクエストに対して利用する際には、
一つのスラッシュで複数のスラッシュにマッチします。
例えば、<code><Location /abc/def></code> と指定し、
<code>/abc//def</code> というリクエストがあれば、
マッチすることになります。</p></div>
<h3>参照</h3>
<ul>
<li>リクエストを受けた際にこれらの異なるセクションが
組み合わされる方法については <a href="../sections.html">
<Directory>, <Location>, <Files> セクションの動作法</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="LocationMatch" id="LocationMatch"><LocationMatch></a> <a name="locationmatch" id="locationmatch">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>囲んだディレクティブを正規表現にマッチする URL のみに
適用</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code><LocationMatch
<var>regex</var>> ... </LocationMatch></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive"><LocationMatch></code> ディレクティブは、
<code class="directive"><a href="#location"><Location></a></code> と同じ様に
URL により中に書かれたディレクティブの適用範囲を制限します。
但し、引数は普通の文字列ではなく、<a class="glossarylink" href="../glossary.html#regex" title="用語集を参照">正規表現</a>となります。
例えば、</p>
<div class="example"><p><code>
<LocationMatch "/(extra|special)/data">
</code></p></div>
<p>は URL に <code>/extra/data</code> か <code>/special/data</code>
という文字列が含まれている場合にマッチします。</p>
<h3>参照</h3>
<ul>
<li>リクエストを受けた際にこれらの異なるセクションが
組み合わされる方法については <a href="../sections.html">
<Directory>, <Location>, <Files> セクションの動作法</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="LogLevel" id="LogLevel">LogLevel</a> <a name="loglevel" id="loglevel">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>ErrorLog の冗長性を制御する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>LogLevel <var>level</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>LogLevel warn</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive">LogLevel</code> は、エラーログ (<code class="directive"><a href="#errorlog">ErrorLog</a></code> ディレクティブを
見てください) へ記録するメッセージの冗長性を調整します。
以下の <var>level</var> を指定でき、順に重要度が下がっていきます。</p>
<table class="bordered">
<tr>
<th><strong>レベル</strong> </th>
<th><strong>説明</strong> </th>
<th><strong>例</strong> </th>
</tr>
<tr>
<td><code>emerg</code> </td>
<td>緊急 - システムが利用できない</td>
<td>Child cannot open lock file. Exiting
(子プロセスがロックファイルを開けないため終了した)</td>
</tr>
<tr>
<td><code>alert</code> </td>
<td>直ちに対処が必要</td>
<td>getpwuid: couldn't determine user name from uid
(getpwuid: UID からユーザ名を特定できなかった)</td>
</tr>
<tr>
<td><code>crit</code> </td>
<td>致命的な状態</td>
<td>socket: Failed to get a socket, exiting child
(socket: ソケットが得られないため、子プロセスを終了させた)</td>
</tr>
<tr>
<td><code>error</code> </td>
<td>エラー</td>
<td>Premature end of script headers
(スクリプトのヘッダが足りないままで終わった)</td>
</tr>
<tr>
<td><code>warn</code> </td>
<td>警告</td>
<td>child process 1234 did not exit, sending another SIGHUP
(子プロセス 1234 が終了しなかった。もう一度 SIGHUP を送る)</td>
</tr>
<tr>
<td><code>notice</code> </td>
<td>普通だが、重要な情報</td>
<td>httpd: caught SIGBUS, attempting to dump core in ...
(httpd: SIGBUS シグナルを受け、... へコアダンプをした)</td>
</tr>
<tr>
<td><code>info</code> </td>
<td>追加情報</td>
<td>"Server seems busy, (you may need to increase
StartServers, or Min/MaxSpareServers)..." (「サーバは負荷が高い、
(StartServers や Min/MaxSpareServers の値を増やす必要があるかも)」)</td>
</tr>
<tr>
<td><code>debug</code> </td>
<td>デバッグメッセージ</td>
<td>"Opening config file ..." (設定ファイルを開いている...)</td>
</tr>
</table>
<p>特定のレベルが指定された場合、それより高いレベルの全てのメッセージが
報告されます。
<em>例えば</em>、<code>LogLevel info</code> に指定すると、
<code>notice</code> と <code>warn</code> も報告されます。</p>
<p>なお <code>crit</code> 以上のレベルを指定することが推奨されます。</p>
<p>例:</p>
<div class="example"><p><code>
LogLevel notice
</code></p></div>
<div class="note"><h3>注</h3>
<p>ファイルにログを出力する場合、<code>notice</code>
レベルのメッセージは抑制されず、すべてログに出力されます。
しかし <code>syslog</code> を使用している場合は、
これは当てはまりません。</p>
</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="MaxKeepAliveRequests" id="MaxKeepAliveRequests">MaxKeepAliveRequests</a> <a name="maxkeepaliverequests" id="maxkeepaliverequests">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>持続的な接続上で許可されるリクエストの数</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>MaxKeepAliveRequests <var>number</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>MaxKeepAliveRequests 100</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive">MaxKeepAliveRequests</code> ディレクティブは、
<code class="directive"><a href="#keepalive">KeepAlive</a></code> が有効な場合に、
一回の接続で受け付け可能なリクエストの数を制限します。
<code>0</code> に設定していれば、受け付けるリクエストは無制限になります。
この設定は、サーバ性能を向上させるために、大きな数値を指定すること勧めます。
</p>
<p>例:</p>
<div class="example"><p><code>
MaxKeepAliveRequests 500
</code></p></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="NameVirtualHost" id="NameVirtualHost">NameVirtualHost</a> <a name="namevirtualhost" id="namevirtualhost">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>名前ベースのバーチャルホストのための IP アドレスを指定</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>NameVirtualHost <var>addr</var>[:<var>port</var>]</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive">NameVirtualHost</code> ディレクティブは、
<a href="../vhosts/">名前ベースのバーチャルホスト</a>の設定を行ないたい場合に
必要となるものです。</p>
<p><var>addr</var> にはホスト名を指定できますが、
常に IP アドレスを指定するのが推奨されます。
例えば、</p>
<div class="example"><p><code>
NameVirtualHost 111.22.33.44
</code></p></div>
<p><code class="directive">NameVirtualHost</code> ディレクティブは、
名前ベースのバーチャルホストを
利用してリクエストを受け付ける IP アドレスを指定します。
これは、普通は名前ベースのバーチャルホストアドレスです。
ただし、ファイアーウォールや他のプロキシがリクエストを受け付け、
違う IP アドレスのサーバにフォワードするという場合は、
リクエストを提供したいマシン上の物理インターフェースの
IP アドレスを指定する必要があります。
複数のアドレスで複数の名前ベースのバーチャルホストを指定する場合は
各アドレスに対してディレクティブを書いてください。</p>
<div class="note"><h3>中</h3>
<p>「主サーバ」や、どの <code>_default_</code> サーバも、
<code class="directive">NameVirtualHost</code> で指定した IP アドレスへのリクエスト
を処理することは<strong>ありません</strong> (なぜか
<code class="directive">NameVirtualHost</code> を
指定したけどそのアドレスに <code class="directive">VirtualHost</code> を定義しなかった場合を除く)。</p>
</div>
<p>名前ベースのバーチャルホストにポート番号を指定することも可能です。
例えば</p>
<div class="example"><p><code>
NameVirtualHost 111.22.33.44:8080
</code></p></div>
<p>IPV6 のアドレスは次の例のように角括弧で囲む必要があります:</p>
<div class="example"><p><code>
NameVirtualHost [2001:db8::a00:20ff:fea7:ccea]:8080
</code></p></div>
<p>すべてのインタフェースへのリクエストを受け取るようにするためには、
引数として <code>*</code> を使います。</p>
<div class="example"><p><code>
NameVirtualHost *
</code></p></div>
<div class="note"><h3><code class="directive"><VirtualHost></code> ディレクティブの引数</h3>
<p><code class="directive"><VirtualHost></code> ディレクティブの引数は <code class="directive">NameVirtualHost</code> ディレクティブの引数に正確に
合っている必要があることに注意してください。</p>
<div class="example"><p><code>
NameVirtualHost 1.2.3.4<br />
<VirtualHost 1.2.3.4><br />
# ...<br />
</VirtualHost><br />
</code></p></div>
</div>
<h3>参照</h3>
<ul>
<li><a href="../vhosts/">バーチャルホスト説明書
</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="Options" id="Options">Options</a> <a name="options" id="options">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>ディレクトリに対して使用可能な機能を設定する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>Options
[+|-]<var>option</var> [[+|-]<var>option</var>] ...</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>Options All</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>Options</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive">Options</code> ディレクティブは、特定のディレクトリに対して
どの機能が使用可能かを制御します。</p>
<p><var>option</var> を <code>None</code>に指定すると、
特別な機能は全て無効になります。
また、以下の示す 1 個以上のものを指定できます。</p>
<dl>
<dt><code>All</code></dt>
<dd><code>MultiViews</code> を除いた全ての機能が有効となります。
これがデフォルトです。</dd>
<dt><code>ExecCGI</code></dt>
<dd>
<code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code> による CGI スクリプトの実行を許可します。</dd>
<dt><code>FollowSymLinks</code></dt>
<dd>
サーバが、このディレクトリ内でシンボリックリンクをたどれるようにします。
<div class="note"><p>サーバがシンボリックリンクをたどる場合でも、
<code class="directive"><a href="#directory"><Directory></a></code> セクションに
マッチさせるための
パス名は<em>変更されません</em>。</p>
<p><code class="directive"><a href="#location"><Location></a></code> 内に
このオプションを指定しても<strong>無視される</strong>ことに
注意してください。</p>
<p>このオプションを省略したからといってセキュリティの強化にはなりません。
なぜなら symlink の検査はレースコンディションを引き起こす可能性があり、
そのため回避可能になるからです。</p>
</div></dd>
<dt><code>Includes</code></dt>
<dd>
<code class="module"><a href="../mod/mod_include.html">mod_include</a></code> が提供する SSI を有効にします。</dd>
<dt><code>IncludesNOEXEC</code></dt>
<dd>
SSI は有効になりますが、<code>#exec</code> コマンド と <code>#exec CGI</code> は無効になります。
ただし、<code>#include virtual</code> により、<code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code> されたディレクトリで
CGI を実行することは可能です。</dd>
<dt><code>Indexes</code></dt>
<dd>
もし、URL がディレクトリにマップするリクエストであって、
且つ <code class="directive"><a href="../mod/mod_dir.html#directoryindex">DirectoryIndex</a></code> で指定したファイル (例えば、<code>index.html</code>) が
ディレクトリ内に無ければ、<code class="module"><a href="../mod/mod_autoindex.html">mod_autoindex</a></code> が
ディレクトリ内の一覧を整形して返します。</dd>
<dt><code>MultiViews</code></dt>
<dd>
<code class="module"><a href="../mod/mod_negotiation.html">mod_negotiation</a></code> による
<a href="../content-negotiation.html">コンテントネゴシエーション</a>
された "MultiViews" を許可します。</dd>
<dt><code>SymLinksIfOwnerMatch</code></dt>
<dd>
シンボリック先のファイルまたはディレクトリが、
シンボリックリンクの所有ユーザ ID と同じ場合にのみシンボリックリンクを
たどれるようにします。
<div class="note"><h3>注</h3> <p><code class="directive"><a href="#location"><Location></a></code> 内にこのオプションを
指定しても無視されます。</p>
<p>このオプションはセキュリティの強化にはなりません。
なぜなら symlink の検査はレースコンディションを引き起こす可能性があり、
そのため回避可能になるからです。</p>
</div>
</dd>
</dl>
<p>通常、ディレクトリに対して複数の <code class="directive">Options</code> が
適用可能な場合、
最も近いもの一つのみが適用され、他のものは無視されます。
複数の指定がマージされるわけではありません。(<a href="../sections.html#mergin">セクションのマージ方法</a>を参照してください。)
しかし、すべての <code class="directive">Options</code> ディレクティブが <code>+</code> や <code>-</code> 付きで
指定された場合はオプションの値はマージされます。
<code>+</code> を頭につければ現在の設定に加えられ、
<code>-</code> を付ければ現在の設定から削除されます。</p>
<div class="warning"><h3>警告</h3>
<p><code class="directive">Options</code> で指定する際に、
<code>+</code> や <code>-</code> のついたものと、ついていないものを
混ぜて指定する記述は誤った構文で、予期しない結果になるかもしれません。
</p>
</div>
<p>例えば、<code>+</code> や <code>-</code> を利用しない場合は:</p>
<div class="example"><p><code>
<Directory /web/docs><br />
<span class="indent">
Options Indexes FollowSymLinks<br />
</span>
</Directory><br />
<br />
<Directory /web/docs/spec><br />
<span class="indent">
Options Includes<br />
</span>
</Directory>
</code></p></div>
<p><code>/web/docs/spec</code> というディレクトリには、
<code>Includes</code> だけが適用されます。
しかし、2 番目の <code class="directive">Options</code> で <code>+</code> や <code>-</code> を利用してみると:</p>
<div class="example"><p><code>
<Directory /web/docs><br />
<span class="indent">
Options Indexes FollowSymLinks<br />
</span>
</Directory><br />
<br />
<Directory /web/docs/spec><br />
<span class="indent">
Options +Includes -Indexes<br />
</span>
</Directory>
</code></p></div>
<p><code>/web/docs/spec</code> というディレクトリには、 <code>FollowSymLinks</code> と
<code>Includes</code> が適用されます。</p>
<div class="note"><h3>注</h3>
<p><code>-IncludesNOEXEC</code> もしくは
<code>-Includes</code> を指定すると、
前の設定がどのようになっていようとも SSI は無効となります。</p>
</div>
<p>どのような設定もされていなければ、デフォルトでは <code>All</code> に
なります。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="Protocol" id="Protocol">Protocol</a> <a name="protocol" id="protocol">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>Protocol for a listening socket</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>Protocol <var>protocol</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Available in Apache 2.1.5 and later.
On Windows from Apache 2.3.3 and later.</td></tr>
</table><p>The documentation for this directive has
not been translated yet. Please have a look at the English
version.</p><h3>参照</h3>
<ul>
<li><code class="directive">AcceptFilter</code></li>
<li><code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="Require" id="Require">Require</a> <a name="require" id="require">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>どの認証済みユーザがリソースをアクセスできるかを選択する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>Require <var>entity-name</var> [<var>entity-name</var>] ...</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>AuthConfig</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>このディレクティブは、認証されたユーザがリソースに対して
アクセスできるかを制御します。
制限条件は承認モジュールで処理されます。
<code class="module"><a href="../mod/mod_authz_user.html">mod_authz_user</a></code> と <code class="module"><a href="../mod/mod_authz_groupfile.html">mod_authz_groupfile</a></code>
で提供されている構文には、次のようなものもあります:</p>
<dl>
<dt><code>Require user <var>userid</var> [<var>userid</var>] ...</code></dt>
<dd>指定されたユーザのみ、ディレクトリへのアクセスを許可します。</dd>
<dt><code>Require group <var>group-name</var> [<var>group-name</var>] ...</code></dt>
<dd>指定されたグループに属するユーザのみ、ディレクトリへのアクセスを許可します。</dd>
<dt><code>Require valid-user</code></dt>
<dd>全ての認証されたユーザに、ディレクトリへのアクセスを許可します。</dd>
</dl>
<p>require オプションを実装している他の承認モジュールには、
<code class="module"><a href="../mod/mod_authnz_ldap.html">mod_authnz_ldap</a></code>,
<code class="module"><a href="../mod/mod_authz_dbm.html">mod_authz_dbm</a></code>,
<code class="module"><a href="../mod/mod_authz_owner.html">mod_authz_owner</a></code> といったものがあります。</p>
<p><code class="directive">Require</code> は、正しく動作するためには <code class="directive"><a href="#authname">AuthName</a></code> 及び <code class="directive"><a href="#authtype">AuthType</a></code> ディレクティブや、
(ユーザとグループを指定するために) <code class="directive"><a href="../mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code> 及び <code class="directive"><a href="../mod/mod_authz_groupfile.html#authgroupfile">AuthGroupFile</a></code>
といったディレクティブと共に
指定する必要があります。
例えば:</p>
<div class="example"><p><code>
AuthType Basic<br />
AuthName "Restricted Resource"<br />
AuthUserFile /web/users<br />
AuthGroupFile /web/groups<br />
Require group admin
</code></p></div>
<p>このようにして適用されたアクセス制御は、<strong>全ての</strong>メソッドに
対して行なわれます。
<strong>通常は、これが望ましい動作です。</strong>
もし、特定のメソッドに対してのみアクセスの制御を適用し、
他のメソッドは制限しない場合には、<code class="directive"><a href="#limit"><Limit></a></code> セクション内に
<code class="directive">Require</code> を
指定してください。</p>
<p><code class="directive">Require</code> を <code class="directive"><a href="../mod/mod_authz_host.html#allow">Allow</a></code> ディレクティブや <code class="directive"><a href="../mod/mod_authz_host.html#deny">Deny</a></code> ディレクティブと
組み合わせて使った場合、これらの制約の相互作用は <code class="directive"><a href="#satisfy">Satisfy</a></code> ディレクティブで制御されます。
</p>
<div class="note"><h3>サブディレクトリで制御を解除する方法</h3>
<p><code class="directive"><a href="#satisfy">Satisfy</a></code> ディレクティブ
で、保護されたディレクトリのサブディレクトリ内でアクセス制御を
無効にする例は、下のようになります。
<code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code> によるアクセス制御も無効化されるので、
このテクニックは注意してご活用ください。</p>
<div class="example"><p><code>
<Directory /path/to/protected/><br />
<span class="indent">
Require user david<br />
</span>
</Directory><br />
<Directory /path/to/protected/unprotected><br />
<span class="indent">
# All access controls and authentication are disabled<br />
# in this directory<br />
Satisfy Any<br />
Allow from all<br />
</span>
</Directory><br />
</code></p></div>
</div>
<h3>参照</h3>
<ul>
<li><a href="../howto/auth.html">認証・承認・アクセス制御</a></li>
<li><code class="directive"><a href="#satisfy">Satisfy</a></code></li>
<li><code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="RLimitCPU" id="RLimitCPU">RLimitCPU</a> <a name="rlimitcpu" id="rlimitcpu">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>Apache の子プロセスから起動されたプロセスの CPU 消費量を
制限する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>RLimitCPU <var>seconds</var>|max [<var>seconds</var>|max]</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>未設定。オペレーティングシステムのデフォルトを使用</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>一つか二つのパラメータをとります。
最初のパラメータは全プロセスに対するリソースのソフトリミットを設定し、
2 番目のパラメータは最大のリソースリミットを設定します。
パラメータには数字か、オペレーティングシステムの最大となる
<code>max</code> のどちらかを指定することができます。
最大のリソースリミットを上げるためには、サーバを
<code>root</code> で実行するか起動されなければいけません。</p>
<p>ちなみに、この設定は Apache の子プロセス自体ではなく、
リクエストを受け付けた Apache の子プロセスから fork されたプロセスに
適用されます。
これには CGI や SSI から実行されたコマンドが含まれますが、Apache の
親プロセスから fork されたログのパイププロセスなどには適用されません。</p>
<p>CPU リソースのリミットはプロセスあたりの秒数で表わされます。</p>
<h3>参照</h3>
<ul>
<li><code class="directive"><a href="#rlimitmem">RLimitMEM</a></code></li>
<li><code class="directive"><a href="#rlimitnproc">RLimitNPROC</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="RLimitMEM" id="RLimitMEM">RLimitMEM</a> <a name="rlimitmem" id="rlimitmem">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>Apache の子プロセスから起動されたプロセスのメモリ消費量を
制限する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>RLimitMEM <var>bytes</var>|max [<var>bytes</var>|max]</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>未設定。オペレーティングシステムのデフォルトを使用</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>一つか二つのパラメータをとります。
最初のパラメータは全プロセスに対するリソースのソフトリミットを設定し、
2 番目のパラメータは最大のリソースリミットを設定します。
パラメータには数字か、オペレーティングシステムの最大となる
<code>max</code> のどちらかを指定することができます。
最大のリソースリミットを上げるためには、サーバを
<code>root</code> で実行するか起動されなければいけません。</p>
<p>この設定は Apache の子プロセス自体ではなく、
リクエストを受け付けた Apache の子プロセスから fork されたプロセスに
適用されます。
これには CGI や SSI から実行されたコマンドが含まれますが、Apache の
親プロセスから fork されたログのパイププロセスなどには適用されません。</p>
<p>メモリリソースのリミットはプロセスあたりのバイト数で表わされます。</p>
<h3>参照</h3>
<ul>
<li><code class="directive"><a href="#rlimitcpu">RLimitCPU</a></code></li>
<li><code class="directive"><a href="#rlimitnproc">RLimitNPROC</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="RLimitNPROC" id="RLimitNPROC">RLimitNPROC</a> <a name="rlimitnproc" id="rlimitnproc">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>Apache の子プロセスから起動されたプロセスが起動するプロセスの
数を制限する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>RLimitNPROC <var>number</var>|max [<var>number</var>|max]</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>未設定。オペレーティングシステムのデフォルトを使用</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>一つか二つのパラメータをとります。
最初のパラメータは全プロセスに対するリソースのソフトリミットを設定し、
2 番目のパラメータは最大のリソースリミットを設定します。
パラメータには数字か、オペレーティングシステムの最大となる
<code>max</code> のどちらかを指定することができます。
最大のリソースリミットを上げるためには、サーバを
<code>root</code> で実行するか起動されなければいけません。</p>
<p>この設定は Apache の子プロセス自体ではなく、
リクエストを受け付けた Apache の子プロセスから fork されたプロセスに
適用されます。
これには CGI や SSI から実行されたコマンドが含まれますが、Apache の
親プロセスから fork されたログのパイププロセスなどには適用されません。</p>
<p>プロセスの制限は、ユーザあたりのプロセス数で制御されます。</p>
<div class="note"><h3>注</h3>
<p> CGI プロセスがウェブサーバのユーザ ID 以外で実行されるので
<strong>無ければ</strong>、
このディレクティブは、サーバ自身が生成できるプロセスの数を制限することになります。
そのような状況になっているかどうかは、<code>error_log</code> 中の
<strong><code>cannot fork</code></strong> というメッセージにより
確認することができます。</p>
</div>
<h3>参照</h3>
<ul>
<li><code class="directive"><a href="#rlimitmem">RLimitMEM</a></code></li>
<li><code class="directive"><a href="#rlimitcpu">RLimitCPU</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="Satisfy" id="Satisfy">Satisfy</a> <a name="satisfy" id="satisfy">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>ホストレベルのアクセス制御とユーザ認証との相互作用を指定</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>Satisfy Any|All</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>Satisfy All</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>AuthConfig</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>バージョン 2.0.51 以降では <code class="directive"><a href="#limit"><Limit></a></code> ディレクティブと <code class="directive"><a href="#limitexcept"><LimitExcept></a></code> ディレクティブの影響を受ける
</td></tr>
</table>
<p><code class="directive"><a href="../mod/mod_authz_host.html#allow">Allow</a></code> と
<code class="directive"><a href="#require">Require</a></code> の両方が使われているときの
アクセスポリシーを設定します。パラメータは <code>All</code> か <code>Any</code>
です。このディレクティブはある場所へのアクセスがユーザ名/パスワード
<em>と</em>クライアントのホストのアドレスで制限されているときにのみ
役立ちます。デフォルトの動作 (<code>All</code>) はクライアントがアドレスによる
アクセス制限を満たし、<em>かつ</em>正しいユーザ名とパスワードを入力することを
要求します。<code>Any</code> では、クライアントはホストの制限を満たすか、
正しいユーザ名とパスワードの入力をするかをすればアクセスを許可されます。
これは、ある場所をパスワードで保護するけれど、特定のアドレスからの
クライアントにはパスワードの入力を要求せずにアクセスを許可する、
というようなときに使用できます。</p>
<p>例えば、同じネットワーク上にいる人にはウェブサイトのある部分について
無制限のアクセスを許したいけれど、外のネットワークの人には
パスワードを提供させるようにするためには、次のような設定をすることが
できます:</p>
<div class="example"><p><code>
Require valid-user<br />
Order allow,deny<br />
Allow from 192.168.1<br />
Satisfy Any
</code></p></div>
<p>バージョン 2.0.51 からは
<code class="directive"><a href="#limit"><Limit></a></code> セクションと
<code class="directive"><a href="#limitexcept"><LimitExcept></a></code> セクションを使用することで
<code class="directive">Satisfy</code> ディレクティブが
適用されるメソッドを制限することが
できるようになりました。</p>
<h3>参照</h3>
<ul>
<li><code class="directive"><a href="../mod/mod_authz_host.html#allow">Allow</a></code></li>
<li><code class="directive"><a href="#require">Require</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ScriptInterpreterSource" id="ScriptInterpreterSource">ScriptInterpreterSource</a> <a name="scriptinterpretersource" id="scriptinterpretersource">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>CGI スクリプトのインタープリタの位置を調べるための手法</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ScriptInterpreterSource Registry|Registry-Strict|Script</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>ScriptInterpreterSource Script</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Win32 のみ。
オプション <code>Registry-Strict</code> は Apache 2.0 以降で使用可能</td></tr>
</table>
<p>このディレクティブは、Apache で CGI スクリプトを
実行する場合に利用するインタープリタを、
どのように探し出すかについて制御するために使用します。
デフォルトの設定は <code>Script</code> です。これはスクリプトの
shebang 行 (最初の行で <code>#!</code> から始まるもの)
に指されているインタープリタを使用します。Win32 ではその行は
以下の様になります。</p>
<div class="example"><p><code>
#!C:/Perl/bin/perl.exe
</code></p></div>
<p>もしくは、<code>perl</code> が <code>PATH</code> にある場合は単に:</p>
<div class="example"><p><code>
#!perl
</code></p></div>
<p><code>ScriptInterpreterSource Registry</code> を指定すると、
スクリプトファイルの拡張子 (例えば、<code>.pl</code>) を
キーとして、Windows のレジストリツリー <code>HKEY_CLASSES_ROOT</code>
を検索するようになります。レジストリのサブキー
<code>Shell\ExecCGI\Command</code> か、それが存在しない場合は
<code>Shell\Open\Command</code> がスクリプトファイルを開くために
使われます。レジストリキーが見つからないときは、Apache は <code>Script</code>
オプションが指定されたときの動作に戻ります。</p>
<p>たとえば、レジストリの設定で .pl 拡張子が perl に関連付けられている:</p>
<div class="example"><p><code><code>HKEY_CLASSES_ROOT\.pl\Shell\ExecCGI\Command\(Default) => C:\Perl\bin\perl.exe -wT</code></code></p></div>
<div class="warning"><h3>セキュリティ</h3>
<p><code>ScriptInterpreterSource Registry</code> を <code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code> されたディレクトリで使うときは
注意してください。Apache はそのディレクトリ中の<em>すべての</em>ファイルを
実行しようとします。<code>Registry</code> という設定は通常は実行されない
ファイルに対して望ましくないプログラムの実行が発生する可能性があります。
例えば、ほとんどの Windows システムで、
<code>.htm</code> ファイルのデフォルトの「開く」コマンドは
Microsoft Internet Explorer を実行しますので、スクリプトに指定された
ディレクトリにある <code>.htm</code> ファイルへのリクエストはサーバの
バックグラウンドでブラウザを実行することになります。これは、一分内くらいで
システムをクラッシュさるための良い方法です。</p>
</div>
<p>Apache 2.0 から導入されたオプション <code>Registry-Strict</code> は
<code>Registry</code> と同じことを行ないますが、サブキー
<code>Shell\ExecCGI\Command</code> のみを使います。
<code>ExecCGI</code> キーは普通に使われるキーではありません。Windows
レジストリに手動で設定する必要がありますので、システムでの偶発的なプログラムの
実行を防ぐことができます。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ServerAdmin" id="ServerAdmin">ServerAdmin</a> <a name="serveradmin" id="serveradmin">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバがクライアントに送るエラーメッセージに含める電子メールの
アドレス</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ServerAdmin <var>email-address</var>|<var>URL</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive">ServerAdmin</code> は、クライアントに返すさまざまな
エラーメッセージ中に記述する、
問合せアドレスを設定します。与えられた引数を <code>httpd</code> が
URL と認識しない場合は、<var>email-address</var> だと解釈して、
ハイパーリンクのターゲットに <code>mailto:</code> を付けます。
実際には、ここには電子メールアドレスを使うことが推奨されています。
多くの CGI スクリプトはそうなっていることを仮定しています。
URL を使う場合は、あなたの管理下にある別サーバを指すようにしてください。
そうでないと、エラーが起こったときに連絡をすることができなくなって
しまいます。
</p>
<p>その際、これのために専用のアドレスを設定するのが良いでしょう。
例えば、</p>
<div class="example"><p><code>
ServerAdmin www-admin@foo.example.com
</code></p></div>
<p>といったようにします。ユーザはいつもサーバに関する話であるということを
明記してくるわけではありませんので。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ServerAlias" id="ServerAlias">ServerAlias</a> <a name="serveralias" id="serveralias">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>リクエストを名前ベースのバーチャルホストにマッチさせているときに
使用されるホストの別名</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ServerAlias <var>hostname</var> [<var>hostname</var>] ...</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive">ServerAlias</code> ディレクティブは、<a href="../vhosts/name-based.html">ネームベースのバーチャルホスト</a>において
使用するホストの別名を指定します。<code class="directive">ServerAlias</code>
は適切であればワイルドカードも含めることができます。</p>
<div class="example"><p><code>
<VirtualHost *><br />
ServerName server.domain.com<br />
ServerAlias server server2.domain.com server2<br />
# ...<br />
</VirtualHost>
</code></p></div>
<h3>参照</h3>
<ul>
<li><a href="../vhosts/">Apache バーチャルホスト説明書</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ServerName" id="ServerName">ServerName</a> <a name="servername" id="servername">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバが自分自身を示すときに使うホスト名とポート</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ServerName [<var>scheme</var>://]<var>fully-qualified-domain-name</var>[:<var>port</var>]</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>このディレクティブはバージョン 2.0 ではバージョン 1.3 の
<code class="directive">Port</code> ディレクティブの機能も含みます。</td></tr>
</table>
<p><code class="directive">ServerName</code> ディレクティブは、
サーバが自分自身を示すリクエストスキームとホスト名とポートを設定します。
これは、リダイレクトする URL を生成する際に利用されます。
例えば、ウェブサーバを動かしているマシンは <code>simple.example.com</code>
で、DNS のエイリアス <code>www.example.com</code> もあるときに、
ウェブサーバが後者として認識されて欲しいときは、以下のようにディレクティブを
使います。</p>
<div class="example"><p><code>
ServerName www.example.com:80
</code></p></div>
<p><code class="directive">ServerName</code> が指定されていないときは、
サーバは IP アドレスから逆引きを行なうことでホスト名を知ろうとします。
<code class="directive">ServerName</code> にポートが指定されていないときは、
サーバはリクエストが来ている
ポートを使います。最高の信頼性と確実性をもたらすためには、
<code class="directive">ServerName</code> を使ってホスト名とポートを明示的に
指定してください。</p>
<p><a href="../vhosts/name-based.html">名前ベースのバーチャルホスト</a>
を利用している場合、<code class="directive"><a href="#virtualhost"><VirtualHost></a></code> セクション内の
<code class="directive">ServerName</code> はこのバーチャルホストにマッチするために
何がリクエストの Host: ヘッダに現れる必要があるのかを指定します。</p>
<p>リバースプロキシやロードバランサやSSL負荷軽減装置のような、
SSLを処理するマシンの後ろでサーバを動かす場合は、
サーバが正しい自己参照 URLを確実に生成するように、
<code>https://</code> スキームとクライアントが接続するポート番号を、
<code class="directive">ServerName</code> ディレクティブに指定してください。
</p>
<p>自己参照 URL (例えば <code class="module"><a href="../mod/mod_dir.html">mod_dir</a></code> モジュールによるものなど)
が指定されたポートを使うか、クライアントのリクエストのポート番号を使うかを
決定する設定は <code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code>
ディレクティブと <code class="directive"><a href="#usecanonicalphysicalport">UseCanonicalPhysicalPort</a></code>
ディレクティブを参照してください。</p>
<h3>参照</h3>
<ul>
<li><a href="../dns-caveats.html">DNS と Apache に関する話</a></li>
<li><a href="../vhosts/">Apache バーチャルホスト説明書</a></li>
<li><code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code></li>
<li><code class="directive"><a href="#usecanonicalphysicalport">UseCanonicalPhysicalPort</a></code></li>
<li><code class="directive"><a href="#namevirtualhost">NameVirtualHost</a></code></li>
<li><code class="directive"><a href="#serveralias">ServerAlias</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ServerPath" id="ServerPath">ServerPath</a> <a name="serverpath" id="serverpath">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>非互換のブラウザが名前ベースのバーチャルホストにアクセスしたときの
ための互換用 URL パス名</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ServerPath <var>URL-path</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive">ServerPath</code> ディレクティブは、<a href="../vhosts/">ネームベースのバーチャルホスト</a>において利用する
互換用 URL パス名を設定します。</p>
<h3>参照</h3>
<ul>
<li><a href="../vhosts/">Apache バーチャルホスト説明書</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ServerRoot" id="ServerRoot">ServerRoot</a> <a name="serverroot" id="serverroot">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>インストールされたサーバのベースディレクトリ</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ServerRoot <var>directory-path</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>ServerRoot /usr/local/apache</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive">ServerRoot</code> ディレクティブは、
サーバが存在するディレクトリを設定します。
通常、<code>conf/</code> や <code>logs/</code> といったサブディレクトリが
存在します。
また、他の設定ディレクティブ (例えば <code class="directive"><a href="#include">Include</a></code> や <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code> など) における相対パスは、
このディレクトリからの相対位置となります。</p>
<div class="example"><h3>例</h3><p><code>
ServerRoot /home/httpd
</code></p></div>
<h3>参照</h3>
<ul>
<li><a href="../invoking.html"><code>httpd</code> の <code>-d</code>
オプション</a></li>
<li><code class="directive">ServerRoot</code> の権限を適切に設定する方法は<a href="../misc/security_tips.html#serverroot">セキュリティのこつ</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ServerSignature" id="ServerSignature">ServerSignature</a> <a name="serversignature" id="serversignature">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバが生成するドキュメントのフッタを設定</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ServerSignature On|Off|EMail</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>ServerSignature Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive">ServerSignature</code> ディレクティブは、
サーバが生成するドキュメント
(エラーメッセージ、<code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code> における FTP のディレクトリリスト、
<code class="module"><a href="../mod/mod_info.html">mod_info</a></code> の出力、等々)
の最下行に付与するフッタの設定を行ないます。
そのようなフッタ行を有効にしたい理由には、
プロキシが複数連なっている場合に、ユーザはどのサーバが返した
エラーメッセージかを知る手段がほとんど無いというものがあります。</p>
<p>デフォルトである <code>Off</code> に設定をすると、フッタ行が抑制されます
(そして、Apache-1.2 以前と互換の動作をします)。
<code>On</code> に設定した場合は、単にドキュメントの中に、サーバのバージョン、
稼動中のバーチャルホストの <a href="#servername">ServerName</a> の書かれた行を追加し、
<code>EMail</code> にした場合はさらに参照されたドキュメントに対する <a href="#serveradmin">ServerAdmin</a> を指す "mailto:" が追加されます。</p>
<p>バージョン 2.0.44 以降ではこのディレクティブは <code class="directive"><a href="#serversignature">ServerSignature</a></code>
ディレクティブにより表示される情報も制御します。</p>
<h3>参照</h3>
<ul>
<li><code class="directive"><a href="#servertokens">ServerTokens</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ServerTokens" id="ServerTokens">ServerTokens</a> <a name="servertokens" id="servertokens">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td><code>Server</code> HTTP 応答ヘッダを設定する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ServerTokens Major|Minor|Min[imal]|Prod[uctOnly]|OS|Full</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>ServerTokens Full</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>このディレクティブは、クライアントに送り返す <code>Server</code>
応答ヘッダ内に、サーバの一般的な OS 種別や、
コンパイルされて組み込まれているモジュールの情報を
含めるかどうかを指定します。</p>
<dl>
<dt><code>ServerTokens Prod[uctOnly]</code></dt>
<dd>サーバは (例えば): <code>Server:
Apache</code> といったように送ります。</dd>
<dt><code>ServerTokens Major</code></dt>
<dd>Server sends (<em>e.g.</em>): <code>Server:
Apache/2</code></dd>
<dt><code>ServerTokens Minor</code></dt>
<dd>Server sends (<em>e.g.</em>): <code>Server:
Apache/2.0</code></dd>
<dt><code>ServerTokens Min[imal]</code></dt>
<dd>サーバは (例えば): <code>Server:
Apache/2.0.41</code> といったように送ります。</dd>
<dt><code>ServerTokens OS</code></dt>
<dd>サーバは (例えば): <code>Server: Apache/2.0.41
(Unix)</code> といったように送ります。</dd>
<dt><code>ServerTokens Full</code> (もしくは未指定)</dt>
<dd>サーバは (例えば): <code>Server: Apache/2.0.41
(Unix) PHP/4.2.2 MyMod/1.2</code> といったように送ります。</dd>
</dl>
<p>この設定はサーバ全体に適用され、バーチャルホスト上で有効にしたり
無効にしたりはできません。</p>
<p>バージョン 2.0.44 以降ではこのディレクティブは <code class="directive"><a href="#serversignature">ServerSignature</a></code>
ディレクティブにより表示される情報も制御します。</p>
<h3>参照</h3>
<ul>
<li><code class="directive"><a href="#serversignature">ServerSignature</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="SetHandler" id="SetHandler">SetHandler</a> <a name="sethandler" id="sethandler">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>マッチするファイルがハンドラで処理されるようにする</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>SetHandler <var>handler-name</var>|None</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 2.0 で core に移動</td></tr>
</table>
<p><code>.htaccess</code> や <code class="directive"><a href="#directory"><Directory></a></code>
セクション、<code class="directive"><a href="#location"><Location></a></code>
セクションに書かれた場合、
このディレクティブはそこにあるすべてのファイルが
<var>handler-name</var> で指定された<a href="../handler.html">ハンドラ</a>で扱われることを強制します。例えば、拡張子に関わらず、
ディレクトリ全体がイメージマップファイルとして解析して欲しい場合には、
以下をそのディレクトリの <code>.htaccess</code>
ファイルに記述します:</p>
<div class="example"><p><code>
SetHandler imap-file
</code></p></div>
<p>別の例: URL <code>http://servername/status</code>
が指定されたときにサーバが状態報告をするようにしたいときは、以下を
<code>httpd.conf</code> に記述します:</p>
<div class="example"><p><code>
<Location /status><br />
<span class="indent">
SetHandler server-status<br />
</span>
</Location>
</code></p></div>
<p><code>None</code> という値を設定することで、
前の方の <code class="directive">SetHandler</code> で定義された設定を無効にすることが
できます。</p>
<p><strong>注意:</strong>SetHandler はデフォルトのハンドラをオーバーライド
しますので、通常の挙動、たとえば、スラッシュ (/) で終わる URL が
リクエストされたときにディレクトリやインデックスファイルを返すよう取り扱う挙動は、
行われなくなります。
</p>
<h3>参照</h3>
<ul>
<li><code class="directive"><a href="../mod/mod_mime.html#addhandler">AddHandler</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="SetInputFilter" id="SetInputFilter">SetInputFilter</a> <a name="setinputfilter" id="setinputfilter">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>クライアントのリクエストや POST の入力を処理するフィルタを設定する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>SetInputFilter <var>filter</var>[;<var>filter</var>...]</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive">SetInputFilter</code> ディレクティブはクライアントの
リクエストや POST の入力をサーバが受け取ったときに処理するフィルタを
設定します。これは <code class="directive"><a href="../mod/mod_mime.html#addinputfilter">AddInputFilter</a></code>
ディレクティブを含め、他の場所で定義されているフィルタの設定に
追加されます。</p>
<p>複数のフィルタを指定するときは、データを処理する順番に
セミコロンで区切る必要があります。</p>
<h3>参照</h3>
<ul>
<li><a href="../filter.html">フィルタ</a>説明書</li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="SetOutputFilter" id="SetOutputFilter">SetOutputFilter</a> <a name="setoutputfilter" id="setoutputfilter">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバの応答を処理するフィルタを設定する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>SetOutputFilter <var>filter</var>[;<var>filter</var>...]</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive">SetOutputFilter</code> ディレクティブは
サーバの応答をクライアントに送り返される前に処理するフィルタを設定します。
これは <code class="directive"><a href="../mod/mod_mime.html#addoutputfilter">AddOutputFilter</a></code>
ディレクティブを含め、他の場所で定義されているフィルタの設定に
追加されます。</p>
<p>例えば、以下の設定は <code>/www/data/</code> ディレクトリのすべての
ファイルを SSI で処理します。</p>
<div class="example"><p><code>
<Directory /www/data/><br />
<span class="indent">
SetOutputFilter INCLUDES<br />
</span>
</Directory>
</code></p></div>
<p>複数のフィルタを指定するときは、データを処理する順番に
セミコロンで区切る必要があります。</p>
<h3>参照</h3>
<ul>
<li><a href="../filter.html">フィルタ</a>説明書</li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="Suexec" id="Suexec">Suexec</a> <a name="suexec" id="suexec">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>Enable or disable the suEXEC feature</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>Suexec On|Off</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>On if suexec binary exists with proper owner and mode,
Off otherwise</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Available in Apache httpd 2.2.18 and later</td></tr>
</table><p>The documentation for this directive has
not been translated yet. Please have a look at the English
version.</p></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="TimeOut" id="TimeOut">TimeOut</a> <a name="timeout" id="timeout">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>各イベントについて、リクエストを失敗させるまでにサーバが
待つ時間を設定</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>TimeOut <var>seconds</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>TimeOut 300</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive">TimeOut</code> ディレクティブは、現在のところ
以下の三つの待ち時間についての定義を行います:</p>
<ol>
<li>GET リクエストを受け取るのにかかる総時間</li>
<li>POST や PUTリクエストにおいて、次の TCP パケットが届くまでの待ち時間</li>
<li>レスポンスを返す際、TCP の ACK が帰ってくるまでの時間</li>
</ol>
<p>将来には別々の設定をすることが可能にできるよう考慮中です。
Apache 1.2 以前はタイマーは 1200 がデフォルトでしたが、
300 に下げられました。300 でもほとんどの場合は十分すぎる値です。
コード中の変な場所にまだパケットを送る際にタイマをリセットしない
場所があるかもしれないので、デフォルトをより小さい値にはしていません。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="TraceEnable" id="TraceEnable">TraceEnable</a> <a name="traceenable" id="traceenable">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td><code>TRACE</code> メソッドのリクエストに対する応答方法を決める
</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>TraceEnable <var>[on|off|extended]</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>TraceEnable on</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 1.3.34, 2.0.55 以降</td></tr>
</table>
<p>コアサーバと <code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code> 両方の <code>TRACE</code>
の挙動をオーバーライドします。デフォルトの <code>TraceEnable on</code>
は、リクエストボディを受け入れないような、RFC2616 に準拠した
<code>TRACE</code> リクエストを受け付けます。
<code>TraceEnale off</code> と設定すると、コアサーバと
<code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code> は <code>405</code> (メソッド不許可)
エラーをクライアントに返します。</p>
<p>最後に、テストや調査目的などの限定用途として、仕様に準拠しない
<code>TraceEnable extended</code> を使って、リクエストボディを
受け付けるように挙動を変更できます。(オリジンサーバとしての)
コアサーバでは、リクエストボディのサイズは 64k (
<code>Transfer-Encoding: chunked</code> が使われている場合は
chunk ヘッダ用に +8k) に制限されます。
コアサーバは、フルヘッダと全ての chunk ヘッダをレスポンスの
ボディとして返却します。
proxy サーバとしては、リクエストボディのサイズは 64k に制限されません。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="UseCanonicalName" id="UseCanonicalName">UseCanonicalName</a> <a name="usecanonicalname" id="usecanonicalname">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバが自分自身の名前とポートを決定する方法を設定する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>UseCanonicalName On|Off|Dns</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>UseCanonicalName Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>多くの状況で Apache は<em>自己参照</em> URL、すなわち
同じサーバを指す URL、を作成する必要があります。
<code>UseCanonicalName On</code> の場合は、<code class="directive"><a href="#servername">ServerName</a></code> ディレクティブで指定されている
ホスト名とポート番号を使って、その正規名 (自己参照の名前) を生成します。
この名前は、すべての自己参照 URL で使われますし、CGI の
<code>SERVER_NAME</code> と <code>SERVER_PORT</code> でも使われます。</p>
<p><code>UseCanonicalName Off</code> の場合、
クライアントがホスト名とポートを指定したときには、
それらを元に自己参照 URL を作成します (指定がなかったときは
上の定義と同様にして正規名を解決します)。
これらの値は<a href="../vhosts/name-based.html">名前ベースの
バーチャルホスト</a>を実装で使われているのと同じ値で、
同じクライアントで取得できる値になっています。
CGI 変数 <code>SERVER_NAME</code> と <code>SERVER_PORT</code>
もクライアントから与えられた値から作成されます。</p>
<p>このような挙動が便利な例は、イントラネットのサーバで <code>www</code>
のような短い名前でユーザがマシンに接続するときです。
ユーザの入力で短いホスト名が使われていて、URL が<em>最後のスラッシュ無しの</em>
ディレクトリになっている <code>http://www/splat</code> のようなとき、
Apache はリクエストを <code>http://www.domain.com/splat/</code>
へリダイレクトします。
認証をするように設定していると、この場合
ユーザは 2 回認証をしなければならなくなります (<code>www</code> に
対して 1 回、<code>www.domain.com</code> に対してもう 1 回 --
詳細は <a href="http://httpd.apache.org/docs/misc/FAQ.html#prompted-twice">この話題の
FAQ</a> を参照してください)。
しかし <code class="directive">UseCanonicalName</code> が <code>Off</code> になっていると、
Apache は <code>http://www/splat/</code> にリダイレクトします。</p>
<p>三つ目のオプション <code>UseCanonicalName DNS</code> は、
大規模な IP ベースのバーチャルホスティングで、
<code>Host:</code> ヘッダを提供しない古いクライアントを
サポートする場合を想定しています。
このオプションでは Apache は、クライアントが接続した IP アドレスに対して
DNS の逆引きを行なって、自己参照 URL を作成します。</p>
<div class="warning"><h3>警告</h3>
<p>CGI が <code>SERVER_NAME</code> に関して何らかの前提条件を
仮定しているときには、このオプションの設定によっては動作しなく
なるかもしれません。クライアントは実質的にはホスト名として
何でも望みの値を指定することができます。CGI が
<code>SERVER_NAME</code> を使って自己参照 URL を作成することしかしない
場合は、どの設定を行なっても大丈夫なはずです。</p></div>
<h3>参照</h3>
<ul>
<li><code class="directive"><a href="#usecanonicalphysicalport">UseCanonicalPhysicalPort</a></code></li>
<li><code class="directive"><a href="#servername">ServerName</a></code></li>
<li><code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="UseCanonicalPhysicalPort" id="UseCanonicalPhysicalPort">UseCanonicalPhysicalPort</a> <a name="usecanonicalphysicalport" id="usecanonicalphysicalport">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバの名前とポートの解決方法を設定する</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>UseCanonicalPhysicalPort On|Off</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>UseCanonicalPhysicalPort Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p>Apache は様々な状況で <em>自己参照</em> URL つまりサーバが自分自身を指し示す
URL を生成する必要があります。
<code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code> ディレクティブの
設定によってサーバの別名を構成するようになりますが、
その際の別名に使うポートは
<code>UseCanonicalPhysicalPort On</code> という設定があれば、
実際のポート番号をポート番号として使う候補に入れてリクエストを
処理するようになります。<code>UseCanonicalPhysicalPort Off</code>
という設定であれば、実際のポート番号は使用せず、設定されている情報を
全て信じてポート番号を構成するようになります。</p>
<div class="note"><h3>注</h3>
<p>実際のポート番号が使われる順序は次のようになっています :<br /><br />
<code>UseCanonicalName On</code></p>
<ul>
<li><code>ServerName</code> で指定されているポート番号</li>
<li>実際のポート番号</li>
<li>デフォルトのポート番号</li>
</ul>
<code>UseCanonicalName Off | DNS</code>
<ul>
<li><code>Host:</code> ヘッダから抽出されたポート番号</li>
<li>実際のポート番号</li>
<li><code>ServerName</code> で指定されているポート番号</li>
<li>デフォルトのポート番号</li>
</ul>
<p><code>UseCanonicalPhysicalPort Off</code> で、
実際のポート番号が上の順序から取り除かれます。</p>
</div>
<h3>参照</h3>
<ul>
<li><code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code></li>
<li><code class="directive"><a href="#servername">ServerName</a></code></li>
<li><code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="VirtualHost" id="VirtualHost"><VirtualHost></a> <a name="virtualhost" id="virtualhost">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>特定のホスト名や IP アドレスのみに適用されるディレクティブを
囲む</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code><VirtualHost
<var>addr</var>[:<var>port</var>] [<var>addr</var>[:<var>port</var>]]
...> ... </VirtualHost></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
</table>
<p><code class="directive"><VirtualHost></code> 及び
<code></VirtualHost></code> は、
特定のバーチャルホストに対してのみ適用されるディレクティブ群を括る
ために使われます。
バーチャルホストコンテキストで許可される全てのディレクティブを指定可能です。
サーバが、指定されたバーチャルホストにあるドキュメントへの
リクエストを受け付けた場合、
<code class="directive"><VirtualHost></code> セクションの中にある
ディレクティブが適用されます。
<var>Addr</var>は、次のものが利用できます:</p>
<ul>
<li>バーチャルホストの IP アドレス</li>
<li>バーチャルホストの IP に対応する完全なドメイン名(非推奨)</li>
<li><code>NameVirtualHost *</code> と共に使われる、
すべての IP アドレスにマッチする文字 <code>*</code></li>
<li>IP ベースのバーチャルホストで他のものにマッチしない IP アドレス
のための文字列 <code>_default_</code></li>
</ul>
<div class="example"><h3>例</h3><p><code>
<VirtualHost 10.1.2.3><br />
<span class="indent">
ServerAdmin webmaster@host.foo.com<br />
DocumentRoot /www/docs/host.foo.com<br />
ServerName host.foo.com<br />
ErrorLog logs/host.foo.com-error_log<br />
TransferLog logs/host.foo.com-access_log<br />
</span>
</VirtualHost>
</code></p></div>
<p>IPv6 アドレスはオプションのポート番号の指定と区別するために、
角括弧で括って指定する必要があります。次は IPv6 の例です:</p>
<div class="example"><p><code>
<VirtualHost [2001:db8::a00:20ff:fea7:ccea]><br />
<span class="indent">
ServerAdmin webmaster@host.example.com<br />
DocumentRoot /www/docs/host.example.com<br />
ServerName host.example.com<br />
ErrorLog logs/host.example.com-error_log<br />
TransferLog logs/host.example.com-access_log<br />
</span>
</VirtualHost>
</code></p></div>
<p>各々のバーチャルホストにはそれぞれ違う IP アドレス、ポート番号
もしくはホスト名に対応する必要があり、
1 番目の場合には複数のアドレスで IP パケットを受信できるように
サーバマシンを設定しなければなりません。
(もし、マシンが複数のネットワークインターフェースと持たない場合は、
(OSがサポートしていれば) <code>ifconfig alias</code> コマンドにより
達成できます)。</p>
<div class="note"><h3>注意点</h3>
<p><code class="directive"><VirtualHost></code> は Apache が Listen する
IP アドレスには影響を与え<strong>ません</strong>。
<code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code> を
使って Apache が正しいアドレスを listen するように設定する必要があります。</p>
</div>
<p>IP ベースのバーチャルホストを使っている場合は、特別な名前
<code>_default_</code> を指定することができます。その場合は
そのバーチャルホストは他のバーチャルホストで明示的に挙げられていない
すべての IP アドレスにマッチします。<code>_default_</code> バーチャルホストが無い
場合に IP がバーチャルホストで指定されたものにマッチしないときは、
VirtualHost セクションの外のすべての定義からなる「主」サーバ設定が
使われます。(ただし、<code class="directive"><a href="#namevirtualhost">NameVirtualHost</a></code> ディレクティブにマッチする
すべての IP アドレスは「主」サーバ設定も <code>_default_</code> バーチャルホストも
使わないことに注意してください。詳しくは <a href="../vhosts/name-based.html">ネームベースのバーチャルホスト</a> を
参照してください。)</p>
<p><code>:port</code> といった形式で記述することにより、
マッチさせるポートを変更可能です。
この指定をしない場合には、主サーバ設定における
一番最後に <code><a href="#port">Port</a></code> で指定されたポートが
デフォルトとなります。
<code>:*</code> を指定することにより、
アドレス上の全てのポートにマッチします。(<code>_default_</code> のときは
これを使うことが推奨されています。)</p>
<p>それぞれの <code class="directive"><VirtualHost></code>
ブロック内で <code class="directive"><a href="#servername">ServerName</a></code>
を指定します。もしこれが無いと、"main" サーバ設定の
<code class="directive"><a href="#servername">ServerName</a></code> が引き継がれます。</p>
<div class="warning"><h3>セキュリティ</h3>
<p>サーバーを起動した以外のユーザがログファイルが保管されるディレクトリに
書き込み可能なときになぜセキュリティが破られる可能性があるかの詳細は
<a href="../misc/security_tips.html">セキュリティに関するコツ</a> を
参照してください。</p></div>
<h3>参照</h3>
<ul>
<li><a href="../vhosts/">Apache バーチャルホスト説明書</a></li>
<li><a href="../dns-caveats.html">DNS と Apache に関する話</a></li>
<li><a href="../bind.html">Apache が使用するアドレスとポートの設定</a></li>
<li>リクエストを受けた際にこれらの異なるセクションが
組み合わされる方法については <a href="../sections.html">
<Directory>, <Location>, <Files> セクションの動作法</a></li>
</ul>
</div>
</div>
<div class="bottomlang">
<p><span>Available Languages: </span><a href="../de/mod/core.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
<a href="../en/mod/core.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/core.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
<a href="../ja/mod/core.html" title="Japanese"> ja </a> |
<a href="../tr/mod/core.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
</div><div id="footer">
<p class="apache">Copyright 2011 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">モジュール</a> | <a href="../mod/directives.html">ディレクティブ</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">用語</a> | <a href="../sitemap.html">サイトマップ</a></p></div>
</body></html>
|