【Web后端笔记】windows下nginx的基本配置和使用
2015-06-03 11:18
821 查看
nginx是一个轻便好用的服务器,在代理、均衡等方面比较强大,详情自行百度。
1、下载:
去官网下载windows的版本就是 http://nginx.org/en/download.html 我选的是稳定版1.8.0
2、解压:
下载完是一个压缩包,解压后就可以直接用的了
3、使用:
用命令行切换到文件目录下,输入start nginx,有一个黑框闪一下然后消失而不会像tomcat那样保留在那,就启动了:
浏览器输入localhost,如果有欢迎界面就是启动成功了:
4、配置:
最常用的就是配置conf文件夹里的nginx.conf,在这里可以配置很多东西,详细的自己去查吧=,=
5、常用命令:
启动:start nginx
更新conf文件后直接reload,不用重启:nginx -s reload
关闭:nginx -s quit
检查conf文件是否有错:nginx -t
6、完成代理,监听80端口将不同域名绑定到tomcat上的不同端口的不同项目:
这里一定要注意!!如果tomcat(或其他程序)占用了80端口,这里再监听会不行!!我弄了好久都不行,就是这个问题!(自己sb了)
这是我的nginx.conf,其实重点就是每个server的配置
另外tomcat配置文件也要有相应的配置:
Root下的index.html
conf文件夹下的server.xml:
这样就可以实现用nginx将不同域名绑定到不同tomcat的不同端口。
参考原文:windows下nginx+tomcat整合的安装与配置
参考原文:nginx实现单ip,多域名,多站点的访问配置教程
1、下载:
去官网下载windows的版本就是 http://nginx.org/en/download.html 我选的是稳定版1.8.0
2、解压:
下载完是一个压缩包,解压后就可以直接用的了
3、使用:
用命令行切换到文件目录下,输入start nginx,有一个黑框闪一下然后消失而不会像tomcat那样保留在那,就启动了:
浏览器输入localhost,如果有欢迎界面就是启动成功了:
4、配置:
最常用的就是配置conf文件夹里的nginx.conf,在这里可以配置很多东西,详细的自己去查吧=,=
5、常用命令:
启动:start nginx
更新conf文件后直接reload,不用重启:nginx -s reload
关闭:nginx -s quit
检查conf文件是否有错:nginx -t
6、完成代理,监听80端口将不同域名绑定到tomcat上的不同端口的不同项目:
这里一定要注意!!如果tomcat(或其他程序)占用了80端口,这里再监听会不行!!我弄了好久都不行,就是这个问题!(自己sb了)
这是我的nginx.conf,其实重点就是每个server的配置
#user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; server { listen 80; server_name www.workmap.net.cn; #charset koi8-r; #access_log logs/host.access.log main; location / { proxy_pass http://127.0.0.1:8080/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # #location ~ \.php$ { # root html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # include fastcgi_params; #} # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} } server { listen 80; server_name tpshare.cn www.tpshare.cn; #charset koi8-r; #access_log logs/host.access.log main; location / { proxy_pass http://127.0.0.1:9090/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } # another virtual host using mix of IP-, name-, and port-based configuration # #server { # listen 8000; # listen somename:8080; # server_name somename alias another.alias; # location / { # root html; # index index.html index.htm; # } #} # HTTPS server # #server { # listen 443 ssl; # server_name localhost; # ssl_certificate cert.pem; # ssl_certificate_key cert.key; # ssl_session_cache shared:SSL:1m; # ssl_session_timeout 5m; # ssl_ciphers HIGH:!aNULL:!MD5; # ssl_prefer_server_ciphers on; # location / { # root html; # index index.html index.htm; # } #} }
另外tomcat配置文件也要有相应的配置:
Root下的index.html
<?xml version="1.0" encoding="ISO-8859-1"?> <!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" xml:lang="en" lang="en"> <head><title>tpshare</title></head> <body> <script language='javascript'>document.location = 'http://www.tpshare.cn:9090/SharePDF/'</script> </body> </html>
conf文件夹下的server.xml:
<?xml version='1.0' encoding='utf-8'?> <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <!-- Note: A "Server" is not itself a "Container", so you may not define subcomponents such as "Valves" at this level. Documentation at /docs/config/server.html --> <Server port="8205" shutdown="SHUTDOWN"> <!--APR library loader. Documentation at /docs/apr.html --> <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" /> <!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html --> <Listener className="org.apache.catalina.core.JasperListener" /> <!-- Prevent memory leaks due to use of particular java/javax APIs--> <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" /> <!-- JMX Support for the Tomcat server. Documentation at /docs/non-existent.html --> <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" /> <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" /> <!-- Global JNDI resources Documentation at /docs/jndi-resources-howto.html --> <GlobalNamingResources> <!-- Editable user database that can also be used by UserDatabaseRealm to authenticate users --> <Resource name="UserDatabase" auth="Container" type="org.apache.catalina.UserDatabase" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory" pathname="conf/tomcat-users.xml" /> </GlobalNamingResources> <!-- A "Service" is a collection of one or more "Connectors" that share a single "Container" Note: A "Service" is not itself a "Container", so you may not define subcomponents such as "Valves" at this level. Documentation at /docs/config/service.html --> <Service name="Catalina"> <!--The connectors can use a shared executor, you can define one or more named thread pools--> <!-- <Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="150" minSpareThreads="4"/> --> <!-- A "Connector" represents an endpoint by which requests are received and responses are returned. Documentation at : Java HTTP Connector: /docs/config/http.html (blocking & non-blocking) Java AJP Connector: /docs/config/ajp.html APR (HTTP/AJP) Connector: /docs/apr.html Define a non-SSL HTTP/1.1 Connector on port 8080 --> <Connector port="9090" protocol="HTTP/1.1" connectionTimeout="20000" URIEncoding="utf-8" redirectPort="8443" /> <!-- A "Connector" using the shared thread pool--> <!-- <Connector executor="tomcatThreadPool" port="8080" protocol="HTTP/1.1" connectionTimeout="20000" URIEncoding="utf-8" redirectPort="8443" /> --> <!-- Define a SSL HTTP/1.1 Connector on port 8443 This connector uses the JSSE configuration, when using APR, the connector should be using the OpenSSL style configuration described in the APR documentation --> <!-- <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" /> --> <!-- Define an AJP 1.3 Connector on port 8009 --> <Connector port="8109" protocol="AJP/1.3" redirectPort="8443" /> <!-- An Engine represents the entry point (within Catalina) that processes every request. The Engine implementation for Tomcat stand alone analyzes the HTTP headers included with the request, and passes them on to the appropriate Host (virtual host). Documentation at /docs/config/engine.html --> <!-- You should set jvmRoute to support load-balancing via AJP ie : <Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1"> --> <Engine name="Catalina" defaultHost="localhost"> <!--For clustering, please take a look at documentation at: /docs/cluster-howto.html (simple how to) /docs/config/cluster.html (reference documentation) --> <!-- <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/> --> <!-- The request dumper valve dumps useful debugging information about the request and response data received and sent by Tomcat. Documentation at: /docs/config/valve.html --> <!-- <Valve className="org.apache.catalina.valves.RequestDumperValve"/> --> <!-- This Realm uses the UserDatabase configured in the global JNDI resources under the key "UserDatabase". Any edits that are performed against this UserDatabase are immediately available for use by the Realm. --> <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/> <!-- Define the default virtual host Note: XML Schema validation will not work with Xerces 2.2. --> <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <!-- SingleSignOn valve, share authentication between web applications Documentation at: /docs/config/valve.html --> <!-- <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> --> <!-- Access log processes all example. Documentation at: /docs/config/valve.html --> <!-- <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/> --> <Context path="" docBase="D:\dev_soft\apache-tomcat-6.0.43_9090_sharepdf\webapps\SharePDF"> <WatchedResource>WEB-INF/web.xml</WatchedResource> </Context> </Host> </Engine> </Service> </Server>
这样就可以实现用nginx将不同域名绑定到不同tomcat的不同端口。
参考原文:windows下nginx+tomcat整合的安装与配置
参考原文:nginx实现单ip,多域名,多站点的访问配置教程
相关文章推荐
- Django搭建及源码分析(三)---+uWSGI+nginx
- nginx动态数组ngx_array_t
- [转]部署Nginx负载均衡环境和解决session共享的方法
- 在Nginx中拦截特定用户代理的教程
- nginx优化篇之Linux 内核参数的优化
- Nginx负载均衡
- nginx session丢失&域名去根&反相代理
- nginx常见内部参数,错误总结
- nginx echo 输出 检查配置正确性
- nginx双向链表ngx_queue_t
- nginx不使用正则表达式匹配
- Linux nginx 配置 location 语法 正则表达式
- nagios 监控 nginx
- LNMP环境搭建——Nginx篇
- nginx安装
- nginx网页置灰
- nginx状态监控
- 隐藏浏览器中php,apache,varnish,nginx版本信息
- nginx 源码学习笔记——文件读写和配置文件读取
- 上传操作 nginx 返回413的处理