可以在/ etc/hosts文件被用来代替解析器使用时proxy_pass?
我需要对同一个nginx机器执行proxy_pass.有没有办法使用机器的/ etc/hosts文件解析域,而不是通过"解析器"属性指定DNS服务器?
这将节省我到达同一服务器所需的额外跃点.我已经尝试在/ etc/hosts文件中设置映射到DNS的内部IP,但是nginx仍然从解析器属性中设置的DNS服务器读取.或者有没有办法让HTTPProxy模块考虑/ etc/hosts文件设置?
感谢您分享的任何建议..
这是我在nginx论坛上发布的同一个问题:http: //forum.nginx.org/read.php?11,218997
我想问一下HAProxy如何根据URL的部分来帮助路由请求.
为了概述我的设置,我有HAProxy机器和两个后端:
用例:
我希望根据URL路由请求:
博客访问URL是" / server/blog/lang/articlexx ",因此我必须将原始客户端请求重写为该格式 - 这基本上是切换"blog"和"lang".
从我如何理解配置文档和网上的一些帖子,我可以使用reqrep/reqirep来更改请求HTTP标头,然后再将其传递给后端.如果这是正确的,那么这个配置应该工作:
frontend vFrontLiner
bind x.x.x.x:x
mode http
option httpclose
default_backend iis_website
# the switch: x/lang/blog -? x/blog/lang
reqirep ^/(.*)/(blog)/(.*) /if\2/\1/\3
acl blog path_beg -i /lang/blog/
use_backend blog_website if blog
backend blog_website
mode http
option httpclose
cookie xxblogxx insert indirect nocache
server BLOG1 x.x.x.x:80 cookie s1 check inter 5s rise 2 fall 3
server BLOG2 x.x.x.x:80 cookie s2 check inter 5s rise 2 …Run Code Online (Sandbox Code Playgroud) 提交阶段始终失败并显示以下错误:
Committing Deployment Failed
Phase: Deployment Prepare Commit Phase failed, Unable to prepare transaction: tcm:0515104-66560,
org.hibernate.exception.JDBCConnectionException: Cannot open connection,
org.hibernate.exception.JDBCConnectionException: Cannot open connection, Unable to prepare transaction: tcm:0-515104-66560,
org.hibernate.exception.JDBCConnectionException: Cannot open connection,
org.hibernate.exception.JDBCConnectionException: Cannot open connection
Run Code Online (Sandbox Code Playgroud)
这是在具有默认实例(DEV/UAT)的数据库中工作的配置:
<Storage Type="persistence" Id="brokerdb" dialect="MSSQL" Class="com.tridion.storage.persistence.JPADAOFactory">
<Pool Type="jdbc" Size="5" MonitorInterval="60" IdleTimeout="120" CheckoutTimeout="120" />
<DataSource Class="com.microsoft.sqlserver.jdbc.SQLServerDataSource">
<Property Name="serverName" Value="ourServerName" />
<Property Name="portNumber" Value="1433" />
<Property Name="databaseName" Value="Tridion_Broker" />
<Property Name="user" Value="TridionBrokerUser" />
<Property Name="password" Value="xxxxxxxxpassxx" />
</DataSource>
</Storage>
Run Code Online (Sandbox Code Playgroud)
但是,对于我们的生产,使用命名实例是不可避免的.所以我们尝试了这个配置来传递实例的名称,但无济于事; 我们仍然得到错误.
<Storage Type="persistence" Class="com.tridion.storage.persistence.JPADAOFactory"
Id="brokerdb"
Url="jdbc:sqlserver://ourServerName/Tridion_Broker;instanceName=THE_INSTANCE_NAME;domain=DOMAIN_NAME" …Run Code Online (Sandbox Code Playgroud) 我们为特定类型的内容设置了非常简单的审批工作流程.但是,由于某种原因,第一个手动活动无法完成,因此工作流程被阻止.
任何完成活动的尝试都将提示此错误:
An item with the same key has already been added.
Unable to finish the Workflow Activity (tcm:x-xxxxx-xxxxxx)
Run Code Online (Sandbox Code Playgroud)
这是我正在使用的数据(为了便于阅读而被截断):
<Content xmlns="uuid:fac33fb4-7b36-465a-af40-f3b80c4f3f65">
<contactlist>
<name>Lorem ipsum dolor</name>
<address>sit amet consectetur</address>
<photo xmlns:xlink="http://www.w3.org/1999/xlink"
xlink:type="simple" xlink:href="tcm:5-80196"
xlink:title="photo-1"></photo>
<email>email1@email.com</email>
<phone>interdu eget</phone>
<mailimage xmlns:xlink="http://www.w3.org/1999/xlink"
xlink:type="simple" xlink:href="tcm:5-80195"
xlink:title="email-icon"></mailimage>
</contactlist>
<contactlist>
<name>Lorem ipsum dolor</name>
<address>sit amet consectetur</address>
<photo xmlns:xlink="http://www.w3.org/1999/xlink"
xlink:type="simple" xlink:href="tcm:5-80197"
xlink:title="photo-2"></photo>
<email>email@email.com</email>
<phone>interdu eget</phone>
<mailimage xmlns:xlink="http://www.w3.org/1999/xlink"
xlink:type="simple" xlink:href="tcm:5-80195"
xlink:title="email-icon"></mailimage>
</contactlist>
</Content>
Run Code Online (Sandbox Code Playgroud)
请注意,我正在为[mailImage]属性重复使用相同的电子邮件图标图像.我倾向于认为这是导致错误的原因,因为它是列表中唯一重复的组件链接.
如果我删除邮件图像组件链接并完成活动,它可以工作,我可以继续工作流程.奇怪吧?
我没有看到为什么我不能在同一组件中重用组件链接以便能够继续进行的工作流程.我的意思是,CMS允许我保存组件,为什么不允许我继续使用Workflow?
编辑:顺便说一句,这是事件日志中的错误:
Unable to finish the Workflow Activity (tcm:5-18430-131104)
An item …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用特定组件模板从代理数据库中呈现所有组件演示文稿.这是目前为止的查询代码:
using Tridion.ContentDelivery.DynamicContent;
using Tridion.ContentDelivery.DynamicContent.Query;
ItemTemplateCriteria CTCriteria = new ItemTemplateCriteria(1111);
PublicationCriteria pubCriteria = new PublicationCriteria(10);
AndCriteria finalCriteria = new AndCriteria(pubCriteria, CTCriteria);
Response.Write("<h1>START</h1>");
Query q = new Query();
q.Criteria = finalCriteria;
string[] result = q.ExecuteQuery();
if (result != null && result.Length > 0)
{
foreach (string r in result)
{
Response.Write("<h1>" + r + "</h1>");
}
}
else {
Response.Write("Result is null or 0-length.");
}
Response.Write("<h1>END</h1>");
Run Code Online (Sandbox Code Playgroud)
我不断得到null结果.我确实cd_storage_conf.xml在Broker数据库中发布了动态内容发布设置和一些组件演示.
我从该文档中了解到,我应该能够使用这种方法检索相关的组件URI.
我的问题:
Query班级能力的理解是否正确? …通过Gecko的文档很难看到它如何呈现网页.
我正在为各个领先浏览器的项目进行一些性能分析,以了解如何缩短响应时间.我知道那里的优化技术,但我并不真正理解他们的基础 - 如果我知道浏览器引擎如何做他们的事情我相信会解决.