【问题标题】:PHP files without extensions没有扩展名的 PHP 文件
【发布时间】:2017-12-16 11:24:00
【问题描述】:

不好用吗:

ForceType application/x-httpd-php

并保存没有文件扩展名的文件(例如index而不是index.php)?目的是从 URL 中隐藏/删除 .php 并阻止用户手动放置例如/example.php.

【问题讨论】:

  • 使用.htaccess隐藏扩展。
  • 是的,我在 Windows 上安装了 WAMP,它对我有用。

标签: php .htaccess


【解决方案1】:

要删除文件扩展名,请将其添加到 .htaccess :

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

.php 更改为正确的文件扩展名

新链接:

<a href="file">link text</a>

编辑:

将文件另存为index.phpabout.php

【讨论】:

  • 这对子目录中的文件有效吗?例如/folder/script => /folder/script.php?
  • 如果你把它放在你的根目录的 .htaccess 文件中,它将适用于所有封闭的子文件夹。这意味着根目录下的 .htaccess 文件会影响 /sub/file.php(现在是 /sub/file),但 /sub/.htaccess 不会影响 /file.php
  • .htaccess 进入子文件夹。也许您的文件是不同的扩展名?如果您的所有文件都具有相同的扩展名(即.php),请尝试将您的.htaccess 文件复制到子文件夹中,看看它是否能解决您的问题。
【解决方案2】:

是的。是的,这很糟糕。

正确的做法是使用mod_rewrite.htaccess 文件。

【讨论】:

    【解决方案3】:

    更改扩展名不是很好的做法,因为它每次都需要配置 Web 服务器,因此这是一个可移植性问题。

    您应该使用 .htaccess 指令来设置任何级别的自定义。 在最佳实践中,您可以将所有请求路由到 index.php 以避免直接访问 php 文件。

    【讨论】:

      猜你喜欢
      • 2019-07-07
      • 2016-12-24
      • 2021-07-18
      • 2012-12-24
      • 2013-08-03
      • 2017-12-15
      • 2013-11-03
      • 2017-06-27
      • 1970-01-01
      相关资源
      最近更新 更多