Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/EmptyTag/151.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel 防止从url读取后端url_Laravel_Url_Content Management System_Backend - Fatal编程技术网

Laravel 防止从url读取后端url

Laravel 防止从url读取后端url,laravel,url,content-management-system,backend,Laravel,Url,Content Management System,Backend,我知道标题有点混乱,但我会在这里解释 我有一个CMS供用户插入自己的信息。因此,在作为URL字段的页面中: 这意味着用户可以插入任何格式,例如 backend.com 这个url将在前端添加一个按钮。单击后,将相应地重定向到url 现在我面临的问题是3rdpointbackend.com格式。如果用户在后端输入com并单击前端的此按钮,他们将重定向到https://mywebsite.com/backend.com. 应该改为重定向到backend.com 我正在使用Laravel并使用{{$u

我知道标题有点混乱,但我会在这里解释

我有一个CMS供用户插入自己的信息。因此,在作为URL字段的页面中:

这意味着用户可以插入任何格式,例如

backend.com 这个url将在前端添加一个按钮。单击后,将相应地重定向到url

现在我面临的问题是3rdpointbackend.com格式。如果用户在后端输入com并单击前端的此按钮,他们将重定向到https://mywebsite.com/backend.com. 应该改为重定向到backend.com

我正在使用Laravel并使用{{$url}}从数据库中读取数据。简化代码如下:

//html
<a id="book-submit">Book</a>

//javascript
$("#book-submit").on('click', function(){
    $.ajax({
        url: '',
        type: "POST",
        data:{
         },success :function(response) {
            window.location.href='{{$url}}';
        }
    })
});

//mysql
$check= DB::connection('mysql_api')->table('course')->select('url')->first();
$data['url'] = $check->url;

有什么方法可以防止这种情况发生吗?希望你们中的一些人能给我一些建议。谢谢

要使用window.location.href引用另一个页面,您需要在其上添加http://或https://内容

如果您的数据库中已有数据url,但没有http://或 https://,您需要像您一样通过自己的逻辑来操作它 使用strpos或“regex” 您可以验证用户输入 有关某些信息,您可以使用[FILTER\u VALIDATE\u URL]来验证URL


有关其他标志,请参见。您能否详细说明问题的具体原因。你的前端在哪里https://mywebsite.com/backend.com? 为什么这是个问题?你在期待什么?我有一个从后端读取此url的按钮。所以,如果用户插入backend.com,如果我单击按钮,它将重定向到backend.com。但是我重定向到了INSTEADE,你是在调用url'backend.com'吗?因为该函数将您的站点url预先添加到您提供的任何内容。我们要求的是如何填充$url。要使用window.location.href引用其他页面,您需要在其上添加http://或https://这就是为什么当仅backed.com时,它仅重定向到您自己的服务器