这个问题与我在CakePHP中处理Alias URL的旧帖子略有关系
经过深思熟虑后,我正在探索在我的Cake App中使用自定义404脚本的选项,当URL未映射到任何控制器/操作时就会达到该脚本.这个脚本会检查$ this-> here并在重定向数据库中查找.如果找到匹配项,它将跟踪特定的"促销"代码并重定向.
我在考虑状态代码.我可以根据特定条件使脚本返回合适的状态代码吗?例如:
我可以这样做吗?
编辑:
那这个呢?有人看到任何问题吗?我把它放在app_controller中.
function appError($method, $params) {
//do clever stuff here
}
Run Code Online (Sandbox Code Playgroud) 嘿伙计们,对阿帕奇有疑问.我有一个已经重新设计的网站,但是我希望捕获人们可能已经收藏或从搜索引擎到新域名下的旧网站的所有"旧"链接.如何让apache只重定向404找不到旧网站?
TIA,
Ĵ
所以我有一个文件,用户永远不应该直接访问,但包含在另一个PHP文件中.如果直接调用该文件,它将生成HTTP状态404未找到,以欺骗可能的攻击者,使该文件不存在.但是,如果黑客可以判断404是由PHP生成的还是"自然"的话,那么标题的整个点就会丢失.那么有可能判断404是由服务器自然生成的(因为文件确实不存在)还是PHP代码?
PS:我知道这个问题可能看起来很奇怪哈哈
我使用nodeJS和senchalab的连接中间件(不是表达!!).我需要捕获静态错误(如404).我怎么得到这些?我试图检查源,但我找不到将错误处理程序传递给connect.static的方法.
这里是我(必须)使用的一般结构的要点:
我在域的根目录中有一个.htaccess文件和一个index.html文件.我在下面的.htaccess文件中编码:
DirectorySlash Off
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.*[^/])?$ /index.html [L]
Run Code Online (Sandbox Code Playgroud)
我希望用户在访问目录URL时会看到index.html中的内容,无论此目录URL是否有斜杠.所以我上面有代码.
但我有一个问题.当我访问不存在的目录时.我得到404.这不是我想要的.我希望用户在访问目录URL时永远可以获得200并在index.html中查看内容.如何通过编辑.htaccess文件中的代码来解决此问题?
BTW.请不要将用户重定向到index.html文件.
谢谢!
.htaccess url-rewriting http-status-codes http-status-code-404 http-status-code-200
我正在开发一个在Java 1.5上编译的applet应用程序(与1.5+兼容).它包含一些资源属性文件,它们捆绑在同一个jar中,与Java包并行.
每当我通过applet访问该资源文件时,它就会向下载applet的服务器发出请求.之后,它从jar中读取文件并按原样工作,但我不希望它为这些文件提出服务器请求.
这是我的java代码访问资源文件的方式.
ResourceBundle messages = ResourceBundle.getBundle("resources/properties/Messages", locale);
Run Code Online (Sandbox Code Playgroud)
我试过两种方式访问:
ResourceBundle messages = ResourceBundle.getBundle("resources.properties.Messages", locale);
Run Code Online (Sandbox Code Playgroud)
两者都有相同的行为.
注意:这些资源在我的Web应用程序中不可用作松散资源.
你好,我的404错误处理有问题.
我加入了htaccess:
ErrorDocument 404 /404.php
所以如果输入类似的东西:
www.domain.com/abc
我的php页面一切正常.键入以下内容时会出现问题:
www.domain.com/abc/
意味着在网址中添加斜杠,会出现404错误页面但是不加载css文件?
如果有人能告诉我这里出了什么问题,我真的很感激.
非常感谢.
我正在尝试使用template_redirect通过Wordpress中的URL加载插件的特定文件.文件正确显示,但发送的标头是404,而不是200.
插件中的代码是:
add_filter('query_vars','plugin_add_jb');
function plugin_add_jb($vars) {
$vars[] = 'jb_ajax';
return $vars;
}
add_action('template_redirect', 'plugin_jb_check');
function plugin_jb_check() {
if(intval(get_query_var('jb_ajax')) == '1') {
$jb_action = $_GET['action'];
if($jb_action == 'refer') {
include('./wp-content/plugins/JobBounties/ajax_refer.php');
}
elseif ($jb_action == 'refer_post') {
include('./wp-content/plugins/JobBounties/ajax_refer_post.php');
}
exit;
}
}
Run Code Online (Sandbox Code Playgroud)
任何人都知道它为什么扔404?
我正在使用CodeIgniter.我设置我的默认控制器是' cart'.我在Controller文件夹中添加了一个名称为的文件admin.php.admin.php有以下代码,
<?php
class Admin extends CI_Controller {
public function __construct()
{
parent::__construct();
}
public function index()
{
echo 'Hello World!';
}
}
?>
Run Code Online (Sandbox Code Playgroud)
如果我像http://lo...host/codeigniter/admin手段那样给网址,它显示404 Not Found.如果我给http://lo...host/codeigniter/,它显示购物车页面是好的.
如果我将routes.php中的默认控制器更改为" admin ",则http://lo...host/codeigniter/显示"Hello World!"
这是我第一次尝试自己设置一个Web应用程序项目,由于某种原因,我甚至无法使用hello world设置.我将所有内容设置为默认值,选择用于编译的JDK1.8和带有仅包含文本的index.html页面的Tomcat7服务器.在将项目添加到服务器之后,我应该可以右键单击项目并在服务器上运行,但即使使用这个简单的设置,我仍然可以获得404.我错过了什么?

Web.xml欢迎列表:
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
Run Code Online (Sandbox Code Playgroud)