|
55 | 55 | import org.opencms.security.CmsSecurityException;
|
56 | 56 | import org.opencms.site.CmsSite;
|
57 | 57 | import org.opencms.site.CmsSiteManagerImpl;
|
| 58 | +import org.opencms.site.xmlsitemap.CmsXmlSeoConfiguration; |
58 | 59 | import org.opencms.staticexport.CmsExportname.CmsExportNameComparator;
|
59 | 60 | import org.opencms.util.CmsFileUtil;
|
60 | 61 | import org.opencms.util.CmsMacroResolver;
|
@@ -1869,8 +1870,16 @@ public boolean isExportLink(CmsObject cms, String vfsName) {
|
1869 | 1870 | // not the current users permissions
|
1870 | 1871 | CmsObject exportCms = OpenCms.initCmsObject(OpenCms.getDefaultUsers().getUserExport());
|
1871 | 1872 | exportCms.getRequestContext().setSiteRoot(siteRoot);
|
1872 |
| - // let's look up export property in VFS |
| 1873 | + // exportRes is usually the resource at path vfsName, but in case of detail page URIs it's the detail content |
1873 | 1874 | CmsResource exportRes = CmsDetailPageUtil.lookupPage(exportCms, vfsName);
|
| 1875 | + // if we are handling request for robots.txt, don't export |
| 1876 | + if (OpenCms.getResourceManager().matchResourceType( |
| 1877 | + CmsXmlSeoConfiguration.SEO_FILE_TYPE, |
| 1878 | + exportRes.getTypeId())) { |
| 1879 | + if (vfsName.endsWith("robots.txt")) { |
| 1880 | + return false; |
| 1881 | + } |
| 1882 | + } |
1874 | 1883 | String exportValue = exportCms.readPropertyObject(
|
1875 | 1884 | exportCms.getSitePath(exportRes),
|
1876 | 1885 | CmsPropertyDefinition.PROPERTY_EXPORT,
|
|
0 commit comments