php短網址超簡單代碼
來源:互聯網
上載者:User
php短網址超簡單代碼
系統內容:
php,apache2,linux
產生php短網址的操作:
把代碼複製到index.php放在一個只有1個字元(如u)作為檔案夾名的二級目錄中。
為此目錄增加寫入權限,圖省事就chmod 777 u (根目錄也行,為避免影響別的檔案可能要改改代碼)
網址產生結果:
把http://www.heimaolianmeng.com/heimaoseojishu/變成http://127.0.0.1/u/1
php產生短網址的原理:
1,通過form post擷取要變短的url
2,把url放在一個javascript內寫入檔案,檔案名稱按數字增長。javascript的作用就是跳轉到指定的url
可最佳化:
如果可以設定次層網域,那就把次層網域指向那個目錄就好了,就不用多輸入一個 u/。
代碼:
程式碼範例:
<html>
<head>
<meta charset="utf-8" />
<title>Shorten URL</title>
</head>
<body>
URL to be shortened: (must include protocol like http:// or https:// etc.)<br />
<form method="post">
<textarea rows='3' name="url" ></textarea><br />
<input type="submit" value="submit" />
<form><br />
<?php
if (isset($_POST['url'])) {
$origin = $_POST['url'];
if (strlen($origin) > 10) {
$filename = count(scandir('.')) - 3; // strip php self . ..
file_put_contents($filename,
'<script type="text/javascript">location.href="'.$origin.'"</script>');
$shortened = "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF']).'/'.$filename;
echo 'Original URL is<br /><a href="'.$origin.'">'.$origin.'</a><br />'
.'Shortened URL is<br /><a href="'.$shortened.'">'.$shortened.'</a>';
} else {
echo "The URL you entered is NOT valid.";
}
}
?>
</body>
</html>
產生以數字為檔案名稱的檔案:
程式碼範例:
<script type="text/javascript">location.href="http://www.heimaolianmeng.com/heimaoseojishu/"</script>