updated EVERYTHING

This commit is contained in:
Lain Iwakura 2025-06-16 00:42:31 +03:00
parent 14cc0ec57a
commit 8945109728
No known key found for this signature in database
GPG Key ID: C7C18257F2ADC6F8
6 changed files with 62 additions and 8 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
main/config.php

View File

@ -3,12 +3,39 @@ Text0Nly - Simple PGP-enabled messenger
Installation: Installation:
1. Database setup: 1. Database setup:
a. Start MySQL and set root password:
mysql_secure_installation
# Follow prompts to set root password and secure installation
b. Create database and user:
mysql -u root -p mysql -u root -p
# Enter your root password when prompted
CREATE DATABASE messenger; CREATE DATABASE messenger;
USE messenger; USE messenger;
source main/db.sql source main/db.sql;
2. Apache setup: # Create user with password
CREATE USER 'messenger'@'localhost' IDENTIFIED BY 'your_secure_password';
GRANT ALL PRIVILEGES ON messenger.* TO 'messenger'@'localhost';
FLUSH PRIVILEGES;
exit;
c. Test connection:
mysql -u messenger -p
# Enter your messenger user password
# If you can connect, the user is set up correctly
2. Configuration:
Copy main/config.php.example to main/config.php
Edit main/config.php and set your database credentials:
- host: usually 'localhost'
- name: 'messenger'
- user: 'messenger'
- pass: your_secure_password from step 1b
3. Apache setup:
CentOS: CentOS:
yum install httpd php php-mysqlnd mariadb-server yum install httpd php php-mysqlnd mariadb-server
@ -51,6 +78,7 @@ Files:
configs/apache.conf.centos - Apache config for CentOS configs/apache.conf.centos - Apache config for CentOS
configs/apache.conf.debian - Apache config for Debian/Alpine configs/apache.conf.debian - Apache config for Debian/Alpine
configs/php.ini - PHP configuration configs/php.ini - PHP configuration
main/config.php - Database configuration (create from config.php.example)
main/db.sql - Database structure main/db.sql - Database structure
main/index.php - Main page main/index.php - Main page
main/register.php - Registration main/register.php - Registration

View File

@ -5,7 +5,12 @@ header('X-Frame-Options: DENY');
header('X-XSS-Protection: 1; mode=block'); header('X-XSS-Protection: 1; mode=block');
header('Content-Security-Policy: default-src \'self\''); header('Content-Security-Policy: default-src \'self\'');
$db = new PDO('mysql:host=localhost;dbname=messenger', 'root', ''); $config = require 'config.php';
$db = new PDO(
"mysql:host={$config['db']['host']};dbname={$config['db']['name']}",
$config['db']['user'],
$config['db']['pass']
);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
if ($_SERVER['REQUEST_METHOD'] !== 'POST') { if ($_SERVER['REQUEST_METHOD'] !== 'POST') {

9
main/config.php.example Normal file
View File

@ -0,0 +1,9 @@
<?php
return [
'db' => [
'host' => 'localhost',
'name' => 'messenger',
'user' => 'messenger',
'pass' => 'your_password'
]
];

View File

@ -4,8 +4,14 @@ header('X-Frame-Options: DENY');
header('X-XSS-Protection: 1; mode=block'); header('X-XSS-Protection: 1; mode=block');
header('Content-Security-Policy: default-src \'self\''); header('Content-Security-Policy: default-src \'self\'');
$config = require 'config.php';
try { try {
$db = new PDO('mysql:host=localhost;dbname=messenger', 'root', ''); $db = new PDO(
"mysql:host={$config['db']['host']};dbname={$config['db']['name']}",
$config['db']['user'],
$config['db']['pass']
);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) { } catch (PDOException $e) {
die('Connection failed: ' . $e->getMessage()); die('Connection failed: ' . $e->getMessage());

View File

@ -5,7 +5,12 @@ header('X-Frame-Options: DENY');
header('X-XSS-Protection: 1; mode=block'); header('X-XSS-Protection: 1; mode=block');
header('Content-Security-Policy: default-src \'self\''); header('Content-Security-Policy: default-src \'self\'');
$db = new PDO('mysql:host=localhost;dbname=messenger', 'root', ''); $config = require 'config.php';
$db = new PDO(
"mysql:host={$config['db']['host']};dbname={$config['db']['name']}",
$config['db']['user'],
$config['db']['pass']
);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$error = ''; $error = '';