【问题标题】:How to hide .html extension in url using Javascript如何使用 Javascript 在 url 中隐藏 .html 扩展名
【发布时间】:2014-01-21 07:07:38
【问题描述】:

有没有办法使用 JavaScript 从 URL 中隐藏 .html 扩展。

例如:

mysite.htmlhide.html 来自 url

【问题讨论】:

  • 我不知道 javascript,但如果您使用 PHP 作为服务器端语言,您只需打开 localhost/folder_name/index.php 作为 localhost/folder_name
  • 不!你不能那样做。
  • @VikasSangle 这与语言无关,但与服务器设置/托管设置有关,如 IIS 等。 Ontopic:你为什么要这样做?为人们隐藏东西并不是一个真正的方法,除非你在谈论 url 重写。
  • 您总是看到您通过 HTTP 请求的页面。客户端语言无法决定您从服务器获得的响应。

标签: javascript jquery html


【解决方案1】:

你不能通过javascript来实现,这需要通过.htaccess文件来完成:

RewriteEngine on  
RewriteCond %{REQUEST_FILENAME} !-d  
RewriteCond %{REQUEST_FILENAME}\.html -f  
RewriteRule ^(.*)$ $1.html

更多关于mod_rewrite模块here的信息。

【讨论】:

    【解决方案2】:

    您可以使用 html5,也可以在服务器端使用 url 重写或 seo 友好的 url。

    window.history.pushState({"html":'<html></html>',"pageTitle":'this is my title'},"", 'http://stackoverflow.com/mynewurl');
    

    但请记住,您只能将 url 更改为与原始域相同的域!

    有一个很棒的库叫做history.js,它有助于跨浏览器和版本兼容性

    【讨论】:

      猜你喜欢
      • 2012-11-30
      • 1970-01-01
      • 2012-04-19
      • 2010-12-31
      • 1970-01-01
      • 2012-11-25
      • 2011-11-14
      • 2014-03-23
      • 2011-09-08
      相关资源
      最近更新 更多