php - 有没有办法从修改后的 url 中检索 $_GET 内容
问题描述
我正在努力使我的 URL 整洁。这是我的原始网址:
https://example.com/cssgzip.php?file=/assets/css/main.css
我使它看起来像这样:
https://example.com/cssgzip/assets/css/main.css
我用它来删除.php
扩展名:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule !.*\.php$ %{REQUEST_FILENAME}.php [QSA,L]
像这样:
https://example.com/cssgzip?file=/assets/css/main.css
我用它来删除?file=
:
RewriteEngine On
RewriteRule ^([a-zA-Z0-9]+)/$ cssgzip.php?file=$1
像这样:
https://example.com/cssgzip/assets/css/main.css
但是现在,当我继续运行$_GET['file']
时https://example.com/cssgzip/assets/css/main.css
,什么也没有回来。
我试过$_REQUEST['file']
了,那也是空的。
有什么我做错了吗?我能做些什么呢?
解决方案
通过删除?file=
,您删除了file
变量的值声明,因此$_GET['file']
没有任何价值。例如,如果您手动更改?file=
url 中的值,它也会更改变量的值。
如果您使用 GET 方法,则需要在 url 中包含该方法。否则,使用 POST。
推荐阅读
- java - 无法在android中对布局的可见+不可见部分进行完整截图
- java - Firebase Firestore 异步行为问题
- mysql - MySQL:无法使用外键创建表
- flutter - 如何在加载main()时设置检查连接的布尔值,然后用它来显示哪个屏幕
- reactjs - createBottomTabNavigator 与不同选项卡的动态 tabStyle
- api - Flutter 应用程序继续使用旧的 API 端点而不是新版本
- postgresql - Postgresql SELECT ORDER BY 由 WITH 生成的列
- python - 无法导入名称 shared_memory
- c# - 行数有限的 DataGridView
- php - Laravel、Vue.js 评论系统分页