diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..bcad0a6 --- /dev/null +++ b/.gitignore @@ -0,0 +1,474 @@ +##### Windows +# Windows thumbnail cache files +Thumbs.db +Thumbs.db:encryptable +ehthumbs.db +ehthumbs_vista.db + +# Dump file +*.stackdump + +# Folder config file +[Dd]esktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Windows Installer files +*.cab +*.msi +*.msix +*.msm +*.msp + +# Windows shortcuts +*.lnk + +##### Linux +*~ + +# temporary files which can be created if a process still has a handle open of a deleted file +.fuse_hidden* + +# KDE directory preferences +.directory + +# Linux trash folder which might appear on any partition or disk +.Trash-* + +# .nfs files are created when an open file is removed but is still being accessed +.nfs* + +##### MacOS +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +##### Backup +*.bak +*.gho +*.ori +*.orig +*.tmp + +##### GPG +secring.* + +##### Dropbox +# Dropbox settings and caches +.dropbox +.dropbox.attr +.dropbox.cache + +##### SynopsysVCS +# Waveform formats +*.vcd +*.vpd +*.evcd +*.fsdb + +# Default name of the simulation executable. A different name can be +# specified with this switch (the associated daidir database name is +# also taken from here): -o / +simv + +# Generated for Verilog and VHDL top configs +simv.daidir/ +simv.db.dir/ + +# Infrastructure necessary to co-simulate SystemC models with +# Verilog/VHDL models. An alternate directory may be specified with this +# switch: -Mdir= +csrc/ + +# Log file - the following switch allows to specify the file that will be +# used to write all messages from simulation: -l +*.log + +# Coverage results (generated with urg) and database location. The +# following switch can also be used: urg -dir .vdb +simv.vdb/ +urgReport/ + +# DVE and UCLI related files. +DVEfiles/ +ucli.key + +# When the design is elaborated for DirectC, the following file is created +# with declarations for C/C++ functions. +vc_hdrs.h + +##### SVN +.svn/ + +##### Mercurial +.hg/ +.hgignore +.hgsigs +.hgsub +.hgsubstate +.hgtags + +##### Bazaar +.bzr/ +.bzrignore + +##### CVS +/CVS/* +**/CVS/* +.cvsignore +*/.cvsignore + +##### TortoiseGit +# Project-level settings +/.tgitconfig + +##### PuTTY +# Private key +*.ppk + +##### Vim +# Swap +[._]*.s[a-v][a-z] +!*.svg # comment out if you don't need vector files +[._]*.sw[a-p] +[._]s[a-rt-v][a-z] +[._]ss[a-gi-z] +[._]sw[a-p] + +# Session +Session.vim +Sessionx.vim + +# Temporary +.netrwhist +*~ +# Auto-generated tag files +tags +# Persistent undo +[._]*.un~ + +##### Emacs +# -*- mode: gitignore; -*- +*~ +\#*\# +/.emacs.desktop +/.emacs.desktop.lock +*.elc +auto-save-list +tramp +.\#* + +# Org-mode +.org-id-locations +*_archive + +# flymake-mode +*_flymake.* + +# eshell files +/eshell/history +/eshell/lastdir + +# elpa packages +/elpa/ + +# reftex files +*.rel + +# AUCTeX auto folder +/auto/ + +# cask packages +.cask/ +dist/ + +# Flycheck +flycheck_*.el + +# server auth directory +/server/ + +# projectiles files +.projectile + +# directory configuration +.dir-locals.el + +# network security +/network-security.data + +##### SublimeText +# Cache files for Sublime Text +*.tmlanguage.cache +*.tmPreferences.cache +*.stTheme.cache + +# Workspace files are user-specific +*.sublime-workspace + +# Project files should be checked into the repository, unless a significant +# proportion of contributors will probably not be using Sublime Text +# *.sublime-project + +# SFTP configuration file +sftp-config.json +sftp-config-alt*.json + +# Package control specific files +Package Control.last-run +Package Control.ca-list +Package Control.ca-bundle +Package Control.system-ca-bundle +Package Control.cache/ +Package Control.ca-certs/ +Package Control.merged-ca-bundle +Package Control.user-ca-bundle +oscrypto-ca-bundle.crt +bh_unicode_properties.cache + +# Sublime-github package stores a github token in this file +# https://packagecontrol.io/packages/sublime-github +GitHub.sublime-settings + +##### Notepad++ +# Notepad++ backups # +*.bak + +##### TextMate +*.tmproj +*.tmproject +tmtags + +##### VisualStudioCode +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +*.code-workspace + +# Local History for Visual Studio Code +.history/ + +##### NetBeans +**/nbproject/private/ +**/nbproject/Makefile-*.mk +**/nbproject/Package-*.bash +build/ +nbbuild/ +dist/ +nbdist/ +.nb-gradle/ + +##### JetBrains +# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider +# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 + +# User-specific stuff +.idea/**/workspace.xml +.idea/**/tasks.xml +.idea/**/usage.statistics.xml +.idea/**/dictionaries +.idea/**/shelf + +# Generated files +.idea/**/contentModel.xml + +# Sensitive or high-churn files +.idea/**/dataSources/ +.idea/**/dataSources.ids +.idea/**/dataSources.local.xml +.idea/**/sqlDataSources.xml +.idea/**/dynamic.xml +.idea/**/uiDesigner.xml +.idea/**/dbnavigator.xml + +# Gradle +.idea/**/gradle.xml +.idea/**/libraries + +# Gradle and Maven with auto-import +# When using Gradle or Maven with auto-import, you should exclude module files, +# since they will be recreated, and may cause churn. Uncomment if using +# auto-import. +# .idea/artifacts +# .idea/compiler.xml +# .idea/jarRepositories.xml +# .idea/modules.xml +# .idea/*.iml +# .idea/modules +# *.iml +# *.ipr + +# CMake +cmake-build-*/ + +# Mongo Explorer plugin +.idea/**/mongoSettings.xml + +# File-based project format +*.iws + +# IntelliJ +out/ + +# mpeltonen/sbt-idea plugin +.idea_modules/ + +# JIRA plugin +atlassian-ide-plugin.xml + +# Cursive Clojure plugin +.idea/replstate.xml + +# Crashlytics plugin (for Android Studio and IntelliJ) +com_crashlytics_export_strings.xml +crashlytics.properties +crashlytics-build.properties +fabric.properties + +# Editor-based Rest Client +.idea/httpRequests + +# Android studio 3.1+ serialized cache file +.idea/caches/build_file_checksums.ser + +##### Eclipse +.metadata +bin/ +tmp/ +*.tmp +*.bak +*.swp +*~.nib +local.properties +.settings/ +.loadpath +.recommenders + +# External tool builders +.externalToolBuilders/ + +# Locally stored "Eclipse launch configurations" +*.launch + +# PyDev specific (Python IDE for Eclipse) +*.pydevproject + +# CDT-specific (C/C++ Development Tooling) +.cproject + +# CDT- autotools +.autotools + +# Java annotation processor (APT) +.factorypath + +# PDT-specific (PHP Development Tools) +.buildpath + +# sbteclipse plugin +.target + +# Tern plugin +.tern-project + +# TeXlipse plugin +.texlipse + +# STS (Spring Tool Suite) +.springBeans + +# Code Recommenders +.recommenders/ + +# Annotation Processing +.apt_generated/ +.apt_generated_test/ + +# Scala IDE specific (Scala & Java development for Eclipse) +.cache-main +.scala_dependencies +.worksheet + +# Uncomment this line if you wish to ignore the project description file. +# Typically, this file would be tracked if it contains build/dependency configurations: +#.project + +##### Dreamweaver +# DW Dreamweaver added files +_notes +_compareTemp +configs/ +dwsync.xml +dw_php_codehinting.config +*.mno + +##### CodeKit +# General CodeKit files to ignore +config.codekit +config.codekit3 +/min + +##### Gradle +.gradle +**/build/ +!src/**/build/ + +# Ignore Gradle GUI config +gradle-app.setting + +# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored) +!gradle-wrapper.jar + +# Cache of project +.gradletasknamecache + +# # Work around https://youtrack.jetbrains.com/issue/IDEA-116898 +# gradle/wrapper/gradle-wrapper.properties + +##### Composer +composer.phar +/vendor/ + +# Commit your application's lock file https://getcomposer.org/doc/01-basic-usage.md#commit-your-composer-lock-file-to-version-control +# You may choose to ignore a library lock file http://getcomposer.org/doc/02-libraries.md#lock-file +composer.lock + +##### PHP CodeSniffer +# gitignore for the PHP Codesniffer framework +# website: https://github.com/squizlabs/PHP_CodeSniffer +# +# Recommended template: PHP.gitignore + +/wpcs/* + +##### SASS +.sass-cache/ +*.css.map +*.sass.map +*.scss.map diff --git a/FETCH_HEAD b/FETCH_HEAD new file mode 100644 index 0000000..e69de29 diff --git a/README.md b/README.md new file mode 100644 index 0000000..7b6abd0 --- /dev/null +++ b/README.md @@ -0,0 +1,130 @@ +# 注意:結構脆弱です。導入後はローカルな環境で使うことをおすすめします。 + +# uwuzu +あたらしいSNSです!!! +右側のReleaseからDLして導入していただけます! +AGPLライセンスです!!! + +導入方法は以下のとおりです! + +## 5. サーバーの建て方 +※MySQLの設定結構めんどいです。脆弱です。 +まず、Apache2とPHP 8とmysql Ver 15が導入されているサーバーを準備します! +次にSQLを設定します。(InnoDB) +まず、お好きな名前でDBを作成し、その中に、account,emoji,notice,role,ueuse,notificationとテーブルを作成します。 +テーブルの中身は以下のとおりです。 +照合順序は全て標準でutf8mb4_general_ciです。 +### account +- sysid(INT)(AUTO_INCREMENT ) アカウントが追加されるとカウントされるシステム用ID +- username(varchar(500)) ユーザーネーム保存用 +- userid(varchar(500)) ユーザーID保存用 +- password(varchar(1024)) パスワード保存用(ハッシュ化されます) +- loginid(varchar(256)) 自動ログイン時に本人アカウントか確認 +- mailadds(varchar(500)) メールアドレス保存用 +- profile(TEXT) プロフィールテキスト保存用 +- iconname(varchar(256)) アイコン画像名保存用 +- iconcontent(mediumblob) アイコン画像保存用 +- icontype(varchar(256)) アイコン画像拡張子保存用 +- iconsize(INT) アイコン画像サイズ保存用 +- headname(varchar(256)) ヘッダー画像名保存用 +- headcontent(mediumblob) ヘッダー画像保存用 +- headtype(varchar(256)) ヘッダー画像拡張子保存用 +- headsize(INT) ヘッダー画像サイズ保存用 +- role(varchar(1024)) 「user」のようなロール保存用 +- datetime(datetime) アカウント作成日時保存用 +- follow(text) アカウントがフォローしている人保存用 +- follower(text) アカウントがフォローされている人保存用 +- admin(varchar(25)) 管理者アカウントなら「yes」、それ以外なら「none」と入力。 +- authcode(varchar(256)) 二段階認証用キー保存用 +- backupcode(varchar(256)) 二段階認証のバックアップコード保存用 + +### emoji +- sysid(INT)(AUTO_INCREMENT) アカウントが追加されるとカウントされるシステム用ID +- emojifile(varchar(512)) 絵文字ファイル名保存用 +- emojitype(varchar(256)) 絵文字拡張子保存用 +- emojicontent(mediumblob) 絵文字画像保存用 +- emojiname(varchar(512)) 「:emoji:」のような絵文字名保存用 +- emojiinfo(text) 絵文字についての説明保存用 +- emojidate(datetime) 絵文字登録日時保存用 + +### notice +- sysid(INT)(AUTO_INCREMENT) うんえいからのおしらせが追加されるとカウントされるシステム用ID +- title(varchar(1024)) お知らせのタイトル保存用 +- note(text) お知らせの内容保存用 +- account(varchar(500)) 編集者ID保存用 +- emojidate(datetime) お知らせ登録日時保存用 + +### role +- sysid(INT)(AUTO_INCREMENT) ロールが追加されるとカウントされるシステム用ID +- rolename(varchar(512)) ロール表示名保存用 +- roleauth(varchar(256)) ロールの権限保存用 +- rolecolor(varchar(25)) ロールの色保存用 +- roleidname(varchar(512)) 「user」のようなロール指定用 + +### ueuse +- sysid(INT)(AUTO_INCREMENT) 投稿されるとカウントされるシステム用ID +- account(varchar(256)) 投稿者ID保存用 +- uniqid(varchar(256)) 投稿ID保存用 +- rpuniqid(varchar(256)) リプライ先ID保存用 +- ueuse(text) 投稿内容保存用 +- photo1(varchar(512)) 投稿に添付されたファイルの保存ディレクトリ保存用 +- photo2(varchar(512)) 投稿に添付されたファイルの保存ディレクトリ保存用 +- video1(varchar(512)) 投稿に添付されたファイルの保存ディレクトリ保存用 +- datetime(datetime) 投稿日時保存用 +- favorite(text) いいね保存用 +- abi(text) 投稿者の追記保存用 +- abidate(datetime) 追記日時保存用 + +### notification +- sysid(INT)(AUTO_INCREMENT) 通知されるとカウントされるシステム用ID +- touserid(varchar(512)) 通知先ID保存用 +- title(varchar(1024)) 通知のタイトル +- msg(text) 通知の内容 +- datetime(datetime) 通知日時 +- userchk(varchar(25)) 通知の既読確認 + +### invitation +- sysid(INT)(AUTO_INCREMENT) 追加されるとカウントされるシステム用ID +- code(varchar(512)) 招待コード +- used(varchar(25)) 使用済みかそうでないか +- datetime(datetime) 招待コード仕様日時更新用 + +すべて作成完了したらGithubよりuwuzuのファイルをDLし、解凍し、それをサーバーの動作ディレクトリに置き、Apacheのhttpd.confからその動作ディレクトリを指定し、あとはApacheとphpとMy SQLを起動するだけ! +起動したらまずDBのroleにphpmyadminから「user」ロールを追加権限は「user」でOK。ロール名はとりあえず「一般ユーザー」ロールの色はHEXコード(#を除く)で000000のように指定。 +そしたら普通にuwuzuにアクセスして自分のアカウントを登録。 +それが終わったら一度サーバーを止め、uwuzuの動作ディレクトリ内のserverフォルダ内のファイルを各自設定 +ファイルの機能は以下の通り! +- admininfo.txt : 管理者名(てすとまる/@sampledayo) +- contact.txt : 管理者への連絡用メアド(sample@test.com) +- info.txt : サーバー登録時に表示されるメッセージ(好きな内容) +- privacypolicy.txt : プライバシーポリシー(サーバーのプライバシーポリシーを記載) +- servername.txt : サーバー名(てすとさば) +- terms.txt : 利用規約(サーバーの利用規約を記載) +- uwuzuabout.txt : このファイル(uwuzuを改造した場合は書き換え) +- uwuzuinfo.txt : uwuzuのバージョン等記載(uwuzuを改造した場合は書き換え) +- uwuzurelease.txt : uwuzuのバージョン等記載(uwuzuを改造した場合は書き換え) +- onlyuser.txt : 招待コード機能をオンにするかどうか、「true」でオン、「false」でオフ。招待コードはDBに直接追加。 + + +すべて作成完了したらGithubよりuwuzuのファイルをDLし、解凍し、それをサーバーの動作ディレクトリに置き、Apacheのhttpd.confからその動作ディレクトリを指定し、あとはApacheとphpとMy SQLを起動するだけ! +起動したらまずDBのroleにphpmyadminから「user」ロールを追加権限は「user」でOK。ロール名はとりあえず「一般ユーザー」ロールの色はHEXコード(#を除く)で000000のように指定。 +そしたら普通にuwuzuにアクセスして自分のアカウントを登録。 +それが終わったら一度サーバーを止め、uwuzuの動作ディレクトリ内のserverフォルダ内のファイルを各自設定 +ファイルの機能は以下の通り! +- admininfo.txt : 管理者名(てすとまる/@sampledayo) +- contact.txt : 管理者への連絡用メアド(sample @test.com) +- info.txt : サーバー登録時に表示されるメッセージ(好きな内容) +- privacypolicy.txt : プライバシーポリシー(サーバーのプライバシーポリシーを記載) +- servername.txt : サーバー名(てすとさば) +- terms.txt : 利用規約(サーバーの利用規約を記載) +- uwuzuabout.txt : このファイル(uwuzuを改造した場合は書き換え) +- uwuzuinfo.txt : uwuzuのバージョン等記載(uwuzuを改造した場合は書き換え) +- uwuzurelease.txt : uwuzuのバージョン等記載(uwuzuを改造した場合は書き換え) + +### これでサーバーは完成!!! +脆弱だから自己責任で楽しんでね~() + +### uwuzuを改変する人へ +基本的にReleaseより最新のコードをDLして改変してください。 +Githubのmain内のコードは信頼しないほうがいいです。なぜなら私だいちまるがGithubの使い方をいまいち理解していないからです() +ご迷惑をおかけしますがどうぞよろしくお願いいたします。