php - 隐藏 URL 中的 PHP 文件扩展名

标签 php html url-rewriting

我将我网站的内容存储在数据库中。它就像一个 CMS。一个将从管理面板添加页面内容,内容将存储在数据库中。

在一页中,我添加了 10-12 个链接作为 <a href="page.php/abc"我的网址看起来像 www.example.com/page.php/abc .我想隐藏.php来自 page.php .如何在不使用 .htaccess 的情况下执行此操作?

我试过 str_replace (从 CMS 添加到页面内容中),但它似乎无法将其识别为 PHP 代码并将其作为字符串。

最佳答案

您可以通过以下方式执行此操作:

要么将此代码放入您的 htaccess file (你不想要的),或者把这段代码放在你服务器的配置文件中:

<IfModule mod_rewrite.c>
  RewriteEngine on
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME}\.php -f
  RewriteRule ^(.*)$ $1.php
</IfModule>

这将从您网站的所有 URL 中隐藏 .php。

就是这样。

关于php - 隐藏 URL 中的 PHP 文件扩展名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46539366/

相关文章:

php - Amazon S3 PHP图像保存curl错误

php - 为什么多维数组一直返回键值 "0"?

html - HTML 表格中不可选择的内容/文本

javascript - 添加新内容时滚动到页面底部(不涉及 AJAX)

php - php 和 mysql 中动态网站的搜索引擎优化/内容列表/url 重写

php - zendfox 安装过程中出错,SQLSTATE[HY000] : General error: 1005 (errno: 150)

php - 使用mysqli_real_connect连接远程MySQL数据库后查询

php - 如果用户的浏览器禁用了 javascript,则使用 javascript 的网页无法工作...那么有什么方法可以在没有 javascript 的情况下运行像 onclick 这样的命令?

.htaccess - Mod 重写以从 Concrete5 cms 中的 url 中删除语言

java - servlet 过滤器重写 URL