正常訪問tomcat發布的項目,需要在url后面加上項目名,如果想不加項目名直接通過ip訪問,可以修改配置文件實現
1、直接將你的變異后的項目文件,復制到tomcat的webapps/ROOT 目錄下面,可以理解成把你的項目名字部署的時候改成ROOT,這樣不需要修改配置就可實現不輸入項目名訪問
2、修改配置文件,修改conf/server.xml,找到<Host 標簽,在標簽內增加 <Context path="" docBase="superquery" reloadable="true" />
其中docBase指向webapps中你項目的名稱
如果不想通過8080端口直接通過ip地址就能訪問,可以修改tomcat端口為80,在conf/server.xml中找到下面這里,將8080改成80即可
重啟后就可以直接通過ip地址訪問了,不需要再輸端口和項目名稱
另外我還遇到個問題,tomcat日志中打印org.apache.coyote.http11.Http11Processor.service Error parsing HTTP request header的錯誤
20-Apr-2020 22:16:19.456 INFO [http-nio-80-exec-6] org.apache.coyote.http11.Http11Processor.service Error parsing HTTP request header Note: further occurrences of HTTP header parsing errors will be logged at DEBUG level. java.lang.IllegalArgumentException: Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986 at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:483) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:684) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:808) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1498) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:748)
修改conf/catalina.properties文件,最后一行增加tomcat.util.http.parser.HttpParser.requestTargetAllow=|{}
再重啟tomcat,就沒有再報錯了
還遇到個用 /var/lib/tomcat-7.0-bsp/bin/catalina.sh start; 命令啟動的時候報錯,Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
At least one of these environment variable is needed to run this program
在catalina.sh文件的開頭添加JAVA_HOME的環境變量后不報錯了
export JAVA_HOME=/var/lib/jdk1.8.0_221