Skip to content
Snippets Groups Projects
Commit 70e2e96d authored by Dominik Hebeler's avatar Dominik Hebeler
Browse files

Die Headerleiste vom Proxy wurde im Vergleich zu vorher deutlich

verkleinert.
Wird der Proxy mit einem Mobilgerät abgerufen, wird nun auch ein Dummy
Useragent für ein mobiles Gerät verwendet
parent 4415f82c
No related branches found
No related tags found
No related merge requests found
......@@ -7,3 +7,5 @@
Homestead.json
Homestead.yaml
.env
/.project
/.settings/
......@@ -235,7 +235,15 @@ class ProxyController extends Controller
private function initCurl()
{
$this->ch = curl_init();
curl_setopt($this->ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; rv:45.0) Gecko/20100101 Firefox/45.0');
$useragent=$_SERVER['HTTP_USER_AGENT'];
if(preg_match('/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i',$useragent)||preg_match('/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i',substr($useragent,0,4))){
// Mobile Browser Dummy Mobile Useragent
curl_setopt($this->ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Mobile Safari/537.36');
}else{
// Not Mobile Dummy Desktop useragent
curl_setopt($this->ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; rv:45.0) Gecko/20100101 Firefox/45.0');
}
curl_setopt($this->ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($this->ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($this->ch, CURLOPT_RETURNTRANSFER, 1);
......@@ -421,7 +429,8 @@ class ProxyController extends Controller
$dateString = date('D M d H:i:s Y');
$logString = $dateString . "\t" . $targetUrl . "\t" . $ip . "\n";
file_put_contents($logFile, $logString, FILE_APPEND);
if(file_exists($logFile)){
file_put_contents($logFile, $logString, FILE_APPEND);
}
}
}
nav {
margin-top: 10px;
height: 100px;
border-bottom: 10px solid #fb0;
border-bottom: 5px solid rgb(255,128,0);
height:48px;
overflow: hidden;
}
nav #proxy-logo {
text-align: center;
nav>.main {
display: flex;
align-items: center;
}
nav #proxy-logo img {
max-width: 200px;
nav>.main>.metager-logo {
flex-grow: 0;
width:90px;
}
nav #proxy-logo img {
width: 100%;
nav>.main>.metager-logo img {
width: 80px;
margin-right:10px;
}
nav #proxy-text {
text-align: center;
nav>.main>.navigation {
flex-grow: 1;
}
nav #proxy-text > ul > li + li {
color: #428bca;
nav>.main>.navigation input {
font-size: 12px;
padding: 3px 12px;
height: 23px;
}
nav #proxy-advertisement > a {
display: block;
color: #333;
text-decoration: none;
}
nav #proxy-advertisement {
text-align: center;
border: 1px solid lightgrey;
border-radius: 5px;
padding: 0;
}
nav #proxy-advertisement > a > p {
margin: 0;
}
nav #proxy-advertisement > a > p.heading {
font-weight: bold;
font-size: 16px;
}
nav #proxy-advertisement > a > p.url {
color: #428bca;
}
nav #proxy-advertisement > a:hover p.url {
text-decoration: underline;
}
nav #proxy-advertisement .ad-marker {
position: absolute;
right: 15px;
color: lightgrey;
font-size: 12px;
nav>.main>#proxy-text {
flex-grow: 0;
margin: 0 5px;
}
#site-proxy-iframe {
border: 0;
width: 100%;
height: calc(100% - 144px);
border: 0;
width: 100%;
height: calc(100% - 53px);
}
.content-container {
border-radius: 7px;
margin-top: 50px;
box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.3);
border-radius: 7px;
margin-top: 50px;
box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.3);
}
\ No newline at end of file
@extends('layouts.app')
@extends('layouts.app', ['url' => $targetUrl])
@section('content')
<div class ="container-fluid">
<input class="form-control" type="text" value="{{$targetUrl}}" readonly/>
</div>
<iframe
id="site-proxy-iframe"
src="{!!$iframeUrl!!}"
......
<html>
<head>
<meta charset="utf-8" />
<link href="/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
<link href="/css/style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<nav>
<div class="container-fluid">
<div class="row">
<div id="proxy-logo" class="visible-lg col-lg-2">
<a href="https://metager.de">
<img src="/img/mglogo_klein.png" />
</a>
</div>
<div id="proxy-text" class="col-xs-6 col-lg-5">
@if(isset($targetUrl))
<ul class="list-unstyled">
<li><nobr>MetaGer/SUMA-EV Proxy (Beta): Anonymisiert & verschlüsselt.</nobr> <nobr>SUMA-EV ist weder Eigentümer noch Urheber von Inhalten.</nobr></li>
<li>Skripte sind deaktiviert. Webseiten-Darstellung kann verändert sein.</li>
<li><a href="{!!$targetUrl!!}" class="btn btn-danger btn-xs">Proxy ausschalten</a></li>
</ul>
@endif
</div>
<div id="proxy-advertisement" class="col-xs-6 col-lg-5">
<a href="http://metager.to/k25u0" target="_blank">
<span class="ad-marker">Anzeige</span>
<p class="heading">Samsung Galaxy S7 im Preisvergleich</p>
<p class="url">www.idealo.de/preisvergleich/samsung-galaxy-s7/</p>
<p class="line">Jetzt Samsung Galaxy S7 ohne Vertrag zum günstigsten Preis finden!</p>
<p class="line">Große Shopvielfalt, Testberichte & Meinungen. Jetzt auf idealo.de</p>
</a>
</div>
</div>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<link href="/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
<link href="/css/style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<nav>
<div class="main">
<div class="metager-logo">
<a href="https://metager.de"> <img src="/img/mglogo_klein.png">
</a>
</div>
<div class="navigation">
<input class="form-control" type="text" value="{{$targetUrl}}" readonly="">
</div>
<div id="proxy-text" class="">
<a href="http://www.duden.de/rechtschreibung/Trug"
class="btn btn-danger btn-xs">Proxy ausschalten</a>
</div>
</nav>
</div>
<div style="text-align: center; font-size: 11px;">SUMA-EV ist
weder Eigentümer noch Urheber von Inhalten. Skripte sind
deaktiviert. Webseiten-Darstellung kann verändert sein.</div>
</nav>
@yield('content')
@yield('content')
<script src="/js/jquery.min.js"></script>
<script src="/js/bootstrap.min.js"></script>
<script src="/js/script.js"></script>
</body>
<script src="/js/jquery.min.js"></script>
<script src="/js/bootstrap.min.js"></script>
<script src="/js/script.js"></script>
</body>
</html>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment