<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ja">
		<id>https://wiki.nonip.net/index.php?action=history&amp;feed=atom&amp;title=%E3%81%9D%E3%81%AE%E4%BB%96%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%2Fno-ip</id>
		<title>その他サービス/no-ip - 変更履歴</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.nonip.net/index.php?action=history&amp;feed=atom&amp;title=%E3%81%9D%E3%81%AE%E4%BB%96%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%2Fno-ip"/>
		<link rel="alternate" type="text/html" href="https://wiki.nonip.net/index.php?title=%E3%81%9D%E3%81%AE%E4%BB%96%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9/no-ip&amp;action=history"/>
		<updated>2026-04-24T15:42:34Z</updated>
		<subtitle>このウィキのこのページに関する変更履歴</subtitle>
		<generator>MediaWiki 1.24.2</generator>

	<entry>
		<id>https://wiki.nonip.net/index.php?title=%E3%81%9D%E3%81%AE%E4%BB%96%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9/no-ip&amp;diff=20869&amp;oldid=prev</id>
		<title>Admin: Admin がページ「Domain/no-ip」を「その他サービス/no-ip」に、リダイレクトを残さずに移動しました</title>
		<link rel="alternate" type="text/html" href="https://wiki.nonip.net/index.php?title=%E3%81%9D%E3%81%AE%E4%BB%96%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9/no-ip&amp;diff=20869&amp;oldid=prev"/>
				<updated>2025-10-18T23:43:07Z</updated>
		
		<summary type="html">&lt;p&gt;Admin がページ「&lt;a href=&quot;/index.php?title=Domain/no-ip&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Domain/no-ip (存在しないページ)&quot;&gt;Domain/no-ip&lt;/a&gt;」を「&lt;a href=&quot;/index.php/%E3%81%9D%E3%81%AE%E4%BB%96%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9/no-ip&quot; title=&quot;その他サービス/no-ip&quot;&gt;その他サービス/no-ip&lt;/a&gt;」に、リダイレクトを残さずに移動しました&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;tr style='vertical-align: top;'&gt;
				&lt;td colspan='1' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;←前の版&lt;/td&gt;
				&lt;td colspan='1' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;2025年10月18日 (土) 23:43時点における版&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan='2' style='text-align: center;'&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(相違点なし)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>https://wiki.nonip.net/index.php?title=%E3%81%9D%E3%81%AE%E4%BB%96%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9/no-ip&amp;diff=411&amp;oldid=prev</id>
		<title>127.0.0.1: ページの作成:「=no-ipとは= ドメインのレンタルサイトです。  無料だと3ヶ月ごとにIP設定の更新が必要になります。  が、以下phpのバッチを3ヶ...」</title>
		<link rel="alternate" type="text/html" href="https://wiki.nonip.net/index.php?title=%E3%81%9D%E3%81%AE%E4%BB%96%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9/no-ip&amp;diff=411&amp;oldid=prev"/>
				<updated>2015-05-19T18:11:49Z</updated>
		
		<summary type="html">&lt;p&gt;ページの作成:「=no-ipとは= ドメインのレンタルサイトです。  無料だと3ヶ月ごとにIP設定の更新が必要になります。  が、以下phpのバッチを3ヶ...」&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新規ページ&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=no-ipとは=&lt;br /&gt;
