<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>开发项目 on 松鼠A的博客</title><link>https://www.sshuo.cc/categories/%E5%BC%80%E5%8F%91%E9%A1%B9%E7%9B%AE/</link><description>Recent content in 开发项目 on 松鼠A的博客</description><generator>Hugo -- gohugo.io</generator><language>zh-cn</language><copyright>© 2026 sshuo</copyright><lastBuildDate>Fri, 07 Apr 2023 15:35:36 +0800</lastBuildDate><atom:link href="https://www.sshuo.cc/categories/%E5%BC%80%E5%8F%91%E9%A1%B9%E7%9B%AE/index.xml" rel="self" type="application/rss+xml"/><item><title>近期项目知识随记</title><link>https://www.sshuo.cc/2023/04/07/%E8%BF%91%E6%9C%9F%E9%A1%B9%E7%9B%AE%E7%9F%A5%E8%AF%86%E9%9A%8F%E8%AE%B0/</link><pubDate>Fri, 07 Apr 2023 15:35:36 +0800</pubDate><guid>https://www.sshuo.cc/2023/04/07/%E8%BF%91%E6%9C%9F%E9%A1%B9%E7%9B%AE%E7%9F%A5%E8%AF%86%E9%9A%8F%E8%AE%B0/</guid><description>&lt;p&gt;年初被迫接受了一个开发任务，自己从来没做过产品及开发只能硬着头皮上。一边百度一边AI，终于最近有了些进展。随手记一下学到的知识点，比较细碎，记下来或许有用。&lt;/p&gt;</description></item><item><title>C#学习副产物--编码助手（本地编码小工具）</title><link>https://www.sshuo.cc/2020/01/13/C%23%E5%AD%A6%E4%B9%A0%E5%89%AF%E4%BA%A7%E7%89%A9--%E7%BC%96%E7%A0%81%E5%8A%A9%E6%89%8B%EF%BC%88%E6%9C%AC%E5%9C%B0%E7%BC%96%E7%A0%81%E5%B0%8F%E5%B7%A5%E5%85%B7%EF%BC%89/</link><pubDate>Mon, 13 Jan 2020 20:51:00 +0800</pubDate><guid>https://www.sshuo.cc/2020/01/13/C%23%E5%AD%A6%E4%B9%A0%E5%89%AF%E4%BA%A7%E7%89%A9--%E7%BC%96%E7%A0%81%E5%8A%A9%E6%89%8B%EF%BC%88%E6%9C%AC%E5%9C%B0%E7%BC%96%E7%A0%81%E5%B0%8F%E5%B7%A5%E5%85%B7%EF%BC%89/</guid><description>&lt;p&gt;最近开始学习C#了&lt;/p&gt;&#10;&lt;p&gt;起因是有天夜里突然想到总结一下自己这些年都有什么成果，结果总结了总结发现目前为止自己写的所有东西都是黑框框（web除外）。又想了想自己都会什么语言，发现自己根本没有会一种“沉稳”的语言。于是乎就就结合自己的情况决定学习C#&lt;/p&gt;</description></item><item><title>学习副产物--编码助手（本地编码小工具）</title><link>https://www.sshuo.cc/2020/01/13/%E5%AD%A6%E4%B9%A0%E5%89%AF%E4%BA%A7%E7%89%A9--%E7%BC%96%E7%A0%81%E5%8A%A9%E6%89%8B%EF%BC%88%E6%9C%AC%E5%9C%B0%E7%BC%96%E7%A0%81%E5%B0%8F%E5%B7%A5%E5%85%B7%EF%BC%89/</link><pubDate>Mon, 13 Jan 2020 20:51:00 +0800</pubDate><guid>https://www.sshuo.cc/2020/01/13/%E5%AD%A6%E4%B9%A0%E5%89%AF%E4%BA%A7%E7%89%A9--%E7%BC%96%E7%A0%81%E5%8A%A9%E6%89%8B%EF%BC%88%E6%9C%AC%E5%9C%B0%E7%BC%96%E7%A0%81%E5%B0%8F%E5%B7%A5%E5%85%B7%EF%BC%89/</guid><description>&lt;p&gt;最近开始学习C#了&lt;/p&gt;&#10;&lt;p&gt;起因是有天夜里突然想到总结一下自己这些年都有什么成果，结果总结了总结发现目前为止自己写的所有东西都是黑框框（web除外）。又想了想自己都会什么语言，发现自己根本没有会一种“沉稳”的语言。于是乎就就结合自己的情况决定学习C#&lt;/p&gt;</description></item><item><title>phpstudy中Apache无法启动问题</title><link>https://www.sshuo.cc/2019/07/12/phpstudy%E4%B8%ADApache%E6%97%A0%E6%B3%95%E5%90%AF%E5%8A%A8%E9%97%AE%E9%A2%98/</link><pubDate>Fri, 12 Jul 2019 19:55:00 +0800</pubDate><guid>https://www.sshuo.cc/2019/07/12/phpstudy%E4%B8%ADApache%E6%97%A0%E6%B3%95%E5%90%AF%E5%8A%A8%E9%97%AE%E9%A2%98/</guid><description>&lt;p&gt;使用phpstudy时其中Apache无法启动，点击启动后再次自动关闭&lt;/p&gt;</description></item><item><title>菜鸡练手---表白墙</title><link>https://www.sshuo.cc/2018/12/19/%E8%8F%9C%E9%B8%A1%E7%BB%83%E6%89%8B---%E8%A1%A8%E7%99%BD%E5%A2%99/</link><pubDate>Wed, 19 Dec 2018 16:00:00 +0800</pubDate><guid>https://www.sshuo.cc/2018/12/19/%E8%8F%9C%E9%B8%A1%E7%BB%83%E6%89%8B---%E8%A1%A8%E7%99%BD%E5%A2%99/</guid><description>&lt;p&gt;冬天了，又到了白色…..又到了恋爱的季节&lt;/p&gt;&#10;&lt;p&gt;没有女票的我闲着蛋疼做了一个表白墙程序，放到github冒充项目….&lt;/p&gt;</description></item><item><title>WTS气泡通知插件</title><link>https://www.sshuo.cc/2018/09/10/WTS%E6%B0%94%E6%B3%A1%E9%80%9A%E7%9F%A5%E6%8F%92%E4%BB%B6/</link><pubDate>Mon, 10 Sep 2018 20:33:00 +0800</pubDate><guid>https://www.sshuo.cc/2018/09/10/WTS%E6%B0%94%E6%B3%A1%E9%80%9A%E7%9F%A5%E6%8F%92%E4%BB%B6/</guid><description>&lt;p&gt;前阵子蚊子大佬写了个气泡通知，觉得很好玩。&lt;/p&gt;&#10;&lt;p&gt;所以就想用在自己的站上，然而扒了半天眼睛都疼了也没干净的扒下来。&lt;/p&gt;</description></item><item><title>终于加上小绿锁</title><link>https://www.sshuo.cc/2018/09/03/%E7%BB%88%E4%BA%8E%E5%8A%A0%E4%B8%8A%E5%B0%8F%E7%BB%BF%E9%94%81/</link><pubDate>Mon, 03 Sep 2018 21:53:00 +0800</pubDate><guid>https://www.sshuo.cc/2018/09/03/%E7%BB%88%E4%BA%8E%E5%8A%A0%E4%B8%8A%E5%B0%8F%E7%BB%BF%E9%94%81/</guid><description>&lt;p&gt;前几天在某大佬群里水的时候大家无意间提到了小绿锁（https）都在说自己用了什么什么协议用的哪里哪里的证书。于是弱弱的问了一句：“大佬们都是上了锁吗？”&lt;/p&gt;</description></item><item><title>一个二维码活码系统思路</title><link>https://www.sshuo.cc/2018/08/31/%E4%B8%80%E4%B8%AA%E4%BA%8C%E7%BB%B4%E7%A0%81%E6%B4%BB%E7%A0%81%E7%B3%BB%E7%BB%9F%E6%80%9D%E8%B7%AF/</link><pubDate>Fri, 31 Aug 2018 16:45:00 +0800</pubDate><guid>https://www.sshuo.cc/2018/08/31/%E4%B8%80%E4%B8%AA%E4%BA%8C%E7%BB%B4%E7%A0%81%E6%B4%BB%E7%A0%81%E7%B3%BB%E7%BB%9F%E6%80%9D%E8%B7%AF/</guid><description>&lt;p&gt;习惯放图&lt;/p&gt;&#10;&lt;figure&gt;&lt;img&#10; class="my-0 rounded-md"&#10; loading="lazy"&#10; decoding="async"&#10; fetchpriority="low"&#10; alt=""&#10; src="https://www.sshuo.cc/images/2018/09/338484196.png"&#10; &gt;&lt;/figure&gt;&#10;&lt;p&gt;前阵子无聊写了个简单的活码系统谁知道竟然好多人要买（雾草….我瞎写的啊…）。无意间又看到了老司机写的。人家界面又好看，功能又齐全，真的很厉害。于是准备把自己的那个自行车改装下，不说改的多好起码得能看得过去。&lt;/p&gt;</description></item><item><title>一个简易授权demo</title><link>https://www.sshuo.cc/2018/08/20/%E4%B8%80%E4%B8%AA%E7%AE%80%E6%98%93%E6%8E%88%E6%9D%83demo/</link><pubDate>Mon, 20 Aug 2018 14:35:00 +0800</pubDate><guid>https://www.sshuo.cc/2018/08/20/%E4%B8%80%E4%B8%AA%E7%AE%80%E6%98%93%E6%8E%88%E6%9D%83demo/</guid><description>&lt;p&gt;在页面中引用，比如：&lt;/p&gt;&#10;&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&amp;lt;?php&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;echo&amp;#39;1111&amp;#39;;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;include (&amp;#39;shouquan.php&amp;#39;);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;echo&amp;#39;1111&amp;#39;;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;?&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#10;&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;授权操作&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#10;&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;$url=$_SERVER[&amp;#39;SERVER_NAME&amp;#39;];&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;include (&amp;#39;key.php&amp;#39;);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; $curl = curl_init();&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; //设置抓取的url&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; curl_setopt($curl, CURLOPT_URL, &amp;#39;http://localhost/api/api.php&amp;#39;);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; //设置头文件的信息作为数据流输出&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; curl_setopt($curl, CURLOPT_HEADER, 0);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; //设置获取的信息以文件流的形式返回，而不是直接输出。&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; //设置post方式提交&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; curl_setopt($curl, CURLOPT_POST, 1);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; //设置post数据&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; $post_data = array(&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;#34;domain&amp;#34; =&amp;gt; &amp;#34;$url&amp;#34;,&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;#34;key&amp;#34; =&amp;gt; &amp;#34;$key&amp;#34;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; );&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; //执行命令&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; $data = curl_exec($curl);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; //关闭URL请求&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; curl_close($curl);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;//echo &amp;#34;$data&amp;#34;;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;if ($data==&amp;#39;true&amp;#39;) {&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;echo&#9;&amp;#39;域名验证成功！&amp;lt;br&amp;gt;&amp;#39;;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;} else {&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#9;exit();&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;}`&amp;lt;/pre&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;key文件，用于存储激活码、授权码&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&amp;lt;pre&amp;gt;`&amp;lt;?php&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;$key=&amp;#39;123456&amp;#39;;//输入激活码&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;?&amp;gt;`&amp;lt;/pre&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;api文件，接受客户端post请求并返回相应数据&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&amp;lt;pre&amp;gt;`&amp;lt;?php&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;$api=$_POST[&amp;#39;key&amp;#39;];&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;$domain=$_POST[&amp;#39;domain&amp;#39;];&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;$servername = &amp;#34;localhost&amp;#34;;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;$username = &amp;#34;root&amp;#34;;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;$password = &amp;#34;root&amp;#34;;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;$dbname = &amp;#34;selectdata&amp;#34;;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;// 创建连接&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;$conn = new mysqli($servername, $username, $password, $dbname);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;// Check connection&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;if ($conn-&amp;gt;connect_error) {&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; die(&amp;#34;连接失败: &amp;#34; . $conn-&amp;gt;connect_error);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;} &#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;$rs = mysqli_query($conn,&amp;#34;SELECT * FROM data WHERE domain=&amp;#39;$domain&amp;#39;&amp;#34;);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;$aa=mysqli_fetch_array($rs);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;if ($api==$aa[1]) {&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#9;echo&amp;#39;true&amp;#39;;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;} else {&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#9;echo&amp;#39;false&amp;#39;;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#10;&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;将程序重要函数/操作/行为添加到shouquan.php中并对其加密混淆，以达到防破解的目的&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;嗯...暂时就想到这么多。&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;2018.12.1&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;客户端代码&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#10;&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&amp;lt;?php&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; //获取不带端口号的域名前缀&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; $servername = trim($_SERVER[&amp;#39;SERVER_NAME&amp;#39;]);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; //获取服务端授权文件校验&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; $verifyurl = file_get_contents(&amp;#39;http://www.toyean.com/zb_users/upload/copyright.php?domain=&amp;#39;.$servername);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; if(!empty($verifyurl)){&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &#9;echo &amp;#34;已授权！&amp;#34;; //授权成功&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; }else{&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &#9;die(&amp;#34;未授权！&amp;#34;); //授权失败&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; }&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ?&amp;gt;```&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; 服务端代码&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ```&amp;lt;?php&amp;lt;/span&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;pre&amp;gt;`//获取域名&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; $domain = $_GET[&amp;#39;domain&amp;#39;];&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; //授权域名列表&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; $Array = array(&amp;#39;127.0.0.1&amp;#39;,&amp;#39;localhost&amp;#39;);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; //校验结果&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; echo in_array($domain, $Array) ? &amp;#39;yes&amp;#39; : &amp;#39;&amp;#39;;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ?&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#10;&lt;p&gt;感谢&lt;a href="muruoxi.com" &gt;@慕若曦&lt;/a&gt;的指点&lt;/p&gt;</description></item><item><title>php笔记---简单的多层网页内容提取</title><link>https://www.sshuo.cc/2018/08/20/php%E7%AC%94%E8%AE%B0---%E7%AE%80%E5%8D%95%E7%9A%84%E5%A4%9A%E5%B1%82%E7%BD%91%E9%A1%B5%E5%86%85%E5%AE%B9%E6%8F%90%E5%8F%96/</link><pubDate>Mon, 20 Aug 2018 14:15:00 +0800</pubDate><guid>https://www.sshuo.cc/2018/08/20/php%E7%AC%94%E8%AE%B0---%E7%AE%80%E5%8D%95%E7%9A%84%E5%A4%9A%E5%B1%82%E7%BD%91%E9%A1%B5%E5%86%85%E5%AE%B9%E6%8F%90%E5%8F%96/</guid><description>&lt;p&gt;举例&lt;/p&gt;&#10;&lt;p&gt;求手机号177xxxx6832完整号码&lt;/p&gt;&#10;&lt;p&gt;以河南驻马店为例，找出相应号段 &lt;a href="http://www.bixinshui.com/city/279" target="_blank" rel="noreferrer"&gt;http://www.bixinshui.com/city/279&lt;/a&gt;&lt;/p&gt;</description></item><item><title>搭建一个私人网盘--cloudreve</title><link>https://www.sshuo.cc/2018/08/05/%E6%90%AD%E5%BB%BA%E4%B8%80%E4%B8%AA%E7%A7%81%E4%BA%BA%E7%BD%91%E7%9B%98--cloudreve/</link><pubDate>Sun, 05 Aug 2018 21:48:00 +0800</pubDate><guid>https://www.sshuo.cc/2018/08/05/%E6%90%AD%E5%BB%BA%E4%B8%80%E4%B8%AA%E7%A7%81%E4%BA%BA%E7%BD%91%E7%9B%98--cloudreve/</guid><description>&lt;p&gt;万恶的度盘限速实在厉害，用了插件突破结果账号被限速了。&lt;/p&gt;&#10;&lt;p&gt;今天给大家推荐一款私人云盘cloudreve&lt;br&gt;&#10;官网&lt;a href="http://cloudreve.org/" target="_blank" rel="noreferrer"&gt;http://cloudreve.org/&lt;/a&gt;&lt;/p&gt;</description></item><item><title>快速搭建一个KMS服务器</title><link>https://www.sshuo.cc/2018/08/04/%E5%BF%AB%E9%80%9F%E6%90%AD%E5%BB%BA%E4%B8%80%E4%B8%AAKMS%E6%9C%8D%E5%8A%A1%E5%99%A8/</link><pubDate>Sat, 04 Aug 2018 16:54:00 +0800</pubDate><guid>https://www.sshuo.cc/2018/08/04/%E5%BF%AB%E9%80%9F%E6%90%AD%E5%BB%BA%E4%B8%80%E4%B8%AAKMS%E6%9C%8D%E5%8A%A1%E5%99%A8/</guid><description>&lt;p&gt;KMS用来激活 VOL 版本的 Windows 和 Office。经常能在网上看到有人提供的 KMS 服务器地址，那么你有没有想过自己也来搞一个这样的服务呢？最近看到了大佬的一键脚本&lt;a href="https://teddysun.com/530.html" target="_blank" rel="noreferrer"&gt;点击查看&lt;/a&gt;于是写篇文章水一下。以祭我这长了蜘蛛网的博客。&lt;/p&gt;</description></item><item><title>php笔记--登陆验证和curl</title><link>https://www.sshuo.cc/2018/07/14/php%E7%AC%94%E8%AE%B0--%E7%99%BB%E9%99%86%E9%AA%8C%E8%AF%81%E5%92%8Ccurl/</link><pubDate>Sat, 14 Jul 2018 19:44:00 +0800</pubDate><guid>https://www.sshuo.cc/2018/07/14/php%E7%AC%94%E8%AE%B0--%E7%99%BB%E9%99%86%E9%AA%8C%E8%AF%81%E5%92%8Ccurl/</guid><description>&lt;h2 class="relative group"&gt;登录验证&#10; &lt;div id="登录验证" class="anchor"&gt;&lt;/div&gt;&#10; &#10; &lt;span&#10; class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;&#10; &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e7%99%bb%e5%bd%95%e9%aa%8c%e8%af%81" aria-label="锚点"&gt;#&lt;/a&gt;&#10; &lt;/span&gt;&#10; &#10;&lt;/h2&gt;&#10;&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&amp;lt;?php &#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;include &amp;#34;config/config.php&amp;#34;;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;$name = $_POST[&amp;#39;name&amp;#39;];//post获得用户名表单值&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; $passowrd = $_POST[&amp;#39;password&amp;#39;];//post获得用户密码单值&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; if ($name &amp;amp;&amp;amp; $passowrd){//如果用户名和密码都不为空&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; $sql = &amp;#34;select * from user where name = &amp;#39;$name&amp;#39; and password=&amp;#39;$passowrd&amp;#39;&amp;#34;;//检测数据库是否有对应的username和password的sql&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; $result = mysqli_query($conn,$sql);//执行sql&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; @$rows=mysqli_num_rows($result);//返回一个数值&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; if($rows){//0 false 1 true&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &#9;session_start();&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#9;$_SESSION[&amp;#39;username&amp;#39;] = $name;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; header(&amp;#34;refresh:0;url=admin/index.php&amp;#34;);//如果成功跳转至welcome.html页面&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; exit;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; }else{&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; echo &amp;#34;用户名或密码错误&amp;#34;;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; echo &amp;#34;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;script&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; setTimeout(function(){window.location.href=&amp;#39;login.php&amp;#39;;},1000);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;/script&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;#34;;//如果错误使用js 1秒后跳转到登录页面重试;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; }&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; }else{//如果用户名或密码有空&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; echo &amp;#34;表单填写不完整&amp;#34;;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; echo &amp;#34;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;script&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; setTimeout(function(){window.location.href=&amp;#39;login.php&amp;#39;;},1000);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;/script&amp;gt;&amp;#34;;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; //如果错误使用js 1秒后跳转到登录页面重试;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; }`&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#10;&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;## 权限认证&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#10;&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#9;&#9;session_start();&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;if (!isset($_SESSION[&amp;#39;username&amp;#39;])) {&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;echo &amp;#34;&amp;lt;script&amp;gt;window.location.href=&amp;#39;../login.php&amp;#39;;&amp;lt;/script&amp;gt;&amp;#34;;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;}&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;?&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#10;&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;## CURL&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#10;&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;$ch = curl_init();//起手式&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;curl_setopt($ch, CURLOPT_URL, $url);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;$a= curl_exec($ch);//获取输出内容&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;curl_close($ch);//收工&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;echo &amp;#34;$a&amp;#34;;输出内容&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;</description></item></channel></rss>