天天看點

通過Nginx主配置檔案來了解各項元件功能

    Nginx功能非常強大,僅僅是通過主配置檔案nginx.conf的使用就可以展現出來,為了友善學習和查漏,将其主配置檔案的完整内容列出來,并加上個人的一些了解以作為筆記,進而去加深記憶。

1.Nginx主配置檔案與說明

    如下:

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

<code>#user  nobody;</code>

<code># ====================================Main區==================================== #</code>

<code># Main區為Nginx核心功能子產品</code>

<code>worker_processes  1;    </code><code># worker程序的數量</code>

<code>#error_log  logs/error.log;            # Nginx錯誤日志配</code>

<code>#error_log  logs/error.log  notice;    # notice, info為錯誤日志級别</code>

<code>#error_log  logs/error.log  info;      # 一般使用warn|error|crit這三個級别</code>

<code>#pid        logs/nginx.pid;</code>

<code># ====================================events區==================================== #</code>

<code># events區為Nginx核心功能子產品</code>

<code>events {</code>

<code>    </code><code>worker_connections  1024;    </code><code># 每個worker程序支援的最大連接配接數</code>

<code>}</code>

<code># ====================================HTTP區==================================== #</code>

<code># http區為Nginx核心功能子產品</code>

<code>http {</code>

<code>    </code><code>include       mime.types;    </code><code># Nginx支援的媒體類型庫檔案</code>

<code>    </code><code>default_type  application</code><code>/octet-stream</code><code>;    </code><code># 預設的媒體類型</code>

<code>    </code><code># =========通路日志配置======== #</code>

<code>    </code><code># 開始這三行為日志格式</code>

<code>    </code><code>#log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '</code>

<code>    </code><code>#                  '$status $body_bytes_sent "$http_referer" '</code>

<code>    </code><code>#                  '"$http_user_agent" "$http_x_forwarded_for"';</code>

<code>    </code> 

<code>    </code><code># 這一行為記錄日志的參數,第一個參數為關鍵字參數,第二個為日志目錄,第三個為使用的日志格式</code>

<code>    </code><code>#access_log  logs/access.log  main;</code>

<code>    </code><code>sendfile        on;    </code><code># 開啟高效傳輸模式</code>

<code>    </code><code>#tcp_nopush     on;</code>

<code>    </code><code>#keepalive_timeout  0;</code>

<code>    </code><code>keepalive_timeout  65;    </code><code># 連接配接逾時時間</code>

<code>    </code><code>#gzip  on;</code>

<code>    </code><code>server {                    </code><code># server區塊,表示一個獨立的虛拟主機站點</code>

<code>        </code><code>listen       80;        </code><code># 提供服務的端口</code>

<code>        </code><code>server_name  localhost; </code><code># 提供服務的域名主機名</code>

<code>        </code><code>#charset koi8-r;</code>

<code>        </code><code>#access_log  logs/host.access.log  main;</code>

<code>        </code><code>location / {            </code><code># location區塊</code>

<code>            </code><code>root   html;        </code><code># 站點的根目錄,相當于Nginx的安裝目錄</code>

<code>            </code><code>index  index.html index.htm;    </code><code># 預設的首頁檔案,多個用空格分開</code>

<code>        </code><code>}</code>

<code>    </code><code># [擴充功能1:實作Nginx status] #</code>

<code>    </code><code>##status</code>

<code>server{</code>

<code>    </code><code>listen 80;</code>

<code>    </code><code>server_name status.etiantian.org;</code>

<code>    </code><code>location / {</code>

<code>      </code><code>stub_status on;</code>

<code>      </code><code>access_log off;</code>

<code>    </code><code>}</code>

<code> </code><code>}</code>

<code>        </code><code>#error_page  404              /404.html;</code>

<code>        </code><code># redirect server error pages to the static page /50x.html</code>

<code>        </code><code>#</code>

<code>        </code><code>error_page   500 502 503 504  </code><code>/50x</code><code>.html;    </code><code># 出現對應的http狀态碼時,使用50x.html回應客戶</code>

<code>        </code><code>location = </code><code>/50x</code><code>.html {        </code><code># location區塊,通路50x.html</code>

<code>            </code><code>root   html;              </code><code># 指定對應的站點目錄為html</code>

<code>        </code><code># proxy the PHP scripts to Apache listening on 127.0.0.1:80</code>

<code>        </code><code>#location ~ \.php$ {</code>

<code>        </code><code>#    proxy_pass   http://127.0.0.1;</code>

<code>        </code><code>#}</code>

<code>        </code><code># pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000</code>

<code>        </code><code>#    root           html;</code>

<code>        </code><code>#    fastcgi_pass   127.0.0.1:9000;</code>

<code>        </code><code>#    fastcgi_index  index.php;</code>

<code>        </code><code>#    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;</code>

<code>        </code><code>#    include        fastcgi_params;</code>

<code>        </code><code># deny access to .htaccess files, if Apache's document root</code>

<code>        </code><code># concurs with nginx's one</code>

<code>        </code><code>#location ~ /\.ht {</code>

<code>        </code><code>#    deny  all;</code>

<code>    </code><code># another virtual host using mix of IP-, name-, and port-based configuration</code>

<code>    </code><code>#</code>

<code>    </code><code>#server {</code>

<code>    </code><code>#    listen       8000;</code>

<code>    </code><code>#    listen       somename:8080;</code>

<code>    </code><code>#    server_name  somename  alias  another.alias;</code>

<code>    </code><code>#    location / {</code>

<code>    </code><code>#        root   html;</code>

<code>    </code><code>#        index  index.html index.htm;</code>

<code>    </code><code>#    }</code>

<code>    </code><code>#}</code>

<code>    </code><code># HTTPS server</code>

<code>    </code><code>#    listen       443 ssl;</code>

<code>    </code><code>#    server_name  localhost;</code>

<code>    </code><code>#    ssl_certificate      cert.pem;</code>

<code>    </code><code>#    ssl_certificate_key  cert.key;</code>

<code>    </code><code>#    ssl_session_cache    shared:SSL:1m;</code>

<code>    </code><code>#    ssl_session_timeout  5m;</code>

<code>    </code><code>#    ssl_ciphers  HIGH:!aNULL:!MD5;</code>

<code>    </code><code>#    ssl_prefer_server_ciphers  on;</code>

2.下一步要做什麼

    持續更新本博文,并在用中加深學習和了解。

本文轉自 xpleaf 51CTO部落格,原文連結:http://blog.51cto.com/xpleaf/1901503,如需轉載請自行聯系原作者

繼續閱讀