我有这种奇怪的行为,如果路径不包含句点(例如 /whatever-something/a-page ),则该$_SERVER
变量SCRIPT_NAME
将替换为 index.html 或 index.php 如果它们存在于根文件夹中。SCRIPT_NAME
是正确的值: /whatever.something/a-page 当根文件夹中没有 index.html 或 index.php 时。
我检查了 Symfony 提供的 router_dev.php 中的 SCRIPT_NAME 值。
我像这样运行服务器:app/console server:run
示例 1 - 好
Directory structure:
web/index.html
Path:
/whatever.something/a-page
SCRIPT_NAME value:
/whatever.something/a-page
示例 2 - 好
Directory structure (empty):
web/
Path:
/whatever-something/a-page
SCRIPT_NAME value:
/whatever-something/a-page
示例 3 - 很奇怪!
Directory structure:
web/index.html
Path:
/whatever-something/a-page
SCRIPT_NAME value:
/index.html
这导致我的应用程序基本上在每个不包含句点的请求上提供 index.html。
谁能告诉我到底发生了什么?