{"id":18161,"date":"2014-01-18T07:37:30","date_gmt":"2014-01-17T23:37:30","guid":{"rendered":"https:\/\/2blog.ilc.edu.tw\/25793\/2014\/01\/18\/%e8%a8%ad%e5%ae%9a-nginx-web-server\/"},"modified":"2021-03-18T17:23:48","modified_gmt":"2021-03-18T09:23:48","slug":"%e8%a8%ad%e5%ae%9a-nginx-web-server","status":"publish","type":"post","link":"https:\/\/2blog.ilc.edu.tw\/25793\/2014\/01\/18\/%e8%a8%ad%e5%ae%9a-nginx-web-server\/","title":{"rendered":"\u8a2d\u5b9a Nginx Web Server"},"content":{"rendered":"<p>Nginx Web Server \u8a2d\u5b9a\u6a94 <br \/># <span style=\"color: #ff0000\">rpm -qc nginx<\/span><br \/><span style=\"color: #0000ff\">\/etc\/logrotate.d\/nginx<\/span><br \/><span style=\"color: #0000ff\">\/etc\/nginx\/conf.d\/default.conf<\/span><br \/><span style=\"color: #0000ff\">\/etc\/nginx\/conf.d\/example_ssl.conf<\/span><br \/><span style=\"color: #0000ff\">\/etc\/nginx\/fastcgi_params<\/span><br \/><span style=\"color: #0000ff\">\/etc\/nginx\/koi-utf<\/span><br \/><span style=\"color: #0000ff\">\/etc\/nginx\/koi-win<\/span><br \/><span style=\"color: #0000ff\">\/etc\/nginx\/mime.types<\/span><br \/><span style=\"color: #0000ff\">\/etc\/nginx\/nginx.conf<\/span><br \/><span style=\"color: #0000ff\">\/etc\/nginx\/scgi_params<\/span><br \/><span style=\"color: #0000ff\">\/etc\/nginx\/uwsgi_params<\/span><br \/><span style=\"color: #0000ff\">\/etc\/nginx\/win-utf<\/span><br \/><span style=\"color: #0000ff\">\/etc\/sysconfig\/nginx<\/span><br \/>[@more@]\u8a2d\u5b9a Nginx Web Server<br \/># <span style=\"color: #ff0000\">vim \/etc\/nginx\/nginx.conf<\/span><br \/><span style=\"color: #0000ff\"># \u555f\u52d5 Nginx \u7684\u4f7f\u7528\u8005<\/span><br \/><span style=\"color: #0000ff\">user\u00a0 nginx;<\/span><br \/><span style=\"color: #0000ff\">worker_processes\u00a0 1;<\/span><\/p>\n<p><span style=\"color: #0000ff\"># Nginx Web Server Error Log \u4f4d\u7f6e\u548c\u8a18\u9304\u7684\u5c64\u7d1a<\/span><br \/><span style=\"color: #0000ff\">error_log\u00a0 \/var\/log\/nginx\/error.log warn;<\/span><br \/><span style=\"color: #0000ff\">pid\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/var\/run\/nginx.pid;<\/span><\/p>\n<p><span style=\"color: #0000ff\"># \u9023\u7dda\u6578\u91cf<\/span><br \/><span style=\"color: #0000ff\">events {<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 worker_connections\u00a0 1024;<\/span><br \/><span style=\"color: #0000ff\">}<\/span><\/p>\n<p><span style=\"color: #0000ff\">http {<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 include\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/etc\/nginx\/mime.types;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 default_type\u00a0 application\/octet-stream;<\/span><br \/><span style=\"color: #0000ff\"># log \u6a94\u8a18\u9304\u7684\u683c\u5f0f<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 log_format\u00a0 main\u00a0 &#8216;$remote_addr &#8211; $remote_user [$time_local] &#8220;$request&#8221; &#8216;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &#8216;$status $body_bytes_sent &#8220;$http_referer&#8221; &#8216;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &#8216;&#8221;$http_user_agent&#8221; &#8220;$http_x_forwarded_for&#8221;&#8216;;<\/span><br \/><span style=\"color: #0000ff\"># \u9023\u7dda\u8a18\u9304\u6a94\u7684\u4f4d\u7f6e<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 access_log\u00a0 \/var\/log\/nginx\/access.log\u00a0 main;<\/span><\/p>\n<p><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 sendfile\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 on;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 #tcp_nopush\u00a0\u00a0\u00a0\u00a0 on;<\/span><br \/><span style=\"color: #0000ff\"># \u4fdd\u6301\u9023\u7dda\u7684 timeout \u6642\u9593<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 keepalive_timeout\u00a0 65;<\/span><\/p>\n<p><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 #gzip\u00a0 on;<\/span><br \/><span style=\"color: #0000ff\"># \u5176\u5b83\u7684\u8a2d\u5b9a\u6a94\u5728 \/etc\/nginx\/conf.d \u76ee\u9304\u4e4b\u4e0b<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 include \/etc\/nginx\/conf.d\/*.conf;<\/span><br \/><span style=\"color: #0000ff\">}<\/span><\/p>\n<p>\u4fee\u6539 \/etc\/nginx\/conf.d\/default.conf \u8a2d\u5b9a\u6a94<br \/># <span style=\"color: #ff0000\">vim \/etc\/nginx\/conf.d\/default.conf<\/span><br \/><span style=\"color: #0000ff\"># \u958b\u555f\u7684\u9023\u7dda\u57e0\u548c\u4e3b\u6a5f\u540d\u7a31<\/span><br \/><span style=\"color: #0000ff\">server {<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 listen\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 80;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 server_name\u00a0 localhost;<\/span><br \/><span style=\"color: #0000ff\"># \u7de8\u78bc\u8a2d\u5b9a<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 #charset koi8-r;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 #access_log\u00a0 \/var\/log\/nginx\/log\/host.access.log\u00a0 main;<\/span><br \/><span style=\"color: #0000ff\"># \u7db2\u9801\u6839\u76ee\u9304 \/usr\/share\/nginx\/html \u548c\u9810\u8a2d\u9996\u9801\u7684\u6a94\u6848\u540d\u7a31<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 location \/ {<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 root\u00a0\u00a0 \/usr\/share\/nginx\/html;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 index\u00a0 index.html index.htm;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 }<\/span><br \/><span style=\"color: #0000ff\"># \u767c\u751f\u627e\u4e0d\u5230\u6a94\u6848 404 \u932f\u8aa4\u7de8\u78bc\u6642\uff0c\u53ef\u4ee5\u5c0e\u5f15\u81f3<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 #error_page\u00a0 404\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/404.html;<\/span><\/p>\n<p><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 # redirect server error pages to the static page \/50x.html<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 #<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 error_page\u00a0\u00a0 500 502 503 504\u00a0 \/50x.html;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 location = \/50x.html {<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 root\u00a0\u00a0 \/usr\/share\/nginx\/html;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 }<\/span><\/p>\n<p><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 # proxy the PHP scripts to Apache listening on 127.0.0.1:80<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 #<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 #location ~ .php$ {<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 #\u00a0\u00a0\u00a0 proxy_pass\u00a0\u00a0 http:\/\/127.0.0.1;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 #}<\/span><br \/><span style=\"color: #0000ff\"># \u958b\u555f PHP \u529f\u80fd<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 #<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 location ~ .php$ {<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 root\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/usr\/share\/nginx\/html;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 fastcgi_pass\u00a0\u00a0 127.0.0.1:9000;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 fastcgi_index\u00a0 index.php;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 fastcgi_param\u00a0 SCRIPT_FILENAME $document_root$fastcgi_script_name;<\/span><br \/><span style=\"color: #0000ff\">#\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 fastcgi_param\u00a0 SCRIPT_FILENAME\u00a0 \/scripts$fastcgi_script_name;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 include\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 fastcgi_params;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 }<\/span><\/p>\n<p><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 # deny access to .htaccess files, if Apache&#8217;s document root<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 # concurs with nginx&#8217;s one<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 #<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 #location ~ \/.ht {<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 #\u00a0\u00a0\u00a0 deny\u00a0 all;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0 #}<\/span><br \/><span style=\"color: #0000ff\">}<\/span><\/p>\n<p>\u5b89\u88dd php-fpm \u5957\u4ef6<br \/># <span style=\"color: #ff0000\">yum install php-fpm<\/span><\/p>\n<p>\u555f\u52d5 php-fpm<br \/># <span style=\"color: #ff0000\">\/etc\/init.d\/php-fpm start<\/span><br \/><span style=\"color: #0000ff\">Starting php-fpm:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 [\u00a0 OK\u00a0 ]<\/span><\/p>\n<p>php-fpm \u6703\u4f7f\u7528\u5230 tcp 9000 \u57e0<br \/># <span style=\"color: #ff0000\">netstat -antulp | grep 9000<\/span><br \/><span style=\"color: #0000ff\">tcp\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0\u00a0\u00a0\u00a0\u00a0\u00a0 0 127.0.0.1:9000\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0.0.0.0:*\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 LISTEN\u00a0\u00a0\u00a0\u00a0\u00a0 3769\/php-fpm<\/span><\/p>\n<p>\u8a2d\u5b9a\u958b\u6a5f\u6642\u555f\u52d5 php-fpm<br \/># <span style=\"color: #ff0000\">chkconfig &#8211;list php-fpm<\/span><br \/><span style=\"color: #0000ff\">php-fpm\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0:off\u00a0\u00a0 1:off\u00a0\u00a0 2:off\u00a0\u00a0 3:off\u00a0\u00a0 4:off\u00a0\u00a0 5:off\u00a0\u00a0 6:off<\/span><br \/># <span style=\"color: #ff0000\">chkconfig &#8211;level 3 php-fpm on<\/span><\/p>\n<p>\u91cd\u65b0\u555f\u52d5 Nginx Web Server<br \/># <span style=\"color: #ff0000\">service nginx restart<\/span><br \/><span style=\"color: #0000ff\">Stopping nginx:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 [\u00a0 OK\u00a0 ]<\/span><br \/><span style=\"color: #0000ff\">Starting nginx:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 [\u00a0 OK\u00a0 ]<\/span><\/p>\n<p>\u5728\u9632\u706b\u7246\u4e0a\u6253\u958b 9000 \u57e0<br \/><span style=\"color: #0000ff\">-A INPUT -m state &#8211;state NEW -m tcp -p tcp &#8211;dport 9000 -j ACCEPT<\/span><\/p>\n<p>\u6e2c\u8a66 PHP \u529f\u80fd<br \/># <span style=\"color: #ff0000\">vim \/usr\/share\/nginx\/html\/index.php<\/span><br \/> <span style=\"color: #0000ff\">&lt;?php<\/span><br \/><span style=\"color: #0000ff\">phpinfo();<\/span><br \/><span style=\"color: #0000ff\">?&gt;<\/span><\/p>\n<p><a id=\"res_2345727\" href=\"https:\/\/2blog.ilc.edu.tw\/wp-content\/uploads\/sites\/985\/25793\/25793-2345727.png\"><img decoding=\"async\" src=\"https:\/\/2blog.ilc.edu.tw\/wp-content\/uploads\/sites\/985\/25793\/previews-med\/25793-2345727.png\" border=\"0\" alt=\"\" \/><\/a><\/p>\n<p>\u4e2d\u6587\u5b57\u986f\u793a\u6b63\u5e38<br \/><img decoding=\"async\" src=\"https:\/\/2blog.ilc.edu.tw\/wp-content\/uploads\/sites\/985\/25793\/25793-2345728.png\" alt=\"\" \/><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Nginx Web Server \u8a2d\u5b9a\u6a94 # rpm -qc nginx\/etc\/logrotate.d\/ng &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/2blog.ilc.edu.tw\/25793\/2014\/01\/18\/%e8%a8%ad%e5%ae%9a-nginx-web-server\/\" class=\"more-link\">\u95b1\u8b80\u5168\u6587<span class=\"screen-reader-text\">\u3008\u8a2d\u5b9a Nginx Web Server\u3009<\/span><\/a><\/p>\n","protected":false},"author":55,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[137],"tags":[],"class_list":["post-18161","post","type-post","status-publish","format-standard","hentry","category-c-78482"],"meta_key":{"_encloseme":["1"],"lt_post_id":["468997"],"_pingme":["1"]},"_links":{"self":[{"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/posts\/18161"}],"collection":[{"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/users\/55"}],"replies":[{"embeddable":true,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/comments?post=18161"}],"version-history":[{"count":1,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/posts\/18161\/revisions"}],"predecessor-version":[{"id":19835,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/posts\/18161\/revisions\/19835"}],"wp:attachment":[{"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/media?parent=18161"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/categories?post=18161"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/tags?post=18161"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}