如何根据唯一 ID 创建 url 虚拟 'directory'
How to make a url virtual 'directory' based on unique Ids
让我们从一个例子开始:我想做 Tumblr 正在做的事情。更具体地说,每次单击 'reblog' 按钮时,URL 都会更改为 "/reblog/UNIQUEID/UNIQUEID/"。
但显然他们没有数百万个目录,每个目录中有 html 个文件。
所以我想知道,如果我想做一个类似的东西,我会怎么做?
我们可以通过 PHP GET 获取唯一 ID,然后使用 JavaScript 更改 URL 以将其显示为 "/dir/uniqueId" "/dir?=uniqueId" 但这看起来很麻烦。
如果我们这样做,它还会带来一个新问题:如果用户在 URL 栏中输入 "/dir/uniqueId" 会怎样... .那是行不通的,因为它是来自 JavaScript.
的编辑字符串
我不熟悉 htaccess,但我很确定它对答案有很大的影响。
那么,如何解决这个可怕的 url 语法(?= 等)问题,使其看起来更像目录,但根本上不是?
回顾:
如何在使用 PHP/htaccess 时使 /dir/uniqueId 工作,但 uniqueId 不是目录或实际文件
这是一个例子...
.htaccess
RewriteEngine on
RewriteRule ^reblog/([^/\.]+)/?$ index.php?reblog= [L]
index.php
if (isset($_GET['reblog'])) {
$uniqueId = $_GET['reblog'];
//Do some stuff with that $uniqueId
}
url 例子
http://www.somesite.com/reblog/foo123bar
您可以根据此示例进行构建以满足您的要求。就你现在的问题而言,它太宽泛了,无法提供更具体的答案。
让我们从一个例子开始:我想做 Tumblr 正在做的事情。更具体地说,每次单击 'reblog' 按钮时,URL 都会更改为 "/reblog/UNIQUEID/UNIQUEID/"。 但显然他们没有数百万个目录,每个目录中有 html 个文件。
所以我想知道,如果我想做一个类似的东西,我会怎么做? 我们可以通过 PHP GET 获取唯一 ID,然后使用 JavaScript 更改 URL 以将其显示为 "/dir/uniqueId" "/dir?=uniqueId" 但这看起来很麻烦。
如果我们这样做,它还会带来一个新问题:如果用户在 URL 栏中输入 "/dir/uniqueId" 会怎样... .那是行不通的,因为它是来自 JavaScript.
的编辑字符串我不熟悉 htaccess,但我很确定它对答案有很大的影响。
那么,如何解决这个可怕的 url 语法(?= 等)问题,使其看起来更像目录,但根本上不是?
回顾: 如何在使用 PHP/htaccess 时使 /dir/uniqueId 工作,但 uniqueId 不是目录或实际文件
这是一个例子...
.htaccess
RewriteEngine on
RewriteRule ^reblog/([^/\.]+)/?$ index.php?reblog= [L]
index.php
if (isset($_GET['reblog'])) {
$uniqueId = $_GET['reblog'];
//Do some stuff with that $uniqueId
}
url 例子
http://www.somesite.com/reblog/foo123bar
您可以根据此示例进行构建以满足您的要求。就你现在的问题而言,它太宽泛了,无法提供更具体的答案。