【问题标题】:How can I remove the .php extension from my PHP page? [duplicate]如何从我的 PHP 页面中删除 .php 扩展名? [复制]
【发布时间】:2017-01-16 09:24:11
【问题描述】:

我正在尝试从我的 PHP 页面中删除扩展。

例如,www.mywebsite.com/verification.php

我希望人们能够通过www.mywebsite.com/verification 进行验证。

我的代码:

<?php session_start(); ?>
!DOCTYPE html
html lang="en"
head>

meta http-equiv="Content-Type" content="text/html; charset=UTF-8"

【问题讨论】:

  • 了解apache重写模块和重写规则
  • 使用你的 .htaccess 文件
  • 没有迹象表明 OP 正在使用 apache 或启用了 mod_rewrite,因此所有 cmets 和答案基本上都在跳跃。那么 OP 能否请教我们他们是否使用 apache 或其他东西?
  • 添加了一个不使用 HTACCESS 文件的答案

标签: php html url file-extension


【解决方案1】:

根据this website

像这样更改您的 .htaccess 文件:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]

您可以使用.html 扩展名做类似的事情,除了您将最后一行更改为:

RewriteRule ^([^\.]+)$ $1.html [NC,L]

如果您没有.htaccess 文件,请按照@Cagy79 所说的去做:

您可以创建一个目录/verification/ 并将您的脚本放入index.php

这样用户就可以去www.yoursite/verification/而不需要添加index.php部分

【讨论】:

  • 我没有 .htaccess 文件
  • 答案已编辑@LalitaTana
  • 但我不想把它放在目录中。
  • 你能做什么,如果你只是“不想”做某事,我们真的帮不了你。
  • @LalitaTana 我们不是“混蛋”,如果这是暗示的话,我代表我和 Cagy79(主要是我)道歉,但你必须采用其中一种解决方案。如果您不告诉我们您的项目设置,那么我们如何帮助您?我和 Cagy79 向您展示的这两个解决方案都有效,但您必须愿意为自己付出一些努力,因为我们不是代码编写服务
【解决方案2】:

您可以创建一个目录/verification/ 并将您的脚本放在 index.php 中。

通过这种方式,用户可以转到www.mywebsite.com/verification/,而无需添加index.php 部分。

(此外,当您无法编辑 .htaccess 文件或不在 Apache 上时,也可以这样做)

【讨论】:

  • 我没有htaccess文件的原因是什么?
  • 您可以在 Apache Web 服务器上的任何目录中创建一个 .htaccess 文件来配置该目录的特定设置。在某些共享的 PHP 互联网提供商上,您无法访问或编辑这些文件。使用我的解决方案,您根本不需要 .htaccess 文件。
  • 这是一个私人 VP,我试图创建 .htaccess 文件,它什么也没做。 :(
  • 您是否使用 Windows 创建 .htaccess 文件?因为你不能在 Windows 上。
  • nano htaccess (LINUX CENTOS),在我的 /var/www/html/ 文件夹中,我知道 "."htacess 点仅用于隐藏文件,因此我创建了 htacess (但我尝试了它们无论如何:P)
【解决方案3】:

此外,您还可以使用PHP manual security section 中提到的这两个选项

  1. 您可以在 php.ini 文件中将 expose_php 设置为 off。那么在你的服务器上运行 PHP 的信息将不会发送到 header 中。

  2. 您可以使用.htaccess 文件选项来隐藏文件名。提到的可用选项是:

使 PHP 代码看起来像其他代码类型

AddType application/x-httpd-php .asp .py .pl

使 PHP 代码看起来像未知类型

AddType application/x-httpd-php .bop .foo .133t

使所有 PHP 代码看起来像 HTML

AddType application/x-httpd-php .htm .html

不推荐使用最后一种方法,因为所有 HTML 文件都会通过 PHP 解释器运行,即使这不是必需的。

【讨论】:

  • 您能从链接中解释一下吗?不建议仅链接答案,因为链接可能会中断
  • 不需要投票,我需要一些时间来彻底检查答案......
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-07-12
  • 2018-10-20
  • 2018-06-06
  • 2017-09-26
  • 1970-01-01
  • 1970-01-01
  • 2013-04-06
相关资源
最近更新 更多