0

最近好像遇到很多随机的http 400(坏请求)

它们都是通过代理从 Share 中的 ajax 调用引发的:“ host /share/proxy/alfresco/”它们大部分时间都在加载或刷新新页面时发生。它们可以在 Alfresco 现有的 ajax 请求中发生,也可以通过我们的自定义发生。

有什么理由可以突然解释为什么我们可以看到这一点?

以下是失败请求的示例:

Request URL:http://foobar.com/share/proxy/alfresco/slingshot/profile/avatar/me%40company.com
Request Method:GET
Status Code:400 Bad Request
Request Headersview parsed
GET /share/proxy/alfresco/slingshot/profile/avatar/me%40company.com HTTP/1.1
Host: test04.componize.com
Connection: keep-alive
Cache-Control: no-cache
Pragma: no-cache
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22
Accept: */*
Referer: http://foobar.com/share/page/site/somesite/somepage?nodeRef=workspace://SpacesStore/85c4f863-343a-4668-b2cc-6338734c6108
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8,fr;q=0.6,ja;q=0.4
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: JSESSIONID=7A8588F21E2E1A8D27A67DEFACA688A7; alfLogin=1363695391; alfUsername2="cGF0cmljay5sdXNzYW5AY29tcG9uaXplLmNvbQ=="; SS_MID=92c6f733-7a8a-4fbd-876d-a8d4e85ed663h49mh6mw; __utma=129970003.1515757632.1341479871.1359127257.1360571858.15; __utmz=129970003.1341479871.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)
Response Headersview parsed
HTTP/1.1 400 Bad Request
Date: Tue, 19 Mar 2013 12:29:06 GMT
Server: Apache-Coyote/1.1
Content-Length: 0
Connection: close
Content-Type: application/x-msdos-program

编辑:添加截图

头像不显示:

在此处输入图像描述

徽标不显示:

在此处输入图像描述

4

3 回答 3

1

一种可能的原因是您的硬件资源使用情况。

几年前我面临的一个问题是服务器设置。我有一个四核 opeteron 服务器,有 4 GB 的 RAM 和 Alfresco + Share + MySQL(+ 一些 linux 守护进程,如 apache 之类的东西)。它经常会失败,我不得不重新启动服务器,通常我有很多错误 400 和 500。

当我将 MySQL 移到另一台物理机器上时,情况好多了。也许您的问题类似,您可以升级硬件来解决问题。

如果你有一个备用服务器来转储 sql 并在 Alfresco 服务器上关闭它并在备用服务器上启动它,也许你可以测试你是否收到更少的失败请求。

于 2013-03-19T12:42:27.173 回答
1

从共享连接到 alfresco 的默认 url 是

http://localhost:8080/alfresco/那是你的“ host/share/proxy/alfresco/

确保您的主机和端口对于露天和共享都是正确的。

如果要更改默认连接,可以在share-config-custom.xml

<config evaluator="string-compare" condition="Remote">
      <remote>
         <endpoint>
            <id>alfresco-noauth</id>
            <name>Alfresco - unauthenticated access</name>
            <description>Access to Alfresco Repository WebScripts that do not require authentication</description>
            <connector-id>alfresco</connector-id>
            <endpoint-url>http://host_name:80/alfresco/s</endpoint-url>
            <identity>none</identity>
         </endpoint>

         <endpoint>
            <id>alfresco</id>
            <name>Alfresco - user access</name>
            <description>Access to Alfresco Repository WebScripts that require user authentication</description>
            <connector-id>alfresco</connector-id>
            <endpoint-url>http://host_name:80/alfresco/s</endpoint-url>
            <identity>user</identity>
         </endpoint>

         <endpoint>
            <id>alfresco-feed</id>
            <name>Alfresco Feed</name>
            <description>Alfresco Feed - supports basic HTTP authentication via the EndPointProxyServlet</description>
            <connector-id>http</connector-id>
            <endpoint-url>http://host_name:80/alfresco/s</endpoint-url>
            <basic-auth>true</basic-auth>
            <identity>user</identity>
         </endpoint>
      </remote>
   </config>

在我们的示例中,alfresco 使用端口 80 在 host_name 中运行。希望这会对您有所帮助。

于 2013-03-19T10:49:00.010 回答
0

最后这是一些服务器端问题,与 Alfresco 无关。

于 2013-03-21T20:25:01.680 回答