php - 如何在没有文件扩展名的情况下调用我的文件/函数名
问题描述
我在我的网站根文件夹中创建了一个文件 buy.php,并在这个文件中创建了 webservice。
当我使用 buy.php/book 调用 API 时,它会返回给我结果。这里 /buy.php 是文件路径,book 是函数名。
但我想使用购买/预订来调用这个 API。但它没有给我显示的结果此外,在尝试使用 ErrorDocument 处理请求时遇到了 500 Internal Server Error 错误。
它以前运行良好突然停止它可以由.htaccess处理请帮助我
谢谢 问候
这是我的 .htaccess
Options -MultiViews
RewriteEngine on
# skip all files and directories from rewrite rules below
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ - [L]
# add php if possible
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^ %{REQUEST_URI}.php [L]
# rewrite other to index.php file
RewriteRule ^ /index.php [L]
解决方案
我不是 htaccess 专家,但这适用于我的 api。
RewriteRule ^buy/(.*) /buy.php?book=$1 [NC,L]
我认为“书”是一个变量。所以我将它作为变量传递给脚本。那是对的吗?
推荐阅读
- python - 在python中用多个变量解决等式和不等式
- php - AmPHP 缓冲区永远存在
- kivy - 如何在按钮上定位/添加填充
- php - PHP中的匹配括号
- r - 在 R 中编写组合
- azure-devops - Azure Pipelines 中是否有“/home/vsts”的预定义变量?
- ios - 通用二进制框架,..../TestTarget 具有相同的架构(arm64),不能在同一个胖输出文件中
- terraform - Azure 上的 Terraform:使用变量作为参数从本地文件执行 Windows VM 的 powershell 脚本
- vba - 设置邮箱已回复-vba
- codeigniter-4 - 在 Codeigniter4 中为整个控制器创建/包含一个模型