我们有两个不同的asp.net应用程序,启用了Log4net日志记录.它们都具有相同版本的Log4Net,1.2.10.0.
我们已将log4net.Appender.AdoNetAppender记录器添加到它们中,并希望将根目录记录器的Info级别记录到它,但是还要记录根记录器到文件追加器的错误级别.我们的配置如下;
<?xml version="1.0" encoding="utf-8"?>
<log4net>
<appender name="filelogAppender" type="log4net.Appender.RollingFileAppender" >
<file value="..\logs\app.debug.log" />
<encoding value="utf-8" />
<staticLogFileName value="true" />
<datePattern value=".yyyyMMdd.'log'" />
<rollingStyle value="Composite" />
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<appendToFile value="true" />
<maximumFileSize value="1MB" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%3thread] %-5level %property{log4net:HostName} [%property{Revision}] %logger %message%n" />
</layout>
</appender>
<!--
use [DB]
GO
CREATE TABLE [dbo].[Log] (
[Id] [int] IDENTITY (1, 1) NOT NULL,
[Date] [datetime] NOT NULL,
[Application][varchar] (255) NOT NULL,
[Thread] [varchar] (255) NOT NULL,
[Level] [varchar] (50) …Run Code Online (Sandbox Code Playgroud) 我需要使用JavaScript重新加载页面,并确保它不会从浏览器缓存中提取,而是从服务器重新加载页面.[由于页面元素在过渡期间会发生变化]
在IE和FF上,我发现以下代码工作正常;
window.location.reload(true);
Run Code Online (Sandbox Code Playgroud)
但是它不适用于Chrome或Safari.
我试过以下,但也无济于事;
window.location.replace(location.href);
document.location.reload(true);
document.location.replace(location.href);
Run Code Online (Sandbox Code Playgroud)
这个问题有解决方案吗?
发现
在调查之后我发现这个问题是HTTP协议处理;
Pragma: no-cacheHTTP字段发送请求Last-Modified: DATE1字段location.reload(true)强制从服务器重新加载而不是缓存If-Modified-Since: DATE1字段发送请求HTTP Status 304 Not Modified服务器应用程序因未注意到动态页面内容中的状态更改而出错,因此不返回a 200.但是,Chrome/WebKit是唯一一个If-Modified-Since在location.reload(true)调用JS时发送字段的浏览器.
我想我会把我的发现放在这里以防其他人遇到同样的问题.
我目前住在Bizzaro World,有一位客户.
因为我们正在编写的symfony应用程序将响应注入到另一个应用程序的页面中,所以我们被迫只为应用程序提供一个URL,但幸运的是我们确实将查询字符串完整地传递给了我们.
因此,我需要与symfony如何做事完全相反,这是一种旧式的MVC方法.我需要路由通过查询字符串参数工作,路由到正确的控制器并呈现正确的响应,而不是使用标准的,理智的路径方法.
所以网址将是,http://www.bizzaro.com/appname?route=%2fblog而不是http://www.bizzaro.com/appname/blog,等等.
在路由部分中有很好的例子,说明如何确保查询字符串作为参数传递给控制器操作,但不是这种相当回归的方法.
我实现了Corentin Dandoy在下面提出的解决方案2,但稍微修改以防止在查找根时出现循环.
namespace AppBundle\Controller;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Routing\Exception\ResourceNotFoundException;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
class FrontControllerControllerController extends Controller
{
/**
* Forward the request to the appropriate controller
* @param Request $request
* @return \Symfony\Component\HttpFoundation\Response
*/
public function indexAction(Request $request)
{
// get the parameter that specifies the route to the 'real' homepage controller
$homeroute = $this->container->getParameter('homeroute');
$route = $request->query->get('route');
// Convert the query-string route into a valid path route
$path = '/'.$route; …Run Code Online (Sandbox Code Playgroud)