我不清楚如何构建我的问题。我正在为我的大学节目制作网站,虽然我知道HTML,CSS,但我对PHP一无所知。我只是想显示我的网址: -
www.somesite.com/somepage(类似的东西)
而不是: -
www.somesite.com/somepage/index.html
我该怎么做?谢谢你的帮助。我是所有这一切的新手
编辑:我尝试过这样的事情,只是删除了约束 -
<script>
setTimeout (function () {
if (typeof history.pushState === "function") {
var width = window.innerWidth || screen.width;
if (width < 768) {
history.pushState(null, null, "/short-url");
}
}
}, 10 );
</script>
没有工作。控制台发出错误&#34;无法加载资源&#34;对于很多文件。
答案 0 :(得分:1)
答案取决于特定的Web服务器配置。通常,请求url对应于相对于站点根目录的特定目录路径。某些Web服务器允许在请求URL中省略诸如 index.hml , index.php 之类的资源名称。他们将隐式/some/path
与/some/path/index.html
关联。
请参阅link
答案 1 :(得分:1)
您正在寻找的内容称为URL重写。如果您有权访问.htaccess
文件
您可以在其中定义一些重写规则,例如:
RewriteEngine On # Turn on the rewriting engine
RewriteRule ^www.somesite.com/somepage/?$ www.somesite.com/somepage/index.html [NC,L]
第一部分是用户将要输入的地址,第二部分是他将要引用的实际地址,第三部分是包含有关重写的一些标志的数组。
NC - 规则应不区分大小写
L - 如果使用了这个规则,则不再处理
请注意,您不必使用完整的网址,例如:
RewriteRule ^blog/first-post/?$ /blog/posts/myFirstPost.html [NC,L]
这是一个不错的beginners guide。
答案 2 :(得分:0)
您需要具有与此类似的目录结构:
website/
├── blog
│ └── index.php
├── contact
│ └── index.php
├── index.php
├── projects
│ └── index.php
└── resume
└── index.php
在每个文件夹中(这些是您网站的不同部分),您将.php
或.html
个文件命名为index.
扩展名。这将为您带来理想的效果。
答案 3 :(得分:0)
一种非常简单和愚蠢的方法是在锚标记中包含您想要的网址,并让锚标记指向您想要的网址。例如:
<a href="http://www.somewebsite.com/webpage/index.html">www.somewebsite.com/webpage</a>
另外,根据服务器的操作系统(我知道这对于apache来说是正确的,因为它是我所学到的),你不需要明确指出index.html,它&# 39; ll自动加载目录索引。在某些情况下,如果您像使用/
一样排除了www.somesite.com/somepage
,那么它会重定向到www.somesite.com/somepage/
。这发生在我学校的网站上,我不认为他们已经修好了。