安装nginx: brew install nginx
配置nginx为80端口:
找到nginx的配置文件 /usr/local/etc/nginx/nginx.conf
代码片段
server {
//默认端口配置为80
listen 80;
...
}
重启nginx:sudo nginx -s reload
这时会启动失败,错误信息是80端口被占用。原因是MAC自带的apache占用了80端口。
解决方案:把apache的默认端口改掉。找到apache配置文件:/etc/apache2/httpd.conf
代码片段
//把apache的默认端口修改为81
Listen 81
重启apache: sudo apachectl restart
然后就可以正常启动nginx了
Tomcat部署:
把打包好的war文件放到一个目录,例如~/Webs/test.war
默认情况下部署test项目后,test项目的路径为:http://localhost:8080/test
为了把路径中的servlet名字去掉,也就是说能够通过http://localhost:8080来访问到test项目,需要如下配置
修改tomcat安装目录下的配置文件 /Library/Tomcat/conf/server.xml
代码片段:
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Context path="" docBase="/Users/{username}/Webs/SpringMVC.war" debug="0" reloadable="true"/>
</Host>
其中{username}为当前系统用户名
重启tomcat tomcat restart
这时在浏览器中访问http://localhost:8080 看到的还是tomcat的主页
解决方案:打开Tomcat安装目录, 删除/work/Catalina/的所有子目录,删除webapps下的除了host-manager和manager以外的所有子目录,然后重启tomcat
这时可以通过http://localhost:8080来看到test项目的主页了
配置Nginx代理:
使用localhost:80来代理localhost:8080
修改nginx配置文件 /usr/local/etc/nginx/nginx.conf
代码片段
server {
server_name localhost:8080;
location / {
proxy_pass http://localhost:8080;
}
}
重启nginx sudo nginx -s reload
这时在浏览器中访问http://localhost,就可以看到直接跳转到test项目了