当您使用ajax向下滚动单个页面时,是否可以更改URL?我在一个页面上都有一个网站,并希望产生这种效果.
例:
www.blablabla.com/blog
Run Code Online (Sandbox Code Playgroud)
用户向下滚动...
www.blablabla.com/blog/entry-name
Run Code Online (Sandbox Code Playgroud)
我知道哈希...我可以掩盖网址吗?
我们如何为Tomcat/Java提供URL重写支持?
mod_rewrite为Apache提供此功能,甚至可以在URL到达处理程序之前修改URL(例如PHP).Java/Tomcat中是否有类似的工具?
更具体地说,我们需要修改,例如
http://www.somedomain.com/person/1
Maps to
http://www.somedomain.com/details?personId=1
这应该对servlet代码透明,即我们应该能够访问request.getParameter("personId")servlet并获取personId(在本例中为1).
你遇到过这种情况吗?你用了什么工具?
很想听听你的建议.
现在我使用AJAX的最大问题是如果我在页面上使用AJAX,转到另一个页面,然后使用浏览器的后退按钮返回用AJAX更改的任何内容.
我已经考虑过使用jQuery Addresss插件来解决这个问题,但我不喜欢它只是用"#whatever.html"修改URL而不是完全改变它.
理想情况下,当我进行相关的AJAX调用时,我希望将URL从"www.example.com/p:2/"改为"www.example.com/p:3/".
这是可能吗?
我需要现有控制器的多语言URL路由.让我解释一下:
我有一个名为"Product"的控制器和名为"Software"的View; 因此,默认情况下,如果用户输入" http://example.com/en/Product/Software ",请获取正确的内容(实际存在于http://example.com/Product/Software中),
但是,如果另一个用户 - 法国用户 - 键入" http://example.com/fr/Produits/logiciels ",则必须获得控制器并显示正确的内容(同样http://example.com/Product/软件,但有法语文本).
注意:我使用"{language}/{controller}/{action}/{id}"设置路由表
任何其他无效的网址都必须显示404页面.
可能吗?
为了从文章标题中创建漂亮的URL,我使用的是一个简单的函数.不过最近我关注这些"slu"的理想长度.据说太多的破折号都很糟糕.
然而,一些文章标题可能很长,谷歌可能不会喜欢太长的网址.当然,这会破坏URL slu的整体想法.
那么有人知道URL slug应该有多长.使用的"破折号"字符是否应该有限制?
我有一个Web应用程序运行@ Windows 2008 R2,ASP.NET v4.0.
我安装了Url Rewrite Module,并开始使用它,如官方示例所示.
我的问题在<rewrite>标签添加到web.config下时开始<system.webServer>- 实际上当我尝试浏览到当前应用程序下的任何页面时,我得到了500 - Internal server error.
这是<rewrite>我一直在添加的块:
<system.webServer>
<rewrite>
<rules>
<rule name="test1">
<match url="^default/([0-9]+)/([_0-9a-z-]+)" />
<action type="Rewrite" url="default.aspx?id={R:1}&title={R:2}" />
</rule>
</rules>
</rewrite>
</system.webServer>
Run Code Online (Sandbox Code Playgroud) 如何模拟和检查的URL重写规则中的Apache 2,当sharehosting RewriteLog被禁用,或不容许在.htaccess进行设置?换句话说,是否有任何工具/模拟器来测试一个url重写独立托管,检查看看possibel重写循环等?
谢谢!
我正在尝试使用Rewrite Module 2.0进行URL 重写,但我没有运气让它工作.我要做的是将端口80上的所有对Web应用程序的调用重新写入IIS中托管的其他应用程序(或者可能在网络上的不同服务器上).使用IIS提供的GUI我创建了以下规则:
<rewrite>
<rules>
<rule name="ReverseProxyInboundRule1" stopProcessing="true">
<match url="site1/(.*)" />
<action type="Rewrite" url="http://localhost:7001/{R:1}" />
</rule>
</rules>
</rewrite>
Run Code Online (Sandbox Code Playgroud)
安静简单,但不幸的是它不起作用.另一方面,当我将动作类型更改为时Redirect,它可以正常工作.
可能是什么问题呢?
我有这个链接:
如果你访问它,这将成为:
如何从第一个链接获取第二个链接?
我试过这个但是没有用,给我的第一个链接回复:
<?php
$url="http://libero-news.it.feedsportal.com/c/34068/f/618095/s/2e34796f/l/0L0Sliberoquotidiano0Bit0Cnews0C12735670CI0Esaggi0Eper0Ele0Eriforme0Ecostituzionali0EChiaccherano0Ee0Eascoltano0Bhtml/story01.htm";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$a = curl_exec($ch);
print_r($a);echo"<br>";
if(preg_match('#Location: (.*)#', $a, $r)){
$l = trim($r[1]);
echo $l;
}else echo "not working";
?>
Run Code Online (Sandbox Code Playgroud)
非常感谢.
有没有办法将RewriteBase设置为相对于主机根目录的当前文件夹(.htaccess文件所在的文件夹)?
我有一个CMS,如果我将它移动到我的主机中的目录,它将无法工作,除非我将RewriteBase设置为相对于主机根目录的路径.我希望我的CMS只能使用复制和粘贴,而无需更改htaccess中的任何代码.
例如:
webroot
- sub_directory
- cms
- .htaccess
Run Code Online (Sandbox Code Playgroud)
在这种情况下,我应该写在htaccess: RewriteBase /
如果我在sub_directory中移动htaccess,我应该将RwriteBase更改为:
RewriteBase /sub_directory/
所以我想要类似的东西
RewriteBase /%{current_folder}/
url-rewriting ×10
ajax ×2
apache ×2
asp.net ×2
mod-rewrite ×2
redirect ×2
.htaccess ×1
.net ×1
apache2 ×1
asp.net-mvc ×1
c# ×1
friendly-url ×1
iis ×1
iis-7 ×1
java ×1
javascript ×1
jquery ×1
php ×1
regex ×1
routing ×1
seo ×1
servlets ×1
tomcat ×1
url ×1