我有一个内部网络应用程序,由在 Windows Server 2008 R2 上运行的 Tomcat 7 托管。用户通过此 URL 访问该站点:http://servername:8080/ssc .我宁愿用户从这里访问该站点:http://fortify
Tomcat 默认使用 8080 端口:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
我最初的想法是更新它以使用端口 80 还是添加一个连接器会更好?
或者如前所述提供第二项服务会更好吗 here ?
最佳答案
感谢 Ghayel 的指导,我现在可以正常工作了!方法如下:
- 安装 Apache
- 将 mod_jk 连接器安装到 Apache 模块文件夹中
使用这些行创建一个 workers.properties 文件并将其放入 Tomcat conf 文件夹中:
worker.list=fortify worker.fortify.port=8009 worker.fortify.host=fortifytest worker.fortify.type=ajp13
通过将这些行添加到文件的末尾来修改 Apache httpd.conf:
LoadModule jk_module modules/mod_jk.so JkWorkersFile "c:/apache/tomcat/conf/workers.properties" JkLogFile "c:/apache/tomcat/conf/from_apache_mod_jk.log" JkLogLevel info JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
<VirtualHost fortifytest:80> ServerName fortifytest RewriteEngine on RewriteRule ^/$ /ssc [PT,L] JkMount /* fortify ErrorLog "logs/fortifytest-error.log" CustomLog "logs/fortifytest-access.log" common </VirtualHost>
重启 Tomcat,然后重启 Apache
现在我可以使用 http://fortifytest而不是 http://servername:8080/ssc .
编辑:PT(传递)标志在这里非常重要。如果没有该标志,重写规则就无法在我的场景中正常运行。
关于tomcat - 在 Tomcat 7 中为 HP Fortify 设置虚拟主机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33902893/