ドメインのレンタルサイトです。&lt;br /&gt;
&lt;br /&gt;
無料だと3ヶ月ごとにIP設定の更新が必要になります。&lt;br /&gt;
&lt;br /&gt;
が、以下phpのバッチを3ヶ月ごとに自動実行するようにすれば気にせず使えます。&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;?&lt;br /&gt;
 require_once &amp;quot;HTTP/Client.php&amp;quot;;&lt;br /&gt;
 require_once &amp;quot;simplehtmldom/simple_html_dom.php&amp;quot;;&lt;br /&gt;
 set_time_limit(0);// 処理時間を無限に&lt;br /&gt;
 $noip = new SetNoip();&lt;br /&gt;
 if ($noip-&amp;gt;exec($username, $password)) {&lt;br /&gt;
   print &amp;quot;noip set ok&amp;quot; . &amp;quot;\n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 /**&lt;br /&gt;
  * nonipで同ユーザ内に割り当てたdomainのIPを全て自動で更新するバッチ&lt;br /&gt;
  * httpsでログインするので要php.iniのopensslのコメントアウトを解除(&amp;amp;apache再起動&lt;br /&gt;
  * 必須ライブラリpear:HTTP_Client.php &amp;amp; simple_html_dom.php&lt;br /&gt;
  */&lt;br /&gt;
 class SetNoip&lt;br /&gt;
 {&lt;br /&gt;
   private $_client;&lt;br /&gt;
   public function SetNoip()&lt;br /&gt;
   {&lt;br /&gt;
     $this-&amp;gt;_client =&amp;amp; new HTTP_Client();&lt;br /&gt;
   }&lt;br /&gt;
   /**&lt;br /&gt;
    * 実行&lt;br /&gt;
    *&lt;br /&gt;
    * @param  $username&lt;br /&gt;
    * @param  $password&lt;br /&gt;
    * @return  true:成功、false:失敗&lt;br /&gt;
    */&lt;br /&gt;
   public function exec($username, $password)&lt;br /&gt;
   {&lt;br /&gt;
     try {&lt;br /&gt;
       $login_params = array(&amp;quot;username&amp;quot; =&amp;gt; $username, &amp;quot;password&amp;quot; =&amp;gt; $password, &amp;quot;linked_from&amp;quot; =&amp;gt; &amp;quot;/index.php&amp;quot;, &amp;quot;submit&amp;quot; =&amp;gt; &amp;quot;Login&amp;quot;);&lt;br /&gt;
       $login_url = &amp;quot;https://www.nonip.com/login/&amp;quot;;&lt;br /&gt;
       $this-&amp;gt;_client-&amp;gt;post($login_url, $login_params);&lt;br /&gt;
       $response = $this-&amp;gt;_client-&amp;gt;currentResponse();&lt;br /&gt;
       if ($response) {&lt;br /&gt;
         // 管理ページへ移動&lt;br /&gt;
         $host_url = &amp;quot;https://www.nonip.com/members/dns/&amp;quot;;&lt;br /&gt;
         $this-&amp;gt;_client-&amp;gt;get($host_url);&lt;br /&gt;
         $response = $this-&amp;gt;_client-&amp;gt;currentResponse();&lt;br /&gt;
         if (preg_match_all(&amp;quot;/host.php\?host_id=[\d]+/&amp;quot;, $response['body'], $matches)) {&lt;br /&gt;
           // ユーザ内の各dns設定&lt;br /&gt;
           foreach ($matches[0] as $path) {&lt;br /&gt;
             if ($this-&amp;gt;_setDomain($host_url . $path) == false) {&lt;br /&gt;
               // 失敗すると終了&lt;br /&gt;
               return false;&lt;br /&gt;
             }&lt;br /&gt;
           }&lt;br /&gt;
           return true;&lt;br /&gt;
         }&lt;br /&gt;
         throw new Exception('Error:1002 ドメインレコード取得失敗');&lt;br /&gt;
       } else {&lt;br /&gt;
         throw new Exception('Error:1001 ログイン失敗');&lt;br /&gt;
       }&lt;br /&gt;
       return false;&lt;br /&gt;
     } catch (Exception $e) {&lt;br /&gt;
       echo $e-&amp;gt;getMessage() . &amp;quot;\n&amp;quot;;&lt;br /&gt;
     }&lt;br /&gt;
   }&lt;br /&gt;
   /**&lt;br /&gt;
    * dns設定&lt;br /&gt;
    *&lt;br /&gt;
    * @param  $pageurl&lt;br /&gt;
    * @return  true:成功、false:失敗&lt;br /&gt;
    */&lt;br /&gt;
   private function _setDomain($pageurl)&lt;br /&gt;
   {&lt;br /&gt;
     $this-&amp;gt;_client-&amp;gt;get($pageurl);&lt;br /&gt;
     $response = $this-&amp;gt;_client-&amp;gt;currentResponse();&lt;br /&gt;
     // dns設定のためのパラメータ取得&lt;br /&gt;
     $set_params = $this-&amp;gt;_getDnsInputParam($response['body']);&lt;br /&gt;
     // IP更新&lt;br /&gt;
     $this-&amp;gt;_client-&amp;gt;post($pageurl, $set_params);&lt;br /&gt;
     $response = $this-&amp;gt;_client-&amp;gt;currentResponse();&lt;br /&gt;
     if (preg_match(&amp;quot;/Update will/&amp;quot;, $response['body'])) {&lt;br /&gt;
       return true;&lt;br /&gt;
     }&lt;br /&gt;
     return false;&lt;br /&gt;
   }&lt;br /&gt;
   /**&lt;br /&gt;
    * dns設定のためのパラメータ取得&lt;br /&gt;
    *&lt;br /&gt;
    * @param  $html&lt;br /&gt;
    * @return  $params&lt;br /&gt;
    */&lt;br /&gt;
   private function _getDnsInputParam($html)&lt;br /&gt;
   {&lt;br /&gt;
     // dom化&lt;br /&gt;
     $html = str_get_html($html); // simple_html_dom.phpの関数&lt;br /&gt;
     $params = array();&lt;br /&gt;
     // dns設定のためのパラメータ取得&lt;br /&gt;
     foreach($html-&amp;gt;find('input') as $element) {&lt;br /&gt;
       if ($element-&amp;gt;type == &amp;quot;hidden&amp;quot; || $element-&amp;gt;type == &amp;quot;text&amp;quot;) {&lt;br /&gt;
         $params[$element-&amp;gt;name] = $element-&amp;gt;value;&lt;br /&gt;
       }&lt;br /&gt;
       if ($element-&amp;gt;type == &amp;quot;radio&amp;quot; &amp;amp;&amp;amp; $element-&amp;gt;checked == &amp;quot;checked&amp;quot;) {&lt;br /&gt;
         $params[$element-&amp;gt;name] = $element-&amp;gt;value;&lt;br /&gt;
       }&lt;br /&gt;
     }&lt;br /&gt;
     return $params;&lt;br /&gt;
   }&lt;br /&gt;
 }&lt;/div&gt;</summary>
		<author><name>127.0.0.1</name></author>	</entry>

	</feed>