"/" にファイルをアップロード
このコミットが含まれているのは:
コミット
99f3e3a103
|
@ -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
|
||||
|
||||
<IfModule mod_deflate.c>
|
||||
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
|
||||
</IfModule>
|
|
@ -0,0 +1,115 @@
|
|||
<?php
|
||||
//(インタプリタに向かって、)うまく言語化できない。情報の伝達に齟齬が発生するかもしれない。でも、聞いて。
|
||||
|
||||
|
||||
|
||||
#404.phpは普通のページではない。ただエラーを表示するだけでなく、自己解決をする機能を持つ。
|
||||
|
||||
|
||||
##素の404かリダイレクトか不明
|
||||
if (!isset($d_root)){
|
||||
$d_root = realpath('./');
|
||||
if ($d_root === false){
|
||||
$d_root = '.';
|
||||
}
|
||||
}
|
||||
$f = $d_root.'/hide_php/conf/c.php';
|
||||
require_once $f;
|
||||
|
||||
header("Content-Security-Policy:connect-src 'self';object-src 'none';base-uri 'self';script-src 'none';");
|
||||
|
||||
|
||||
##########html開始
|
||||
html_head('ないよ-', '', $d_root.'/sqlike/css/404/404style.css', true);
|
||||
|
||||
echo '<h1>ないよ</h1>';
|
||||
|
||||
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 '<h2>もしかしてwordpress?</h2><p><img src="/img/ないよ.png" width="200px" height="126px" alt="そんなの無いよ"><br><small>引用:ジョジョの奇妙な冒険</small></p><p>当サイトは<b>WordPress</b>を使用しておりません。</p>';
|
||||
|
||||
//timelineはsearchに統合
|
||||
} elseif (strpos($uri, 'timeline') !== false){
|
||||
echo '<h2>もしかして時系列?</h2><p>時系列は、<a href="/search.php">検索</a>で閲覧できます。</p>';
|
||||
|
||||
//そんな都合よくないよ
|
||||
} elseif (strpos($uri, 'admin') !== false){
|
||||
echo '<h2>もしかして管理ページ?</h2><p>利用者作成板の管理がしたい場合は、<a href="/ext/">此方をどうぞ</a>。
|
||||
作成したのに一覧が表示されない場合は、学校裏掲示板で「プレビュー(確認)」を<b>名前とトリップを入力しクッキーを有効にした状態で</b>押して下さい。ログインの代わりになります。</p>';
|
||||
|
||||
//物好きだね
|
||||
} elseif ($uri === '/404.php'){
|
||||
echo '<p>______というのは嘘で本当はあるんだけど、あなたは<b>直接</b>404エラーを閲覧しています。</p>';
|
||||
|
||||
//たぶんPerl
|
||||
} elseif (preg_match('/\.(pl|py|rb|sh)$/', $uri) === 1){
|
||||
echo '<h2>もしかしてCGI?</h2><p>cgiスクリプトは、<a href="'.preg_replace('/\.(pl|py|rb|sh)$/', '.cgi', $uri).'">此方をどうぞ</a>。</p>';
|
||||
|
||||
//HTMLは統一しよう
|
||||
} elseif (preg_match('/\.(htm|shtm|shtml|xhtml|xml|ml)$/', $uri) === 1){
|
||||
echo '<h2>もしかしてhtmlファイル?</h2><p>htmlファイルは、<a href="'.preg_replace('/\.(htm|shtm|shtml|xhtml|xml|ml)$/', '.html', $uri).'">此方をどうぞ</a>。</p>';
|
||||
|
||||
//PHPは全て「.php」
|
||||
} elseif (preg_match('/\.(pp|ph|hp|hh|hack|cgi|html)$/', $uri) === 1){
|
||||
echo '<h2>もしかしてphpスクリプト?</h2><p>スペルミスの可能性があります。<a href="'.preg_replace('/\.(pp|ph|hp|hh|hack|cgi|html)$/', '.php', $uri).'">此方をお試し下さい</a>。</p>';
|
||||
|
||||
//enter.phpの廃止
|
||||
} elseif (preg_match('/(enter|home|index|main)/', $uri) === 1){
|
||||
echo '<h2>もしかしてホームページ?</h2><p>ホームページ(トップページ)へ行きたい場合は、<a href="/">トップページ</a>があります。</p>';
|
||||
|
||||
//隠しファイルは非公開
|
||||
} elseif (strpos($uri, '/.') !== false){
|
||||
echo '<h2>もしかして隠しファイル?</h2><p>見てはいけないものが隠されているかもしれません。あるいは、ただ単に存在しないだけかもしれません。</p>';
|
||||
|
||||
//URLパラメーターのエラー
|
||||
} elseif (strpos($uri, '?')){
|
||||
//たらい回し
|
||||
if (preg_match('/\?[A-Z][a-z]+=.+/', $uri) === 1){
|
||||
echo '<h2>もしかして無効なURL?</h2><p>もしかしなくて本当に存在しないと思います。</p>';
|
||||
//処理が面倒でたらい回し
|
||||
} elseif (preg_match('/\?[a-z]+/', $uri) === 1){
|
||||
$uri_p = substr(explode('?', $uri)[1], 0, 1);
|
||||
echo '<p>もしかして、大文字にしてみればどうかなぁ?</p><p><a href="'.str_replace('?'.$uri_p, '?'.strtoupper($uri_p), $uri).'">これをお試し下さい</a>。</p>';
|
||||
//よく分からない
|
||||
} else {
|
||||
echo '<h2>もしかして本当に無い?</h2><p>ご指定のURLに対応できる、またはそれに近い表示は出来ません。</p>';
|
||||
}
|
||||
//ディレクトリです。
|
||||
} elseif (substr($uri, -1, 1) === '/'){
|
||||
echo '<h2>もしかしてディレクトリ?</h2><p>空っぽのフォルダーにアクセスしようとしかのかもしれません。もしかしてそのフォルダー自体が存在しないのかもしれません。</p>';
|
||||
} elseif (strpos($uri, '.') === false){
|
||||
echo '<h2>もしかして拡張子が無い?</h2><p><a href="'.$uri.'.html">此方をお試し下さい</a>。あるいは、<a href="'.$uri.'.png">これはどうでしょうか</a>。</p>';
|
||||
|
||||
//お手上げ
|
||||
} else {
|
||||
echo '<p>もしかしなくて、「もしかして機能」で検出出来ませんでした。</p><p>もしかすると、URLパラメーターがセットされていなかったり空だったり、URLとして成立しない変な文字があったり、するかもしれません...</p>';
|
||||
}
|
||||
|
||||
|
||||
$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 '<h2>解析出来ないエラー</h2><p>重篤なエラーです。</p>';
|
||||
}
|
||||
|
||||
html_foot('', '');
|
読み込み中…
新しいイシューから参照