如何在Liferay 7.2中从浏览器访问根目录下的文本文件?
在Liferay 7.2中直接访问ROOT目录下的ads.txt文件
要实现通过https://mydomain/ads.txt直接访问ROOT目录下的txt文件,核心是调整Liferay的资源访问规则,以下是几种可行方案:
方案1:修改web.xml配置静态文件映射
Liferay默认的DefaultServlet没有处理ROOT目录下的.txt后缀请求,你可以通过修改web.xml配置来添加映射:
- 找到Tomcat部署路径下的
webapps/ROOT/WEB-INF/web.xml文件 - 在文件中添加以下Servlet映射规则:
<servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.txt</url-pattern> </servlet-mapping> - 重启Liferay服务器,此时访问
https://mydomain/ads.txt即可直接获取文件内容
方案2:通过portal-ext.properties配置资源映射
如果不想修改web.xml,可以通过Liferay的全局配置文件设置资源映射:
- 在
portal-ext.properties中添加以下配置(如果文件不存在则创建):resource.mapper.paths=/ads.txt resource.mapper.file=${liferay.home}/tomcat/webapps/ROOT/ads.txt - 重启Liferay,配置生效后即可通过目标URL访问文件
临时替代方案(快速验证用)
如果你需要快速实现访问,也可以在ROOT目录创建ads.jsp文件,内容为:
<%@ include file="ads.txt" %>
访问https://mydomain/ads.jsp就能输出ads.txt的内容,但这种方式本质是通过JSP容器间接访问,不如前两种方案直接。
内容的提问来源于stack exchange,提问作者Jacques
相关产品推荐
相关产品推荐

