diff --git a/.htaccess b/.htaccess new file mode 100644 index 0000000..9d8f485 --- /dev/null +++ b/.htaccess @@ -0,0 +1,28 @@ +#RewriteEngine on +#RewriteCond %{HTTPS} off +#RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] + +ErrorDocument 404 /404.php +ErrorDocument 403 /404.php +ErrorDocument 500 /404.php +ErrorDocument 503 /404.php + +DirectoryIndex index.php index.cgi index.html + +#Options +ExecCGI +AddHandler cgi-script .cgi .pl .py .rb + + +SetOutputFilter DEFLATE + +BrowserMatch ^Mozilla/4\.0[678] no-gzip +BrowserMatch ^Mozilla/4 gzip-only-text/html +BrowserMatch \bMSIE\s(7|8) !no-gzip !gzip-only-text/html + +SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png|ico)$ no-gzip dont-vary + +AddOutputFilterByType DEFLATE text/html +AddOutputFilterByType DEFLATE text/xml +AddOutputFilterByType DEFLATE text/css +AddOutputFilterByType DEFLATE text/js + diff --git a/404.php b/404.php new file mode 100644 index 0000000..f267def --- /dev/null +++ b/404.php @@ -0,0 +1,115 @@ +ないよ'; + +if (isset($_SERVER['REQUEST_URI'])){ + $uri = $_SERVER['REQUEST_URI']; + + + //もっともらしい解決方法 + if (preg_match('/\.(pl|py|rb|sh|cgi)$/', $uri)){ + $f = $d_root.$uri; + if (file_exists($f)){ + chmod($f, 0755); + } + } + + //うちはwordpressじゃないよ + if (strpos($uri, 'wp') !== false){ + echo '

もしかしてwordpress?

そんなの無いよ
引用:ジョジョの奇妙な冒険

当サイトはWordPressを使用しておりません。

'; + + //timelineはsearchに統合 + } elseif (strpos($uri, 'timeline') !== false){ + echo '

もしかして時系列?

時系列は、検索で閲覧できます。

'; + + //そんな都合よくないよ + } elseif (strpos($uri, 'admin') !== false){ + echo '

もしかして管理ページ?

利用者作成板の管理がしたい場合は、此方をどうぞ。 +作成したのに一覧が表示されない場合は、学校裏掲示板で「プレビュー(確認)」を名前とトリップを入力しクッキーを有効にした状態で押して下さい。ログインの代わりになります。

'; + + //物好きだね + } elseif ($uri === '/404.php'){ + echo '

______というのは嘘で本当はあるんだけど、あなたは直接404エラーを閲覧しています。

'; + + //たぶんPerl + } elseif (preg_match('/\.(pl|py|rb|sh)$/', $uri) === 1){ + echo '

もしかしてCGI?

cgiスクリプトは、此方をどうぞ

'; + + //HTMLは統一しよう + } elseif (preg_match('/\.(htm|shtm|shtml|xhtml|xml|ml)$/', $uri) === 1){ + echo '

もしかしてhtmlファイル?

htmlファイルは、此方をどうぞ

'; + + //PHPは全て「.php」 + } elseif (preg_match('/\.(pp|ph|hp|hh|hack|cgi|html)$/', $uri) === 1){ + echo '

もしかしてphpスクリプト?

スペルミスの可能性があります。此方をお試し下さい

'; + + //enter.phpの廃止 + } elseif (preg_match('/(enter|home|index|main)/', $uri) === 1){ + echo '

もしかしてホームページ?

ホームページ(トップページ)へ行きたい場合は、トップページがあります。

'; + + //隠しファイルは非公開 + } elseif (strpos($uri, '/.') !== false){ + echo '

もしかして隠しファイル?

見てはいけないものが隠されているかもしれません。あるいは、ただ単に存在しないだけかもしれません。

'; + + //URLパラメーターのエラー + } elseif (strpos($uri, '?')){ + //たらい回し + if (preg_match('/\?[A-Z][a-z]+=.+/', $uri) === 1){ + echo '

もしかして無効なURL?

もしかしなくて本当に存在しないと思います。

'; + //処理が面倒でたらい回し + } elseif (preg_match('/\?[a-z]+/', $uri) === 1){ + $uri_p = substr(explode('?', $uri)[1], 0, 1); + echo '

もしかして、大文字にしてみればどうかなぁ?

これをお試し下さい

'; + //よく分からない + } else { + echo '

もしかして本当に無い?

ご指定のURLに対応できる、またはそれに近い表示は出来ません。

'; + } + //ディレクトリです。 + } elseif (substr($uri, -1, 1) === '/'){ + echo '

もしかしてディレクトリ?

空っぽのフォルダーにアクセスしようとしかのかもしれません。もしかしてそのフォルダー自体が存在しないのかもしれません。

'; + } elseif (strpos($uri, '.') === false){ + echo '

もしかして拡張子が無い?

此方をお試し下さい。あるいは、これはどうでしょうか

'; + + //お手上げ + } else { + echo '

もしかしなくて、「もしかして機能」で検出出来ませんでした。

もしかすると、URLパラメーターがセットされていなかったり空だったり、URLとして成立しない変な文字があったり、するかもしれません...

'; + } + + +$f = $d_root.'/sqlike/html/404/ext.html'; +if (file_exists($f)){ + $fp = fopen($f, 'r'); + while (($i = fgets($fp)) !== false){ + echo trim($i); + } + fclose($fp); +} + + +} else { + echo '

解析出来ないエラー

重篤なエラーです。

'; +} + +html_foot('', ''); diff --git a/bbs.php b/bbs.php new file mode 100644 index 0000000..f35e3bb --- /dev/null +++ b/bbs.php @@ -0,0 +1,3 @@ +