当我尝试在端口8080上点击我的网络应用程序时,我收到以下错误
错误请求 - 无效主机名
HTTP错误400.请求主机名无效.
我甚至不知道从哪里开始诊断这个问题
我的网站运行一个名为 - > WSS壁纸脚本的脚本
我的问题 - >我一直在尝试强制删除或在我的URL末尾添加尾部斜杠以防止重复内容并清理我的URL.
我已经尝试了各种各样的尝试,并尝试了我能想到的一切,并从互联网上加载,但没有这样的运气!这可能是一个快速修复,但我已经看了很多,我可能对死明显的东西视而不见.
所以我告诉你我所有的.htaccess代码:
DirectoryIndex index.php
RewriteEngine on
RewriteRule ^download/([0-9]+)?/([0-9]+)x([0-9]+)/([^/\.]+) image.php?id=$1&width=$2&height=$3&cropratio=$4&download=1 [L]
RewriteRule ^file/([0-9]+)?/([0-9]+)x([0-9]+)/([^/\.]+) image.php?id=$1&width=$2&height=$3&cropratio=$4 [L]
RewriteRule ^preview/([0-9]+)?/([0-9]+)x([0-9]+)/([^/\.]+) wallpaper_preview.php?id=$1&width=$2&height=$3&name=$4 [L]
RewriteRule ^thumbnail/([0-9]+)?/([0-9]+)x([0-9]+)/([^/\.]+)/([^/\.]+)/([^/\.]+)/([^/]+) image.php?wallpaper_id=$1&width=$2&height=$3&cropratio=$4&align=$5&valign=$6&file=$7 [L]
RewriteRule ^cat/([0-9]+)?/([^/\.]+)/p([0-9]+) index.php?task=category&id=$1&name=$2&page=$3 [L]
RewriteRule ^cat/([0-9]+)?/([^/\.]+)/([0-9a-zA-Z?-]+)/p([0-9]+) index.php?task=category&id=$1&name=$2&sortby=$3&page=$4 [L]
RewriteRule ^cat/([0-9]+)?/([^/\.]+)/([0-9a-zA-Z?-]+)-([0-9]+) index.php?task=category&id=$1&sortby=$3&page=$4 [L]
RewriteRule ^cat/([0-9]+)?/([^/\.]+) index.php?task=category&id=$1&name=$2 [L]
RewriteRule ^tag/([^/\.]+)/([0-9a-zA-Z?-]+)/([0-9]+) index.php?task=tag&t=$1&sortby=$2&page=$3 [L]
RewriteRule ^tag/([^/\.]+) index.php?task=tag&t=$1 [L]
RewriteRule ^profile/([0-9]+)?/([^/\.]+) index.php?task=profile&id=$1&name=$2 [L]
RewriteRule ^profile/comments/([0-9]+)?/([^/\.]+) index.php?task=users_comments&id=$1&name=$2 [L]
RewriteRule ^page/([0-9]+) index.php?task=view_page&id=$1 [L]
RewriteRule ^register index.php?task=register [L]
RewriteRule ^lost-password index.php?task=lost_pass [L]
RewriteRule ^links index.php?task=links [L]
RewriteRule …Run Code Online (Sandbox Code Playgroud) 我目前正在尝试在URL中放置一个URL.例如:
http://example.com/url/http%3A%2F%2Fwww.url2.com
Run Code Online (Sandbox Code Playgroud)
我知道我必须编码URL,我已经完成了,但现在我404从服务器而不是我的应用程序收到错误.我认为我的问题在于apache,可以用AllowEncodedSlashes On指令修复.
我已经尝试将指令置于httpd.conf的底部无效,并且我不确定下一步该做什么.我把它放在正确的地方吗?如果是这样,有没有人有任何其他解决方案?
我们有一些非常基本的mod_rewrite规则:
RewriteRule ^something.swf$ http://www.newdomain.com/something.swf [R=302,L]
Run Code Online (Sandbox Code Playgroud)
mod_rewrite似乎完成了它的工作,如果用户正在访问:
something.swf?param=value,它被正确地重定向到 http://www.newdomain.com/something.swf?param=value
问题出在这种情况:
www.olddomain.com/something.swf?param=URL_ENCODED_VALUE
Run Code Online (Sandbox Code Playgroud)
最终发生的事情是mod_rewrite将它自己重新编码查询字符串参数
所以用户最终得到的是:
www.olddomain.com/something.swf?param=URL_ENCODED_VALUE
Run Code Online (Sandbox Code Playgroud)
重定向
www.newdomain.com/something.swf?param=URL_ENCODED_VALUE_OF_URL_ENCODED_VALUE
Run Code Online (Sandbox Code Playgroud)
所以我们最终得到一个双urlencoded值.boourns!
虽然我明白我们可以制定一个\?(.*)...... ?$1规则,但我认为必须有一种方法告诉mod_rewrite不要urlencode查询字符串参数...我们希望避免使用2条规则,因为有效路径是:
something.swf (no query string)
Run Code Online (Sandbox Code Playgroud)
和
something.swf?someparams...
Run Code Online (Sandbox Code Playgroud)
所以是的,理想情况下......告诉mod_rewrite:请不要查询字符串参数的urlencoding ...只需通过直接传递到新的URL R=302.
我正在努力学习一些.htaccess技巧.我遇到了RewriteBase指令,但无法让它正常工作.
我想知道这个指令具体是什么以及如何使用它.RewriteBase在StackOverflow和Apache文档中已经有过一些讨论但仍然无法得到我的问题的明确答案.
有人可以告诉我一个简单但有效的例子RewriteBase吗?
如果URL 与"论坛"路径不匹配,我该如何执行规则?
例如:
RewriteCond IF URL IS NOT forums
RewriteRule !\.(js|gif|css|jpg|png)$ %{DOCUMENT_ROOT}/index.php [L]
Run Code Online (Sandbox Code Playgroud) 我php.ini在Apache上安装了rewrite_module并进行了修改.
我创建rewrite.php和.htaccess文件,但它不起作用.
/var/www/html
/var/www/html/test
/var/www/html/test/.htaccess
/var/www/html/test/rewrite.php
Run Code Online (Sandbox Code Playgroud)
$ cat /var/www/html/test/.htaccess
RewriteEngine On
RewriteRule ^link([^/]*).html$ rewrite.php?link=$1 [L]
Run Code Online (Sandbox Code Playgroud)
$ cat /var/www/html/test/rewrite.php
<html>
<h2 align=center>
<?php
// mod_rewrite Test Page
// Copyright 2006 Webune.com
if($_GET['link']==1){echo"You are not using mod_rewrite";}
elseif($_GET['link']==2){echo"Congratulations!! You are using Apache mod_rewrite";}
else{echo"Linux Apache mod_rewrte Test Tutorial";}
?>
</h2>
<hr>
<head>
<title>How To Test mod_rewrite in Apache Linux Server</title>
</head>
<body>
<p align="center">by <a href="http://www.webune.com">Webune</a></p>
<p><a href="rewrite.php?link=1">LINK1</a> = rewrite.php?link=1</p>
<p><a href="link2.html">LINK2</a> = …Run Code Online (Sandbox Code Playgroud) 这两个变量有什么区别?
REMOTE_HOST和REMOTE_ADDR.
在计划外系统重新启动后,我的所有Notepad ++ temp(和未保存的)选项卡都消失了.
我将来如何避免这种情况?我不想用文件名显式保存每个临时文件.
是否有NP ++插件,每当我编辑活动标签或每隔X分钟时,它会保存我的会话?
或者是NP ++的等效(和舒适)编辑器,它自动自动存储它的会话?
我有一个表格列record_id(自动公司)sender,sent_time和status.
如果没有特定发件人的任何记录,例如"sender1",我必须插入新记录,否则我必须更新属于"user1"的现有记录.
因此,如果没有任何记录存储,我会执行
# record_id is AUTO_INCREMENT field
INSERT INTO messages (sender, sent_time, status)
VALUES (@sender, time, @status)
Run Code Online (Sandbox Code Playgroud)
否则我会执行UPDATE语句.
无论如何..有没有人知道如何组合这两个语句,以便插入一个新的记录,如果没有任何记录,其中字段发送者值是"user1"否则更新现有的记录?