假设我在www.hostname.com/example有一个网站。我想创建一个基于原始URL的任何扩展生成的页面。例如,我有一个名为setup.php的页面。如果有人要去www.hostname.com/example/xyz,它会加载setup.php,并使用xyz作为变量来自定义setup.php。这可能吗?我试过搜索谷歌,但没有找到任何结果。有什么想法吗?
答案 0 :(得分:1)
以网址http://www.noticeeverything.com/news/
为例。你可以像这样抓住字符串“news”:
var url = window.location.href;
var str = url.substring(32, 36);
console.log(str);
或者,无需确定所需子字符串的索引:
var url = window.location.href;
var str = url.replace('http://www.noticeeverything.com/news/', 'news');
console.log(str);
或者,如果您不知道具体的网址是什么,但希望它遵循相同的模式(即“http://www.something.com/something/”):
var pattern = /[a-z]+/;
var url = window.location.href;
var newString = url.replace("http://www.", '').replace(pattern, '').replace('.com/', '').replace('/', '');
console.log(newString);
希望有所帮助。
答案 1 :(得分:1)
创建一个名为.htaccess
的文件并将其放在主目录中。然后将此代码放入其中:
RewriteEngine on
RewriteBase /
RewriteRule ^(.*)$ setup.php?data=$1 [QSA,L]
现在无论您打开哪个网址,都会执行文件setup.php
,您可以使用$_GET['data']
变量获取所请求的数据。例如:
<?php
$data = $_GET['data'];
if($data === 'xyz') {
echo "<b>xyz</b> is requested!";
include "xyz.php";
}
else {
echo "error 404: page not found";
}
?>