假设我在www.hostname.com/example上有一个网站。我想创建一个页面,根据原始url的任何扩展生成。例如,我会有一个名为setup.php的页面。如果有人访问www.hostname.com/example/xyz,它会加载setup.php,并将xyz作为变量来自定义setup.php。这可能吗?我试过在谷歌上搜索,但没有找到结果。有什么想法吗?
创建一个名为.htaccess
的文件,并将其放置在主目录中。然后把这个代码放进去:
RewriteEngine on
RewriteBase /
RewriteRule ^(.*)$ setup.php?data=$1 [QSA,L]
现在,无论您打开哪个url,文件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";
}
?>
以url http://www.noticeeverything.com/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);
或者,如果你不知道url具体是什么,但希望它遵循相同的模式(即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);
希望能有所帮助。