URL中的一个很好的变量(PHP + Apache)

时间:2017-03-16 10:46:33

标签: javascript php apache

昨天我问了同样的问题,但被投票了。苦苦挣扎了一整天,在相关的答案和文件中找到答案,但没有任何运气。

我再次重复这个问题,也许这次我可以更清楚地传达它。

我在 site.com

上有一个单页应用

需要让用户使用url创建任何传递到前端的变量。变量应该在url中可见,即使这样的页面不存在,例如 site.com/variable (网址格式应完全如下所示)。

对于后端我使用的是PHP和Apache。

我的htaccess文件如下所示:

RewriteEngine On
RewriteRule ^/(.*)$ /$1 [QSA,L]

2 个答案:

答案 0 :(得分:0)

您要找的是URL rewriting。这是一个众所周知的功能,允许将模板URL重写为特定的URL。最常见的用例是将URL的组件移动到GET参数。

我并不习惯Apache,但像这样的.htaccess文件应该可以胜任

RewriteEngine on

RewriteRule ^(.*)$ index.php?variable=$1 [QSA,L]

因此,根目录旁边的所有内容都应该转移到index.php,用所有内容填充$ _GET ['variable']。该操作发生在apache端,因此客户端没有可见的URL更改。

答案 1 :(得分:0)

index.php
<a href="1">click</a>

submit.php
<?php 
echo $_GET['id'];
 ?>

.htaccess
RewriteEngine on
RewriteRule ^([A-Za-z0-9-]+)/?$  submit.php?id=$1    [NC,L]