如果我有一个名为" dir"的目录使用名为" index.php"的文件,是否可以处理URL中的字符串而不在URL中明确定义任何变量?
EG。如果用户键入http://domain.com/dir/hello.world
是否有可能处理这个' hello.world'来自dir / index.php而不将其假定为不存在的文件?
我假设这是一个htaccess的事情,我知道如何使用htaccess将变量隐藏在网址中(所以/index.php?var=something
会变成/var/something
)但我不知道我是怎么做的,所以它只是/something
。
答案 0 :(得分:2)
您正在寻求实施通常被称为“漂亮网址”的内容。您可以通过强制所有非文件或目录的请求到.htaccess中的index.php来执行此操作:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^.*$ ./index.php
然后你可以将你的参数拉出请求uri:
$_SERVER['REQUEST_URI'];