【问题标题】:Accessing a websites home file without the file name and extension访问没有文件名和扩展名的网站主页文件
【发布时间】:2012-12-11 11:24:48
【问题描述】:

我正在开发一个具有如下 URL 的网站:

http://www.domain.com/directory/home.php

我想知道是否可以设置网站以便用户可以像这样访问它:

http://www.domain.com/directory/

而浏览器会自动找到并渲染home.php文件?

非常感谢!

【问题讨论】:

  • 我假设您使用的是Apache,请重新标记以防您使用其他东西。

标签: apache http url url-routing


【解决方案1】:

假设您使用的是Apache,来自docs

DirectoryIndex 指令设置要查找的资源列表, 当客户端通过指定 / 请求目录索引时 在目录名称的末尾。 Local-url 是 (%-encoded) URL 服务器上相对于请求目录的文档;它是 通常是目录中文件的名称。可能有几个 URL 给定,在这种情况下,服务器将返回它的第一个 发现。如果不存在任何资源并且设置了 Indexes 选项, 服务器将生成自己的目录列表。

将此添加到httpd.conf 文件中:

DirectoryIndex home.php

然后要从 URL 中删除 .php,请将其添加到根文件夹中的 .htaccess 文件中。

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*) $1.php [L]

【讨论】:

  • 感谢您的回复!有没有办法在使用共享的 apache 服务器时做到这一点?我无权访问httpd.conf 文件,因为我没有使用专用服务器。
  • 我没试过,不过你可以试试把DirectoryIndex home.php加到.htaccess上,应该可以的
猜你喜欢
  • 2014-12-14
  • 2010-09-24
  • 2011-04-02
  • 1970-01-01
  • 2016-12-24
  • 2010-11-10
  • 1970-01-01
  • 1970-01-01
  • 2012-12-24
相关资源
最近更新 更多