如果 getResponseCode() == 404 并因此 getInputStream() 会抛出异常,有没有办法读取如下所示的简单 http-get 的响应?如果可能的话,我更愿意留在 java.net。
HttpURLConnection c = (HttpURLConnection)new URL("http://somesite.com").openConnection;
c.openInputStream();
Run Code Online (Sandbox Code Playgroud)
问题是,我(确实)有一个我想用 java 读取的网站,该网站响应 404,但显示在浏览器中,因为它显然无论如何都会有响应。
我使用自己的 MVC 系统已经有一段时间了,它运行得很好!
我在我的 .htaccess 中使用它
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.+)$ index.php?page=$1 [QSA,L]
Run Code Online (Sandbox Code Playgroud)
现在,当页面(控制器)不存在时,我重定向到 /error (在 index.php 文件中)。但有些情况下,文件夹中的图片会被删除,但仍会打印在html页面中。这将自动使浏览器调用不存在的图片(因此它将调用/error页面)
现在我想做的是,当一张图片或任何文件(我猜除了 php、html 文件)我想重定向到 404 文件而不是 /error。
我确信这个问题可以在 .htaccess 文件中解决,但我和 Apache 目前还不是那么好。有谁是 Apache 的朋友吗?
谢谢!
如果找不到文件或禁止文件等 - 我真的很想只返回 HTTP 状态代码而不返回正文内容。就像是:
error_page 403 404 body="";
Run Code Online (Sandbox Code Playgroud)
当前(2015 年)的最佳实践是什么?
所以我一直在尝试访问 wildfly 中的管理控制台,但每次尝试时我都会收到 404 错误,但是我的 wildfly 正在运行,我可以通过 eclipse 访问我在服务器上创建和发布的任何应用程序。
我曾尝试更改standalone.xml 中的端口,也尝试过wildfly 的早期版本(我目前使用的是8.2)。
我还设法使用 add-user.bat 添加了一个用户,我对此没有任何问题。
还有什么我可以尝试的吗?
到目前为止,我已经尝试了以下方法。
我目前使用的是 Windows 8.1
*不同版本的wildfly *删除wildfly并重新安装。*更改standalone.xml 中的端口并通过windows 打开端口。
我的网站中有一个个性化的 404 错误页面,其中包含
ErrorDocument 404 404.htm
Run Code Online (Sandbox Code Playgroud)
在我的.htaccess。
问题是,如果您输入www.mydomain.com/whatever/whatever2.html,它会正确显示 404 页面,但链接都已损坏,例如href="property.php"指向 的链接www.mydomain.com/whatever/property.php,这也是 404 错误。
如何在不将所有路由更改为绝对路由的情况下解决此问题?
我的 wordpress 网站有近 3000 篇最近被删除的帖子。我如何向所有已删除或未找到的帖子和页面显示错误代码 410,而不是显示错误代码 404?
如果我手动运行,这个简单的 Web 服务可以工作,但在我的单元测试中,我得到一个 404 not found 页面作为我的响应,阻止我正确测试应用程序。
正常行为:
文件夹结构:
/SRC
--web_application.py
/UNIT_TESTS
--test_wab_application.py
Run Code Online (Sandbox Code Playgroud)
web_application.py
from flask import Flask, request, jsonify, send_from_directory
from python.Greeting import Greeting
application = Flask(__name__)
def create_app(test_config=None):
# create and configure the app
app = Flask(__name__, instance_relative_config=True)
app.config.from_mapping(
SECRET_KEY='mega_developer',
DATABASE=os.path.join(app.instance_path, 'web_application.sqlite'),
)
try:
os.makedirs(app.instance_path)
except OSError:
pass
return app
@application.route('/greetings', methods=['GET', 'POST'])
def hello():
# GET: for url manipulation #
if request.method == 'GET':
return jsonify(hello = request.args.get('name', 'world', str))
Run Code Online (Sandbox Code Playgroud)
test_web_application.py
import tempfile
import pytest
import web_application …Run Code Online (Sandbox Code Playgroud) testing automated-tests unit-testing flask http-status-code-404
我做了一个小 Angular 应用程序,我已经在我的计算机上构建了它,但是当我尝试打开 index.html 文件时出现 404 错误,我尝试将它部署在 Web 服务器上,但它是相同的:
获取http://www.valhatech.com/runtime-es2015.edb2fcf2778e7bf1d426.js net::ERR_ABORTED 404(未找到)
获取http://www.valhatech.com/styles.365933d9cb35ac99c497.css net::ERR_ABORTED 404(未找到)
获取http://www.valhatech.com/polyfills-es2015.2987770fde9daa1d8a2e.js net::ERR_ABORTED 404(未找到)
我的 index.html 文件是:
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>McKenzieEquation</title>
<base href="/">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/x-icon" href="favicon.ico">
<script src="assets/js/app.js"></script>
</head>
<body>
<app-root></app-root>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我的 app.module.ts 的内容是:
const routes: Routes = [
{ path: 'home', component: AppComponent },
{ path: '', redirectTo: 'home', pathMatch: 'full' },
{ path: '**', redirectTo: 'home' }
];
@NgModule({
declarations: …Run Code Online (Sandbox Code Playgroud) 我正在 ASP.NET Core MVC 3.0 应用程序中实现 Azure AD 身份验证。我已按照本教程中的说明进行操作,选项 2;唯一的区别是我使用了现有的应用程序而不是可下载的示例(我确保安装所有 NuGet 包并添加教程和示例提供的配置数据)。我正在我的本地机器上测试这个应用程序。
应用程序已在 Azure 中正确注册,因此我有一个客户端 ID 和一个租户 ID。数据如下:
https://localhost:5002/signin-oidc; 网络,https://localhost:5002(按此顺序)https://localhost:5002/signout-oidc尝试访问标记为 的操作[Authorize]会触发登录过程,但是当它完成时,它会重定向到https://localhost:5002/signin-oidc然后站点返回 404。
appsettings.json 配置:
{
"AzureAd": {
"Instance": "https://login.microsoftonline.com/",
"Domain": "[OMITTED]",
"TenantId": "[OMITTED]",
"ClientId": "[OMITTED]",
"CallbackPath": "/signin-oidc"
},
"Logging": {
"LogLevel": {
"Default": "Debug",
"System": "Information",
"Microsoft": "Information"
}
},
"AllowedHosts": "*"
}
Run Code Online (Sandbox Code Playgroud)
启动类:
{
"AzureAd": {
"Instance": "https://login.microsoftonline.com/",
"Domain": "[OMITTED]",
"TenantId": "[OMITTED]", …Run Code Online (Sandbox Code Playgroud) authentication http-status-code-404 azure-active-directory asp.net-core-mvc azure-web-app-service
我在 Heroku 上使用 Laravel 8 并且不断收到某些字体的 404 错误。这只是今天早些时候开始发生的,但我已经好几天没有更改任何代码了。
这是我从 laravel 的错误处理程序中看到的示例:
404 - https://www.example.com/%7B%7BEXTENSION_BASE_URL%7D%7D/b06871f281fee6b241d60582ae9369b9.ttf
404 - https://www.example.com/%7B%7BEXTENSION_BASE_URL%7D%7D/fee66e712a8a08eef5805a46892932ad.woff
404 - https://www.example.com/%7B%7BEXTENSION_BASE_URL%7D%7D/af7ae505a9eed503f8b8e6982036873e.woff2
Run Code Online (Sandbox Code Playgroud)
我搜索了我的整个目录EXTENSION_BASE_URL,但它在我的代码中不存在。
与这些错误相关联的用户 ID 不是唯一的,而且似乎发生在多人身上。每次都是和上面一样的三个字体文件。
我最好的猜测是人们安装了某种插件,试图使用不存在的自定义字体。我EXTENSION_BASE_URL在网上搜索时找不到任何参考资料,所以我无法弄清楚它的实际来源。
我使用的唯一自定义字体是从 Google Fonts API 导入 Raleway。我有 jQuery 2.2.4、Bootstrap 3.3.7 和 FontAwesome 5.4.1,它们也可能包含带有 CSS 的字体。除了 Raleway 包含之外,其他 CSS 文件的版本已经有一段时间没有改变了。
由于它似乎不会影响每个人,而且我无法追踪这些字体文件是什么,我的计划是简单地将这些字体文件排除在我的日志中。我很想知道是什么导致了这种情况,所以我可以在必要时采取任何其他措施