我有一个小型的MVC 3应用程序 - 一个演示场地.我有一个区域,这一切都很好.
我刚刚添加了另一个区域,期望只是启动应用程序并且它可以工作 - 但是没有,404 - 无法找到资源.
AreaRegistration中的映射路由是默认值(就像我创建的第一个区域一样).
public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
"Postcard_default",
"Postcard/{controller}/{action}/{id}",
new { action = "Index", id = UrlParameter.Optional }
);
}
Run Code Online (Sandbox Code Playgroud)
我试过在这个中添加一个特定的控制器,但没有.
所以我下载了Phil Haack的RouteDebugger,在http:// server/Postcard/Create(这也是我想要的地方)输入时找到了我的路线
区域结构

我的控制器
public class CreateController : Controller
{
private ILogger Logger { get; set; }
private ICardSender Emailer { get; set; }
private IOCCardRepository CardRepository { get; set; }
public CreateController(ILogger logger, ICardSender cardSender, IOCCardRepository repository)
{
this.Logger = logger;
this.Emailer = cardSender;
this.CardRepository …Run Code Online (Sandbox Code Playgroud) model-view-controller asp.net-mvc routing http-status-code-404 asp.net-mvc-3
我试图在PHP中抛出自己的404,具体取决于某些GET变量.但以下是行不通的.我可以确认pge标题回来时带有'404状态代码'..htaccess似乎没有正确重定向.我错过了什么吗?
PHP代码:
if(!$_GET['page']){
header('HTTP/1.0 404 Not Found');
}
Run Code Online (Sandbox Code Playgroud)
.htaccess代码:
ErrorDocument 404 /404.html
Run Code Online (Sandbox Code Playgroud)
非常感谢!
我正在通过web.xml中的以下内容将404错误重定向到servlet.
<error-page>
<error-code>404</error-code>
<location>/notFound.do</location>
</error-page>
Run Code Online (Sandbox Code Playgroud)
我想记录请求尝试去的地方,但我没有从引用者标题中获取它:request.getHeader("referer")
如果我只是点击任何旧的随机不存在的页面,那么显示'null'.
而request.getRequestURL()/ request.getRequestURI()都只显示最终的登陆servlet信息(即,/ notFound).
有没有办法获得所请求的"坏"页面网址?
我创建了一个Asp.net MVC应用程序.现在需要404处理.
已更新global.asax并根据状态代码显示404页面.还在web.config中添加了customErrors属性.它的工作正常.
现在,当任何不符合我们要求的东西时,我想以编程方式重定向到404.
即
if(!valid)
{
return RedirectToAction("Index", "Page404");
}
Run Code Online (Sandbox Code Playgroud)
它工作正常,但有2个状态,一个是301然后404.那么我怎么能防止301?我只需要404.
我怎样才能做到这一点?
如果文件使用jQuery/javascript在不同的服务器上,是否可以检查文件是否返回404错误?
我正在使用youtube api获取我正在嵌入的视频的高清屏幕截图,但它返回的JSON没有显示是否存在视频的高清屏幕截图.
屏幕截图的网址通常是 http://img.youtube.com/vi/ + video.ID + /maxresdefault.jpg
但是当它不存在时,我会得到这个丑陋的低分辨率灰色POS:http: //img.youtube.com/vi/MAyTES9gDAU/maxresdefault.jpg
所以,基本上,我想检查屏幕截图是否存在,如果不存在,请应用于display: none持有它的div.
我正在使用Laravel4框架,我遇到了这个问题.
我想根据请求的URL显示自定义404错误.
例如:
Route::get('site/{something}', function($something){
return View::make('site/error/404');
});
Run Code Online (Sandbox Code Playgroud)
和
Route::get('admin/{something}', function($something){
return View::make('admin/error/404');
});
Run Code Online (Sandbox Code Playgroud)
价值'$something'并不重要.
所示示例仅适用于一个段,即'site/foo'或'admin/foo'.如果有人请求'site/foo/bar'或'admin/foo/bar'laravel将抛出默认404错误.
App::missing(function($exception){
return '404: Page Not Found';
});
Run Code Online (Sandbox Code Playgroud)
我试图在Laravel4文档中找到一些东西,但没有什么是适合我的.请帮忙 :)
谢谢!
我在Flask应用程序的server.py中有以下路由定义:
@app.route('/nearby/<float:lat>/<float:long>')
def nearby(lat, long):
for truck in db.trucks.find({'loc': {'$near': [lat, long]}}).limit(5):
if truck.has_key('loc'):
del truck['loc']
return json.dumps(trucks)
Run Code Online (Sandbox Code Playgroud)
但是当我去的时候http://localhost:5000/nearby/37.7909470419234/-122.398633589404,我得到了404.
其他路线工作正常,所以这是一个问题.我在这做错了什么?
我试图在jboss上运行一个基于spring java的配置的简单应用程序,但没有成功.这个应用程序在jetty和tomcat上都可以正常工作.jboss日志看起来不错,因为它向我展示了一些成功的映射等,但我得到404试图访问该URL.
这是我的代码:
初始化
@Order(1)
public class Initializer extends AbstractAnnotationConfigDispatcherServletInitializer {
@Override
protected Class<?>[] getRootConfigClasses() {
return new Class<?>[] {RootConfig.class};
}
@Override
protected Class<?>[] getServletConfigClasses() {
return new Class<?>[] {WebAppConfig.class};
}
@Override
protected String[] getServletMappings() {
return new String[] {"/"};
}
@Override
protected void customizeRegistration(ServletRegistration.Dynamic registration) {
registration.setInitParameter("dispatchOptionsRequest", "true");
}
}
Run Code Online (Sandbox Code Playgroud)
RootConfig
@Configuration
@ComponentScan(value = "com.test.config", excludeFilters = @Filter(type = FilterType.ASSIGNABLE_TYPE, value = RootConfig.class))
public class RootConfig {
}
Run Code Online (Sandbox Code Playgroud)
WebAppConfig
@Configuration
@ComponentScan("com.test")
@EnableWebMvc
@EnableSpringDataWebSupport
public class WebAppConfig extends WebMvcConfigurerAdapter { …Run Code Online (Sandbox Code Playgroud) 我从Windows Server 2003上的IIS 6移动.
我可以浏览.svc文件.如果我在浏览器中访问http://example.com/Service.svc,我会得到一个很好的标准"这是一个Windows©Communication Foundation服务"页面.
但我无法浏览任何方法 - 如果我在浏览器中访问http://example.com/Service.svc/Method?parameter=xyz,我会收到404错误.
有没有人见过这样的东西?任何想法或建议?
我想我可能会遇到类似的问题:IIS8上的WCF;*.svc处理程序映射不起作用
但症状是不同的(看起来他们根本看不到.svc文件)并且没有解决方案工作(我已经安装了WCF功能的Http Activation等).
我正在尝试将我的Express应用程序迁移到hapi.js,并且我的路线出现问题.我只想要2 GET:我的索引'/',以及不是'/'的所有内容都重定向到'/'.
使用Express我有这个:
// static files
app.use(express.static(__dirname + '/public'));
// index route
app.get('/', function (req, res) {
// whatever
}
// everything that is not /
app.get('*', function(req, res) {
res.redirect('/');
});
Run Code Online (Sandbox Code Playgroud)
我有hapi.js的问题,以获得相同的行为.我的"静态路"看起来像这样:
server.route({
method: 'GET',
path: '/{path*}',
handler: {
directory: {
path: 'public',
listing: false
}
}
});
Run Code Online (Sandbox Code Playgroud)
而我的"404道路"将是:
server.route({
method: 'GET',
path: '/{path*}',
handler: function (request, reply) {
reply.redirect('/');
}
});
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
Error: New route /{path*} conflicts with existing /{path*}
Run Code Online (Sandbox Code Playgroud)
我该如何解决这个问题?