<?php header("X-Robots-Tag: noindex,nofollow", true); ?> <html> <head> <meta name="robots" content="noindex,nofollow"> <title>Basic認証設定君</title> </head> <body> <?php $perms = substr(sprintf('%o', fileperms(dirname(__FILE__))), -4); if($perms != '0777'){ exit('<p>エラー! ディレクトリのパーミッションを「<strong>0777</strong>」にいったん変更してください。</p></body></html>'); } if(file_exists('.htaccess')){ exit('<p>「<strong>.htaccess</strong>」がすでに存在するので処理をやめました。</p></body></html>'); } if(file_exists('.htpasswd')){ exit('<p>「<strong>.htpasswd</strong>」がすでに存在するので処理をやめました。</p></body></html>'); } //メイン if(isset($_POST['user'])&&$_POST['user']!==""&&isset($_POST['password'])&&$_POST['password']!==""){ $hash = crypt($_POST['password'], base64_encode($_POST['password'])); $htpasswd = $_POST['user'] . ':' . $hash; $path = dirname(__FILE__); $htaccess = 'AuthUserFile '.$path.'/.htpasswd'."\n".'AuthGroupFile /dev/null'."\n".'AuthName "Authorization Required"'."\n".'AuthType Basic'."\n".'require valid-user'; file_put_contents('.htaccess', $htaccess); file_put_contents('.htpasswd', $htpasswd); unlink(__FILE__); exit('<p>完了しました。<br>もしパーミッションを変更していたら、忘れずに「<strong>0755</strong>」か「<strong>0705</strong>」に戻すんだぜ?</p><p>http://'.$_SERVER["HTTP_HOST"].dirname($_SERVER[PHP_SELF]).'<br>user: '.$_POST['user'].'<br>pass: '.$_POST['password'].'</p></body></html>'); } ?> <p>「http://<?php print($_SERVER["HTTP_HOST"].dirname($_SERVER[PHP_SELF])); ?>」以下にBasic認証を設定するで。</p> <form action="<?php print(basename(__FILE__)); ?>" method="post"> <label for="user">Username:</label> <input type="text" name="user" id="user" pattern="^[0-9A-Za-z]+$" autofocus required>※半角英数 <br> <label for="password">Password:</label> <input type="password" name="password" id="password" required> <br> <input type="submit"> </form> </body> </html>