move installation files out of basedir
This commit is contained in:
270
install/INSTALL.txt
Normal file
270
install/INSTALL.txt
Normal file
@@ -0,0 +1,270 @@
|
||||
|
||||
Friendica Installation
|
||||
|
||||
We've tried very hard to ensure that Friendica will run on commodity hosting
|
||||
platforms - such as those used to host Wordpress blogs and Drupal websites.
|
||||
But be aware that Friendica is more than a simple web application. It is a
|
||||
complex communications system which more closely resembles an email server
|
||||
than a web server. For reliability and performance, messages are delivered in
|
||||
the background and are queued for later delivery when sites are down. This
|
||||
kind of functionality requires a bit more of the host system than the typical
|
||||
blog. Not every PHP/MySQL hosting provider will be able to support Friendica.
|
||||
Many will. But please review the requirements and confirm these with your
|
||||
hosting provider prior to installation.
|
||||
|
||||
Before you begin: Choose a domain name or subdomain name for your server.
|
||||
Put some thought into this - because changing it is currently not-supported.
|
||||
Things will break, and some of your friends may have difficulty communicating
|
||||
with you. We plan to address this limitation in a future release. Also decide
|
||||
if you wish to connect with members of the Diaspora network, as this will
|
||||
impact the installation requirements.
|
||||
|
||||
Decide if you will use SSL and obtain an SSL cert. Communications with the
|
||||
Diaspora network MAY require both SSL AND an SSL cert signed by a CA which is
|
||||
recognised by the major browsers. Friendica will work with self-signed certs
|
||||
but Diaspora communication may not. For best results, install your cert PRIOR
|
||||
to installing Friendica and when visiting your site for the initial
|
||||
installation in step 5, please use the https: link. (Use the http: or non-SSL
|
||||
link if your cert is self-signed).
|
||||
|
||||
|
||||
1. Requirements
|
||||
- Apache with mod-rewrite enabled and "Options All" so you can use a
|
||||
local .htaccess file
|
||||
|
||||
- PHP 5.3+. The later the better.
|
||||
|
||||
- PHP *command line* access with register_argc_argv set to true in the
|
||||
php.ini file [or see 'poormancron' in section 8]
|
||||
|
||||
- curl, gd (with at least jpeg support), mysql, mbstring, mcrypt, and openssl extensions
|
||||
|
||||
- some form of email server or email gateway such that PHP mail() works
|
||||
|
||||
- Mysql 5.x
|
||||
|
||||
- ability to schedule jobs with cron (Linux/Mac) or Scheduled Tasks
|
||||
(Windows) [Note: other options are presented in Section 8 of this document]
|
||||
|
||||
- Installation into a top-level domain or sub-domain (without a
|
||||
directory/path component in the URL) is preferred. This is REQUIRED if
|
||||
you wish to communicate with the Diaspora network.
|
||||
|
||||
2. Unpack the Friendica files into the root of your web server document area.
|
||||
|
||||
- If you copy the directory tree to your webserver, make sure
|
||||
that you also copy .htaccess - as "dot" files are often hidden
|
||||
and aren't normally copied.
|
||||
|
||||
3. Create an empty database and note the access details (hostname, username,
|
||||
password, database name).
|
||||
|
||||
|
||||
4. If you know in advance that it will be impossible for the web server to
|
||||
write or create files in your web directory, create an empty file called
|
||||
.htconfig.php and make it writable by the web server.
|
||||
|
||||
5. Visit your website with a web browser and follow the instructions. Please
|
||||
note any error messages and correct these before continuing. If you are using
|
||||
SSL with a known signature authority (recommended), use the https: link to your
|
||||
website. If you are using a self-signed cert or no cert, use the http: link.
|
||||
|
||||
6. *If* the automated installation fails for any reason, check the following:
|
||||
|
||||
- ".htconfig.php" exists
|
||||
If not, edit htconfig.php and change system settings. Rename
|
||||
to .htconfig.php
|
||||
- Database is populated.
|
||||
If not, import the contents of "database.sql" with phpmyadmin
|
||||
or mysql command line
|
||||
|
||||
7. At this point visit your website again, and register your personal account.
|
||||
Registration errors should all be recoverable automatically.
|
||||
If you get any *critical* failure at this point, it generally indicates the
|
||||
database was not installed correctly. You might wish to move/rename
|
||||
.htconfig.php to another name and empty (called 'dropping') the database
|
||||
tables, so that you can start fresh.
|
||||
|
||||
****************************************************************************
|
||||
****************************************************************************
|
||||
******** THIS NEXT STEP IS IMPORTANT!!!! ***********
|
||||
****************************************************************************
|
||||
****************************************************************************
|
||||
|
||||
8. Set up a cron job or scheduled task to run the poller once every 5-10
|
||||
minutes to pick up the recent "public" postings of your friends. Example:
|
||||
|
||||
cd /base/directory; /path/to/php include/poller.php
|
||||
|
||||
Change "/base/directory", and "/path/to/php" as appropriate for your situation.
|
||||
|
||||
If you are using a Linux server, run "crontab -e" and add a line like the
|
||||
one shown, substituting for your unique paths and settings:
|
||||
|
||||
*/10 * * * * cd /home/myname/mywebsite; /usr/bin/php include/poller.php
|
||||
|
||||
You can generally find the location of PHP by executing "which php". If you
|
||||
have troubles with this section please contact your hosting provider for
|
||||
assistance. Friendica will not work correctly if you cannot perform this step.
|
||||
|
||||
You should also be sure that $a->config['php_path'] is set correctly, it should
|
||||
look like (changing it to the correct PHP location)
|
||||
|
||||
$a->config['php_path'] = '/usr/local/php53/bin/php'
|
||||
|
||||
Alternative: You may be able to use the 'poormancron' plugin to perform this
|
||||
step if you are using a recent Friendica release. 'poormancron' may result in
|
||||
perfomance and memory issues and is only suitable for small sites with one or
|
||||
two users and a handful of contacts. To do this, edit the file
|
||||
".htconfig.php" and look for a line describing your plugins. On a fresh
|
||||
installation, it will look like
|
||||
|
||||
$a->config['system']['addon'] = 'js_upload';
|
||||
|
||||
This indicates the "js_upload" addon module is enabled. You may add additional
|
||||
addons/plugins using this same line in the configuration file. Change it to
|
||||
read
|
||||
|
||||
$a->config['system']['addon'] = 'js_upload,poormancron';
|
||||
|
||||
and save your changes.
|
||||
|
||||
|
||||
|
||||
#####################################################################
|
||||
|
||||
If things don't work...
|
||||
|
||||
#####################################################################
|
||||
|
||||
|
||||
#####################################################################
|
||||
- If you get the message
|
||||
"System is currently unavailable. Please try again later"
|
||||
#####################################################################
|
||||
|
||||
Check your database settings. It usually means your database could not
|
||||
be opened or accessed. If the database resides on the same machine, check that
|
||||
the database server name is "localhost".
|
||||
|
||||
#####################################################################
|
||||
- 500 Internal Error
|
||||
#####################################################################
|
||||
|
||||
This could be the result of one of our Apache directives not being
|
||||
supported by your version of Apache. Examine your apache server logs.
|
||||
You might remove the line "Options -Indexes" from the .htaccess file if
|
||||
you are using a Windows server as this has been known to cause problems.
|
||||
Also check your file permissions. Your website and all contents must generally
|
||||
be world-readable.
|
||||
|
||||
It is likely that your web server reported the source of the problem in
|
||||
its error log files. Please review these system error logs to determine what
|
||||
caused the problem. Often this will need to be resolved with your hosting
|
||||
provider or (if self-hosted) your web server configuration.
|
||||
|
||||
#####################################################################
|
||||
- 400 and 4xx "File not found" errors
|
||||
#####################################################################
|
||||
|
||||
First check your file permissions. Your website and all contents must
|
||||
generally be world-readable.
|
||||
|
||||
Ensure that mod-rewite is installed and working, and that your
|
||||
.htaccess file is being used. To verify the latter, create a file test.out
|
||||
containing the word "test" in the top directory of Friendica, make it world
|
||||
readable and point your web browser to
|
||||
|
||||
http://yoursitenamehere.com/test.out
|
||||
|
||||
This file should be blocked. You should get a permission denied message.
|
||||
|
||||
If you see the word "test" your Apache configuration is not allowing
|
||||
your .htaccess file to be used (there are rules in this file to block access
|
||||
to any file with .out at the end, as these are typically used for system logs).
|
||||
|
||||
Make certain the .htaccess file exists and is readable by everybody, then
|
||||
look for the existence of "AllowOverride None" in the Apache server
|
||||
configuration for your site. This will need to be changed to
|
||||
"AllowOverride All".
|
||||
|
||||
If you do not see the word "test", your .htaccess is working, but it is
|
||||
likely that mod-rewrite is not installed in your web server or is not working.
|
||||
|
||||
On most flavour of Linux,
|
||||
|
||||
% a2enmod rewrite
|
||||
% /etc/init.d/apache2 restart
|
||||
|
||||
Consult your hosting provider, experts on your particular Linux
|
||||
distribution or (if Windows) the provider of your Apache server software if
|
||||
you need to change either of these and can not figure out how. There is
|
||||
a lot of help available on the web. Google "mod-rewrite" along with the
|
||||
name of your operating system distribution or Apache package (if using
|
||||
Windows).
|
||||
|
||||
|
||||
#####################################################################
|
||||
- If you are unable to write the file .htconfig.php during installation
|
||||
due to permissions issues:
|
||||
#####################################################################
|
||||
|
||||
create an empty file with that name and give it world-write permission.
|
||||
For Linux:
|
||||
|
||||
% touch .htconfig.php
|
||||
% chmod 777 .htconfig.php
|
||||
|
||||
Retry the installation. As soon as the database has been created,
|
||||
|
||||
******* this is important *********
|
||||
|
||||
% chmod 755 .htconfig.php
|
||||
|
||||
#####################################################################
|
||||
- Some configurations with "suhosin" security are configured without
|
||||
an ability to run external processes. Friendica requires this ability.
|
||||
Following are some notes provided by one of our members.
|
||||
#####################################################################
|
||||
|
||||
On my server I use the php protection system Suhosin
|
||||
[http://www.hardened-php.net/suhosin/]. One of the things it does is to block
|
||||
certain functions like proc_open, as configured in /etc/php5/conf.d/suhosin.ini:
|
||||
|
||||
suhosin.executor.func.blacklist = proc_open, ...
|
||||
|
||||
For those sites like Friendica that really need these functions they can be
|
||||
enabled, e.g. in /etc/apache2/sites-available/friendica:
|
||||
|
||||
<Directory /var/www/friendica/>
|
||||
php_admin_value suhosin.executor.func.blacklist none
|
||||
php_admin_value suhosin.executor.eval.blacklist none
|
||||
</Directory>
|
||||
|
||||
This enables every function for Friendica if accessed via browser, but not for
|
||||
the cronjob that is called via php command line. I attempted to enable it for
|
||||
cron by using something like
|
||||
|
||||
*/10 * * * * cd /var/www/friendica/friendica/ && sudo -u www-data /usr/bin/php
|
||||
-d suhosin.executor.func.blacklist=none -d suhosin.executor.eval.blacklist=none
|
||||
-f include/poller.php
|
||||
|
||||
This worked well for simple test cases, but the friendica-cron still failed with
|
||||
a fatal error:
|
||||
suhosin[22962]: ALERT - function within blacklist called: proc_open() (attacker
|
||||
'REMOTE_ADDR not set', file '/var/www/friendica/friendica/boot.php', line 1341)
|
||||
|
||||
After a while I noticed, that include/poller.php calls further php script via
|
||||
proc_open. These scripts themselves also use proc_open and fail, because they
|
||||
are NOT called with -d suhosin.executor.func.blacklist=none.
|
||||
|
||||
So the simple solution is to put the correct parameters into .htconfig.php:
|
||||
// Location of PHP command line processor
|
||||
$a->config['php_path'] = '/usr/bin/php -d suhosin.executor.func.blacklist=none
|
||||
-d suhosin.executor.eval.blacklist=none';
|
||||
|
||||
|
||||
This is obvious as soon as you notice that the friendica-cron uses proc_open to
|
||||
execute php-scripts that also use proc_open, but it took me quite some time to
|
||||
find that out. I hope this saves some time for other people using suhosin with
|
||||
function blacklists.
|
921
install/database.sql
Normal file
921
install/database.sql
Normal file
@@ -0,0 +1,921 @@
|
||||
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
|
||||
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||
/*!40101 SET NAMES utf8 */;
|
||||
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `abook` (
|
||||
`abook_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`abook_account` int(10) unsigned NOT NULL,
|
||||
`abook_channel` int(10) unsigned NOT NULL,
|
||||
`abook_xchan` char(255) NOT NULL DEFAULT '',
|
||||
`abook_my_perms` int(11) NOT NULL DEFAULT '0',
|
||||
`abook_their_perms` int(11) NOT NULL DEFAULT '0',
|
||||
`abook_closeness` tinyint(3) unsigned NOT NULL DEFAULT '255',
|
||||
`abook_created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`abook_updated` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`abook_connnected` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`abook_flags` int(11) NOT NULL DEFAULT '0',
|
||||
`abook_profile` char(64) NOT NULL DEFAULT '',
|
||||
PRIMARY KEY (`abook_id`),
|
||||
KEY `abook_account` (`abook_account`),
|
||||
KEY `abook_channel` (`abook_channel`),
|
||||
KEY `abook_xchan` (`abook_xchan`),
|
||||
KEY `abook_my_perms` (`abook_my_perms`),
|
||||
KEY `abook_their_perms` (`abook_their_perms`),
|
||||
KEY `abook_closeness` (`abook_closeness`),
|
||||
KEY `abook_created` (`abook_created`),
|
||||
KEY `abook_updated` (`abook_updated`),
|
||||
KEY `abook_connnected` (`abook_connnected`),
|
||||
KEY `abook_flags` (`abook_flags`),
|
||||
KEY `abook_profile` (`abook_profile`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `account` (
|
||||
`account_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`account_parent` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`account_default_channel` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`account_salt` char(32) NOT NULL DEFAULT '',
|
||||
`account_password` char(255) NOT NULL DEFAULT '',
|
||||
`account_email` char(255) NOT NULL DEFAULT '',
|
||||
`account_language` char(16) NOT NULL DEFAULT 'en',
|
||||
`account_created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`account_lastlog` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`account_flags` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`account_roles` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`account_reset` char(255) NOT NULL DEFAULT '',
|
||||
`account_expires` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`account_expire_notified` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`account_service_class` char(32) NOT NULL DEFAULT '',
|
||||
PRIMARY KEY (`account_id`),
|
||||
KEY `account_email` (`account_email`),
|
||||
KEY `account_service_class` (`account_service_class`),
|
||||
KEY `account_parent` (`account_parent`),
|
||||
KEY `account_flags` (`account_flags`),
|
||||
KEY `account_roles` (`account_roles`),
|
||||
KEY `account_lastlog` (`account_lastlog`),
|
||||
KEY `account_expires` (`account_expires`),
|
||||
KEY `account_default_channel` (`account_default_channel`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `addon` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`name` char(255) NOT NULL,
|
||||
`version` char(255) NOT NULL,
|
||||
`installed` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`hidden` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`timestamp` bigint(20) NOT NULL DEFAULT '0',
|
||||
`plugin_admin` tinyint(1) NOT NULL DEFAULT '0',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `hidden` (`hidden`),
|
||||
KEY `name` (`name`),
|
||||
KEY `installed` (`installed`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `attach` (
|
||||
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`aid` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`uid` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`hash` char(64) NOT NULL DEFAULT '',
|
||||
`filename` char(255) NOT NULL DEFAULT '',
|
||||
`filetype` char(64) NOT NULL DEFAULT '',
|
||||
`filesize` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`data` longblob NOT NULL,
|
||||
`created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`edited` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`allow_cid` mediumtext NOT NULL,
|
||||
`allow_gid` mediumtext NOT NULL,
|
||||
`deny_cid` mediumtext NOT NULL,
|
||||
`deny_gid` mediumtext NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `aid` (`aid`),
|
||||
KEY `uid` (`uid`),
|
||||
KEY `hash` (`hash`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `auth_codes` (
|
||||
`id` varchar(40) NOT NULL,
|
||||
`client_id` varchar(20) NOT NULL,
|
||||
`redirect_uri` varchar(200) NOT NULL,
|
||||
`expires` int(11) NOT NULL,
|
||||
`scope` varchar(250) NOT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `cache` (
|
||||
`k` char(255) NOT NULL,
|
||||
`v` text NOT NULL,
|
||||
`updated` datetime NOT NULL,
|
||||
PRIMARY KEY (`k`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `challenge` (
|
||||
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`challenge` char(255) NOT NULL,
|
||||
`dfrn-id` char(255) NOT NULL,
|
||||
`expire` int(11) NOT NULL,
|
||||
`type` char(255) NOT NULL,
|
||||
`last_update` char(255) NOT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `channel` (
|
||||
`channel_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`channel_account_id` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`channel_primary` tinyint(1) unsigned NOT NULL DEFAULT '0',
|
||||
`channel_name` char(255) NOT NULL DEFAULT '',
|
||||
`channel_address` char(255) NOT NULL DEFAULT '',
|
||||
`channel_guid` char(255) NOT NULL DEFAULT '',
|
||||
`channel_guid_sig` char(255) NOT NULL DEFAULT '',
|
||||
`channel_hash` char(255) NOT NULL DEFAULT '',
|
||||
`channel_timezone` char(128) NOT NULL DEFAULT 'UTC',
|
||||
`channel_location` char(255) NOT NULL DEFAULT '',
|
||||
`channel_theme` char(255) NOT NULL DEFAULT '',
|
||||
`channel_startpage` char(255) NOT NULL DEFAULT '',
|
||||
`channel_pubkey` text NOT NULL,
|
||||
`channel_prvkey` text NOT NULL,
|
||||
`channel_notifyflags` int(10) unsigned NOT NULL DEFAULT '65535',
|
||||
`channel_pageflags` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`channel_max_anon_mail` int(10) unsigned NOT NULL DEFAULT '10',
|
||||
`channel_max_friend_req` int(10) unsigned NOT NULL DEFAULT '10',
|
||||
`channel_expire_days` int(11) NOT NULL DEFAULT '0',
|
||||
`channel_passwd_reset` char(255) NOT NULL DEFAULT '',
|
||||
`channel_default_gid` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`channel_allow_cid` mediumtext NOT NULL,
|
||||
`channel_allow_gid` mediumtext NOT NULL,
|
||||
`channel_deny_cid` mediumtext NOT NULL,
|
||||
`channel_deny_gid` mediumtext NOT NULL,
|
||||
`channel_r_stream` tinyint(3) unsigned NOT NULL DEFAULT '128',
|
||||
`channel_r_profile` tinyint(3) unsigned NOT NULL DEFAULT '128',
|
||||
`channel_r_photos` tinyint(3) unsigned NOT NULL DEFAULT '128',
|
||||
`channel_r_abook` tinyint(3) unsigned NOT NULL DEFAULT '128',
|
||||
`channel_w_stream` tinyint(3) unsigned NOT NULL DEFAULT '128',
|
||||
`channel_w_wall` tinyint(3) unsigned NOT NULL DEFAULT '128',
|
||||
`channel_w_tagwall` tinyint(3) unsigned NOT NULL DEFAULT '128',
|
||||
`channel_w_comment` tinyint(3) unsigned NOT NULL DEFAULT '128',
|
||||
`channel_w_mail` tinyint(3) unsigned NOT NULL DEFAULT '128',
|
||||
`channel_w_photos` tinyint(3) unsigned NOT NULL DEFAULT '128',
|
||||
`channel_w_chat` tinyint(3) unsigned NOT NULL DEFAULT '128',
|
||||
PRIMARY KEY (`channel_id`),
|
||||
KEY `channel_account_id` (`channel_account_id`),
|
||||
KEY `channel_primary` (`channel_primary`),
|
||||
KEY `channel_name` (`channel_name`),
|
||||
KEY `channel_address` (`channel_address`),
|
||||
KEY `channel_timezone` (`channel_timezone`),
|
||||
KEY `channel_location` (`channel_location`),
|
||||
KEY `channel_theme` (`channel_theme`),
|
||||
KEY `channel_notifyflags` (`channel_notifyflags`),
|
||||
KEY `channel_pageflags` (`channel_pageflags`),
|
||||
KEY `channel_max_anon_mail` (`channel_max_anon_mail`),
|
||||
KEY `channel_max_friend_req` (`channel_max_friend_req`),
|
||||
KEY `channel_default_gid` (`channel_default_gid`),
|
||||
KEY `channel_r_stream` (`channel_r_stream`),
|
||||
KEY `channel_r_profile` (`channel_r_profile`),
|
||||
KEY `channel_r_photos` (`channel_r_photos`),
|
||||
KEY `channel_r_abook` (`channel_r_abook`),
|
||||
KEY `channel_w_stream` (`channel_w_stream`),
|
||||
KEY `channel_w_wall` (`channel_w_wall`),
|
||||
KEY `channel_w_tagwall` (`channel_w_tagwall`),
|
||||
KEY `channel_w_comment` (`channel_w_comment`),
|
||||
KEY `channel_w_mail` (`channel_w_mail`),
|
||||
KEY `channel_w_photos` (`channel_w_photos`),
|
||||
KEY `channel_w_chat` (`channel_w_chat`),
|
||||
KEY `channel_guid` (`channel_guid`),
|
||||
KEY `channel_guid_sig` (`channel_guid_sig`),
|
||||
KEY `channel_hash` (`channel_hash`),
|
||||
KEY `channel_expire_days` (`channel_expire_days`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `clients` (
|
||||
`client_id` varchar(20) NOT NULL,
|
||||
`pw` varchar(20) NOT NULL,
|
||||
`redirect_uri` varchar(200) NOT NULL,
|
||||
`name` text,
|
||||
`icon` text,
|
||||
`uid` int(11) NOT NULL DEFAULT '0',
|
||||
PRIMARY KEY (`client_id`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `config` (
|
||||
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`cat` char(255) CHARACTER SET ascii NOT NULL,
|
||||
`k` char(255) CHARACTER SET ascii NOT NULL,
|
||||
`v` text NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `access` (`cat`,`k`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `contact` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`aid` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`uid` int(11) NOT NULL COMMENT 'owner uid',
|
||||
`created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`my_perms` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`their_perms` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`self` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'boolean 1 == info for local UID, primarily name and photo to use in item displays.',
|
||||
`remote_self` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`rel` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`duplex` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`network` char(255) NOT NULL,
|
||||
`name` char(255) NOT NULL,
|
||||
`nick` char(255) NOT NULL,
|
||||
`attag` char(255) NOT NULL,
|
||||
`photo` text NOT NULL COMMENT 'remote photo URL initially until approved',
|
||||
`thumb` text NOT NULL,
|
||||
`micro` text NOT NULL,
|
||||
`site_pubkey` text NOT NULL,
|
||||
`issued_id` char(255) NOT NULL,
|
||||
`dfrn_id` char(255) NOT NULL,
|
||||
`url` char(255) NOT NULL,
|
||||
`nurl` char(255) NOT NULL,
|
||||
`addr` char(255) NOT NULL,
|
||||
`alias` char(255) NOT NULL,
|
||||
`pubkey` text NOT NULL,
|
||||
`prvkey` text NOT NULL,
|
||||
`batch` char(255) NOT NULL,
|
||||
`request` text NOT NULL,
|
||||
`notify` char(255) NOT NULL,
|
||||
`poll` text NOT NULL,
|
||||
`confirm` text NOT NULL,
|
||||
`poco` text NOT NULL,
|
||||
`aes_allow` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`last_update` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`success_update` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`name_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`uri_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`avatar_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`term_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`priority` tinyint(3) NOT NULL,
|
||||
`blocked` tinyint(1) NOT NULL DEFAULT '1',
|
||||
`readonly` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`writable` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`forum` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`prv` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`hidden` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`archive` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`pending` tinyint(1) NOT NULL DEFAULT '1',
|
||||
`rating` tinyint(1) NOT NULL DEFAULT '0' COMMENT '0-5 reputation, 0 unknown, 1 call police, 5 inscrutable',
|
||||
`reason` text NOT NULL COMMENT 'why a rating was given - will help friends decide to make friends or not',
|
||||
`closeness` tinyint(2) NOT NULL DEFAULT '99',
|
||||
`info` mediumtext NOT NULL,
|
||||
`profile_id` int(11) NOT NULL DEFAULT '0' COMMENT 'which profile to display - 0 is public default',
|
||||
`bdyear` char(4) NOT NULL COMMENT 'birthday notify flag',
|
||||
`bd` date NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `uid` (`uid`),
|
||||
KEY `self` (`self`),
|
||||
KEY `blocked` (`blocked`),
|
||||
KEY `readonly` (`readonly`),
|
||||
KEY `network` (`network`),
|
||||
KEY `name` (`name`),
|
||||
KEY `nick` (`nick`),
|
||||
KEY `attag` (`attag`),
|
||||
KEY `addr` (`addr`),
|
||||
KEY `url` (`url`),
|
||||
KEY `batch` (`batch`),
|
||||
KEY `nurl` (`nurl`),
|
||||
KEY `pending` (`pending`),
|
||||
KEY `hidden` (`hidden`),
|
||||
KEY `archive` (`archive`),
|
||||
KEY `forum` (`forum`),
|
||||
KEY `notify` (`notify`),
|
||||
KEY `my_perms` (`my_perms`),
|
||||
KEY `their_perms` (`their_perms`),
|
||||
KEY `aid` (`aid`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `deliverq` (
|
||||
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`cmd` char(32) NOT NULL,
|
||||
`item` int(11) NOT NULL,
|
||||
`contact` int(11) NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `item` (`item`),
|
||||
KEY `contact` (`contact`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `event` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`account` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`uid` int(11) NOT NULL,
|
||||
`cid` int(11) NOT NULL,
|
||||
`message_id` char(255) NOT NULL,
|
||||
`created` datetime NOT NULL,
|
||||
`edited` datetime NOT NULL,
|
||||
`start` datetime NOT NULL,
|
||||
`finish` datetime NOT NULL,
|
||||
`summary` text NOT NULL,
|
||||
`desc` text NOT NULL,
|
||||
`location` text NOT NULL,
|
||||
`type` char(255) NOT NULL,
|
||||
`nofinish` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`adjust` tinyint(1) NOT NULL DEFAULT '1',
|
||||
`ignore` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`allow_cid` mediumtext NOT NULL,
|
||||
`allow_gid` mediumtext NOT NULL,
|
||||
`deny_cid` mediumtext NOT NULL,
|
||||
`deny_gid` mediumtext NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `uid` (`uid`),
|
||||
KEY `cid` (`cid`),
|
||||
KEY `uri` (`message_id`),
|
||||
KEY `type` (`type`),
|
||||
KEY `start` (`start`),
|
||||
KEY `finish` (`finish`),
|
||||
KEY `adjust` (`adjust`),
|
||||
KEY `nofinish` (`nofinish`),
|
||||
KEY `ignore` (`ignore`),
|
||||
KEY `account` (`account`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `fcontact` (
|
||||
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`url` char(255) NOT NULL,
|
||||
`name` char(255) NOT NULL,
|
||||
`photo` char(255) NOT NULL,
|
||||
`request` char(255) NOT NULL,
|
||||
`nick` char(255) NOT NULL,
|
||||
`addr` char(255) NOT NULL,
|
||||
`batch` char(255) NOT NULL,
|
||||
`notify` char(255) NOT NULL,
|
||||
`poll` char(255) NOT NULL,
|
||||
`confirm` char(255) NOT NULL,
|
||||
`priority` tinyint(1) NOT NULL,
|
||||
`network` char(32) NOT NULL,
|
||||
`alias` char(255) NOT NULL,
|
||||
`pubkey` text NOT NULL,
|
||||
`updated` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `addr` (`addr`),
|
||||
KEY `network` (`network`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `ffinder` (
|
||||
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`uid` int(10) unsigned NOT NULL,
|
||||
`cid` int(10) unsigned NOT NULL,
|
||||
`fid` int(10) unsigned NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `uid` (`uid`),
|
||||
KEY `cid` (`cid`),
|
||||
KEY `fid` (`fid`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `fserver` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`server` char(255) NOT NULL,
|
||||
`posturl` char(255) NOT NULL,
|
||||
`key` text NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `server` (`server`),
|
||||
KEY `server_2` (`server`),
|
||||
KEY `posturl` (`posturl`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `fsuggest` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`uid` int(11) NOT NULL,
|
||||
`cid` int(11) NOT NULL,
|
||||
`name` char(255) NOT NULL,
|
||||
`url` char(255) NOT NULL,
|
||||
`request` char(255) NOT NULL,
|
||||
`photo` char(255) NOT NULL,
|
||||
`note` text NOT NULL,
|
||||
`created` datetime NOT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `gcign` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`uid` int(11) NOT NULL,
|
||||
`gcid` int(11) NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `uid` (`uid`),
|
||||
KEY `gcid` (`gcid`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `gcontact` (
|
||||
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`name` char(255) NOT NULL,
|
||||
`url` char(255) NOT NULL,
|
||||
`nurl` char(255) NOT NULL,
|
||||
`photo` char(255) NOT NULL,
|
||||
`connect` char(255) NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `nurl` (`nurl`),
|
||||
KEY `name` (`name`),
|
||||
KEY `url` (`url`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `glink` (
|
||||
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`cid` int(11) NOT NULL,
|
||||
`uid` int(11) NOT NULL,
|
||||
`gcid` int(11) NOT NULL,
|
||||
`zcid` int(11) NOT NULL,
|
||||
`updated` datetime NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `cid` (`cid`),
|
||||
KEY `uid` (`uid`),
|
||||
KEY `gcid` (`gcid`),
|
||||
KEY `zcid` (`zcid`),
|
||||
KEY `updated` (`updated`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `group` (
|
||||
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`uid` int(10) unsigned NOT NULL,
|
||||
`visible` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`deleted` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`name` char(255) NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `uid` (`uid`),
|
||||
KEY `visible` (`visible`),
|
||||
KEY `deleted` (`deleted`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `group_member` (
|
||||
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`uid` int(10) unsigned NOT NULL,
|
||||
`gid` int(10) unsigned NOT NULL,
|
||||
`contact-id` int(10) unsigned NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `uid` (`uid`),
|
||||
KEY `gid` (`gid`),
|
||||
KEY `contact-id` (`contact-id`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `guid` (
|
||||
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`guid` char(64) NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `guid` (`guid`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `hook` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`hook` char(255) NOT NULL,
|
||||
`file` char(255) NOT NULL,
|
||||
`function` char(255) NOT NULL,
|
||||
`priority` int(11) unsigned NOT NULL DEFAULT '0',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `hook` (`hook`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `hubloc` (
|
||||
`hubloc_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`hubloc_guid` char(255) NOT NULL DEFAULT '',
|
||||
`hubloc_guid_sig` char(255) NOT NULL,
|
||||
`hubloc_hash` char(255) NOT NULL,
|
||||
`hubloc_flags` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`hubloc_url` char(255) NOT NULL DEFAULT '',
|
||||
`hubloc_url_sig` char(255) NOT NULL,
|
||||
`hubloc_callback` char(255) NOT NULL DEFAULT '',
|
||||
`hubloc_connect` char(255) NOT NULL DEFAULT '',
|
||||
`hubloc_sitekey` text NOT NULL,
|
||||
PRIMARY KEY (`hubloc_id`),
|
||||
KEY `hubloc_url` (`hubloc_url`),
|
||||
KEY `hubloc_guid` (`hubloc_guid`),
|
||||
KEY `hubloc_flags` (`hubloc_flags`),
|
||||
KEY `hubloc_guid_sig` (`hubloc_guid_sig`),
|
||||
KEY `hubloc_url_sig` (`hubloc_url_sig`),
|
||||
KEY `hubloc_connect` (`hubloc_connect`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `intro` (
|
||||
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`uid` int(10) unsigned NOT NULL,
|
||||
`fid` int(11) NOT NULL DEFAULT '0',
|
||||
`contact-id` int(11) NOT NULL,
|
||||
`knowyou` tinyint(1) NOT NULL,
|
||||
`duplex` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`note` text NOT NULL,
|
||||
`hash` char(255) NOT NULL,
|
||||
`datetime` datetime NOT NULL,
|
||||
`blocked` tinyint(1) NOT NULL DEFAULT '1',
|
||||
`ignore` tinyint(1) NOT NULL DEFAULT '0',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `uid` (`uid`),
|
||||
KEY `fid` (`fid`),
|
||||
KEY `hash` (`hash`),
|
||||
KEY `datetime` (`datetime`),
|
||||
KEY `blocked` (`blocked`),
|
||||
KEY `ignore` (`ignore`),
|
||||
KEY `contact-id` (`contact-id`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `item` (
|
||||
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`uri` char(255) CHARACTER SET ascii NOT NULL DEFAULT '',
|
||||
`aid` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`uid` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`wall` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`parent` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`parent_uri` char(255) CHARACTER SET ascii NOT NULL DEFAULT '',
|
||||
`thr_parent` char(255) NOT NULL DEFAULT '',
|
||||
`created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`edited` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`commented` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`received` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`changed` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`owner_xchan` char(255) NOT NULL DEFAULT '',
|
||||
`author_xchan` char(255) NOT NULL DEFAULT '',
|
||||
`title` char(255) NOT NULL DEFAULT '',
|
||||
`body` mediumtext NOT NULL,
|
||||
`app` char(255) NOT NULL DEFAULT '',
|
||||
`lang` char(64) NOT NULL DEFAULT '',
|
||||
`verb` char(255) NOT NULL DEFAULT '',
|
||||
`obj_type` char(255) NOT NULL DEFAULT '',
|
||||
`object` text NOT NULL,
|
||||
`tgt_type` char(255) NOT NULL DEFAULT '',
|
||||
`target` text NOT NULL,
|
||||
`postopts` text NOT NULL,
|
||||
`plink` char(255) NOT NULL DEFAULT '',
|
||||
`resource_id` char(255) NOT NULL DEFAULT '',
|
||||
`resource_type` char(16) NOT NULL DEFAULT '',
|
||||
`attach` mediumtext NOT NULL,
|
||||
`inform` mediumtext NOT NULL,
|
||||
`location` char(255) NOT NULL DEFAULT '',
|
||||
`coord` char(255) NOT NULL DEFAULT '',
|
||||
`allow_cid` mediumtext NOT NULL,
|
||||
`allow_gid` mediumtext NOT NULL,
|
||||
`deny_cid` mediumtext NOT NULL,
|
||||
`deny_gid` mediumtext NOT NULL,
|
||||
`item_restrict` int(11) NOT NULL DEFAULT '0',
|
||||
`item_flags` int(11) NOT NULL DEFAULT '0',
|
||||
`item_private` tinyint(4) NOT NULL DEFAULT '0',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `uri` (`uri`),
|
||||
KEY `uid` (`uid`),
|
||||
KEY `parent` (`parent`),
|
||||
KEY `created` (`created`),
|
||||
KEY `edited` (`edited`),
|
||||
KEY `received` (`received`),
|
||||
KEY `wall` (`wall`),
|
||||
KEY `uid_commented` (`uid`,`commented`),
|
||||
KEY `uid_created` (`uid`,`created`),
|
||||
KEY `parent_uri` (`parent_uri`),
|
||||
KEY `aid` (`aid`),
|
||||
KEY `owner_xchan` (`owner_xchan`),
|
||||
KEY `author_xchan` (`author_xchan`),
|
||||
KEY `resource_type` (`resource_type`),
|
||||
KEY `item_restrict` (`item_restrict`),
|
||||
KEY `item_flags` (`item_flags`),
|
||||
KEY `uid_uri` (`uri`,`uid`),
|
||||
KEY `commented` (`commented`),
|
||||
KEY `verb` (`verb`),
|
||||
KEY `item_private` (`item_private`),
|
||||
FULLTEXT KEY `title` (`title`),
|
||||
FULLTEXT KEY `body` (`body`),
|
||||
FULLTEXT KEY `allow_cid` (`allow_cid`),
|
||||
FULLTEXT KEY `allow_gid` (`allow_gid`),
|
||||
FULLTEXT KEY `deny_cid` (`deny_cid`),
|
||||
FULLTEXT KEY `deny_gid` (`deny_gid`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `item_id` (
|
||||
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`iid` int(11) NOT NULL,
|
||||
`uid` int(11) NOT NULL,
|
||||
`sid` char(255) NOT NULL,
|
||||
`service` char(255) NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `uid` (`uid`),
|
||||
KEY `sid` (`sid`),
|
||||
KEY `service` (`service`),
|
||||
KEY `iid` (`iid`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `locks` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`name` char(128) NOT NULL,
|
||||
`locked` tinyint(1) NOT NULL DEFAULT '0',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `mail` (
|
||||
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`aid` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`uid` int(10) unsigned NOT NULL,
|
||||
`guid` char(64) NOT NULL,
|
||||
`from-name` char(255) NOT NULL,
|
||||
`from-photo` char(255) NOT NULL,
|
||||
`from-url` char(255) NOT NULL,
|
||||
`contact-id` char(255) NOT NULL,
|
||||
`convid` int(11) NOT NULL,
|
||||
`title` char(255) NOT NULL,
|
||||
`body` mediumtext NOT NULL,
|
||||
`seen` tinyint(1) NOT NULL,
|
||||
`reply` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`replied` tinyint(1) NOT NULL,
|
||||
`unknown` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`uri` char(255) NOT NULL,
|
||||
`parent_uri` char(255) NOT NULL,
|
||||
`created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `reply` (`reply`),
|
||||
KEY `uid` (`uid`),
|
||||
KEY `guid` (`guid`),
|
||||
KEY `seen` (`seen`),
|
||||
KEY `uri` (`uri`),
|
||||
KEY `created` (`created`),
|
||||
KEY `convid` (`convid`),
|
||||
KEY `unknown` (`unknown`),
|
||||
KEY `contact-id` (`contact-id`),
|
||||
KEY `parent_uri` (`parent_uri`),
|
||||
KEY `aid` (`aid`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `manage` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`uid` int(11) NOT NULL,
|
||||
`mid` int(11) NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `uid` (`uid`),
|
||||
KEY `mid` (`mid`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `notify` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`hash` char(64) NOT NULL,
|
||||
`name` char(255) NOT NULL,
|
||||
`url` char(255) NOT NULL,
|
||||
`photo` char(255) NOT NULL,
|
||||
`date` datetime NOT NULL,
|
||||
`msg` mediumtext NOT NULL,
|
||||
`uid` int(11) NOT NULL,
|
||||
`link` char(255) NOT NULL,
|
||||
`parent` int(11) NOT NULL,
|
||||
`seen` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`type` int(11) NOT NULL,
|
||||
`verb` char(255) NOT NULL,
|
||||
`otype` char(16) NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `type` (`type`),
|
||||
KEY `seen` (`seen`),
|
||||
KEY `uid` (`uid`),
|
||||
KEY `date` (`date`),
|
||||
KEY `hash` (`hash`),
|
||||
KEY `parent` (`parent`),
|
||||
KEY `link` (`link`),
|
||||
KEY `otype` (`otype`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `notify-threads` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`notify-id` int(11) NOT NULL,
|
||||
`master-parent-item` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`parent-item` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`receiver-uid` int(11) NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `master-parent-item` (`master-parent-item`),
|
||||
KEY `receiver-uid` (`receiver-uid`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `outq` (
|
||||
`outq_hash` char(255) NOT NULL,
|
||||
`outq_account` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`outq_channel` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`outq_xchan` char(255) NOT NULL DEFAULT '',
|
||||
`outq_hub` char(255) NOT NULL DEFAULT '',
|
||||
`outq_created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`outq_updated` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`outq_msg` mediumtext NOT NULL,
|
||||
PRIMARY KEY (`outq_hash`),
|
||||
KEY `outq_account` (`outq_account`),
|
||||
KEY `outq_channel` (`outq_channel`),
|
||||
KEY `outq_xchan` (`outq_xchan`),
|
||||
KEY `outq_hub` (`outq_hub`),
|
||||
KEY `outq_created` (`outq_created`),
|
||||
KEY `outq_updated` (`outq_updated`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `pconfig` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`uid` int(11) NOT NULL DEFAULT '0',
|
||||
`cat` char(255) CHARACTER SET ascii NOT NULL,
|
||||
`k` char(255) CHARACTER SET ascii NOT NULL,
|
||||
`v` mediumtext NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `access` (`uid`,`cat`,`k`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `photo` (
|
||||
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`aid` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`uid` int(10) unsigned NOT NULL,
|
||||
`contact-id` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`guid` char(64) NOT NULL,
|
||||
`resource_id` char(255) NOT NULL,
|
||||
`created` datetime NOT NULL,
|
||||
`edited` datetime NOT NULL,
|
||||
`title` char(255) NOT NULL,
|
||||
`desc` text NOT NULL,
|
||||
`album` char(255) NOT NULL,
|
||||
`filename` char(255) NOT NULL,
|
||||
`type` char(128) NOT NULL DEFAULT 'image/jpeg',
|
||||
`height` smallint(6) NOT NULL,
|
||||
`width` smallint(6) NOT NULL,
|
||||
`data` mediumblob NOT NULL,
|
||||
`scale` tinyint(3) NOT NULL,
|
||||
`profile` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`allow_cid` mediumtext NOT NULL,
|
||||
`allow_gid` mediumtext NOT NULL,
|
||||
`deny_cid` mediumtext NOT NULL,
|
||||
`deny_gid` mediumtext NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `uid` (`uid`),
|
||||
KEY `resource-id` (`resource_id`),
|
||||
KEY `album` (`album`),
|
||||
KEY `scale` (`scale`),
|
||||
KEY `profile` (`profile`),
|
||||
KEY `type` (`type`),
|
||||
KEY `contact-id` (`contact-id`),
|
||||
KEY `aid` (`aid`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `profile` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`profile_guid` char(64) NOT NULL DEFAULT '',
|
||||
`aid` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`uid` int(11) NOT NULL,
|
||||
`profile_name` char(255) NOT NULL,
|
||||
`is_default` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`hide_friends` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`name` char(255) NOT NULL,
|
||||
`pdesc` char(255) NOT NULL,
|
||||
`dob` char(32) NOT NULL DEFAULT '0000-00-00',
|
||||
`address` char(255) NOT NULL,
|
||||
`locality` char(255) NOT NULL,
|
||||
`region` char(255) NOT NULL,
|
||||
`postal_code` char(32) NOT NULL,
|
||||
`country_name` char(255) NOT NULL,
|
||||
`hometown` char(255) NOT NULL,
|
||||
`gender` char(32) NOT NULL,
|
||||
`marital` char(255) NOT NULL,
|
||||
`with` text NOT NULL,
|
||||
`howlong` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`sexual` char(255) NOT NULL,
|
||||
`politic` char(255) NOT NULL,
|
||||
`religion` char(255) NOT NULL,
|
||||
`pub_keywords` text NOT NULL,
|
||||
`prv_keywords` text NOT NULL,
|
||||
`likes` text NOT NULL,
|
||||
`dislikes` text NOT NULL,
|
||||
`about` text NOT NULL,
|
||||
`summary` char(255) NOT NULL,
|
||||
`music` text NOT NULL,
|
||||
`book` text NOT NULL,
|
||||
`tv` text NOT NULL,
|
||||
`film` text NOT NULL,
|
||||
`interest` text NOT NULL,
|
||||
`romance` text NOT NULL,
|
||||
`work` text NOT NULL,
|
||||
`education` text NOT NULL,
|
||||
`contact` text NOT NULL,
|
||||
`homepage` char(255) NOT NULL,
|
||||
`photo` char(255) NOT NULL,
|
||||
`thumb` char(255) NOT NULL,
|
||||
`publish` tinyint(1) NOT NULL DEFAULT '0',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `guid` (`profile_guid`,`uid`),
|
||||
KEY `uid` (`uid`),
|
||||
KEY `locality` (`locality`),
|
||||
KEY `hometown` (`hometown`),
|
||||
KEY `gender` (`gender`),
|
||||
KEY `marital` (`marital`),
|
||||
KEY `sexual` (`sexual`),
|
||||
KEY `publish` (`publish`),
|
||||
KEY `aid` (`aid`),
|
||||
KEY `is_default` (`is_default`),
|
||||
KEY `hide_friends` (`hide_friends`),
|
||||
KEY `postal_code` (`postal_code`),
|
||||
KEY `country_name` (`country_name`),
|
||||
KEY `profile_guid` (`profile_guid`),
|
||||
FULLTEXT KEY `pub_keywords` (`pub_keywords`),
|
||||
FULLTEXT KEY `prv_keywords` (`prv_keywords`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `profile_check` (
|
||||
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`uid` int(10) unsigned NOT NULL,
|
||||
`cid` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`dfrn_id` char(255) NOT NULL,
|
||||
`sec` char(255) NOT NULL,
|
||||
`expire` int(11) NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `uid` (`uid`),
|
||||
KEY `cid` (`cid`),
|
||||
KEY `dfrn_id` (`dfrn_id`),
|
||||
KEY `sec` (`sec`),
|
||||
KEY `expire` (`expire`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `queue` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`cid` int(11) NOT NULL,
|
||||
`network` char(32) NOT NULL,
|
||||
`created` datetime NOT NULL,
|
||||
`last` datetime NOT NULL,
|
||||
`content` mediumtext NOT NULL,
|
||||
`batch` tinyint(1) NOT NULL DEFAULT '0',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `cid` (`cid`),
|
||||
KEY `network` (`network`),
|
||||
KEY `created` (`created`),
|
||||
KEY `last` (`last`),
|
||||
KEY `batch` (`batch`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `register` (
|
||||
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`hash` char(255) NOT NULL,
|
||||
`created` datetime NOT NULL,
|
||||
`uid` int(10) unsigned NOT NULL,
|
||||
`password` char(255) NOT NULL,
|
||||
`language` char(16) NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `hash` (`hash`),
|
||||
KEY `created` (`created`),
|
||||
KEY `uid` (`uid`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `session` (
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`sid` char(255) NOT NULL,
|
||||
`data` text NOT NULL,
|
||||
`expire` int(10) unsigned NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `sid` (`sid`),
|
||||
KEY `expire` (`expire`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `spam` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`uid` int(11) NOT NULL,
|
||||
`spam` int(11) NOT NULL DEFAULT '0',
|
||||
`ham` int(11) NOT NULL DEFAULT '0',
|
||||
`term` char(255) NOT NULL,
|
||||
`date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `uid` (`uid`),
|
||||
KEY `spam` (`spam`),
|
||||
KEY `ham` (`ham`),
|
||||
KEY `term` (`term`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `term` (
|
||||
`tid` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`aid` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`uid` int(10) unsigned NOT NULL DEFAULT '0',
|
||||
`oid` int(10) unsigned NOT NULL,
|
||||
`otype` tinyint(3) unsigned NOT NULL,
|
||||
`type` tinyint(3) unsigned NOT NULL,
|
||||
`term` char(255) NOT NULL,
|
||||
`url` char(255) NOT NULL,
|
||||
PRIMARY KEY (`tid`),
|
||||
KEY `oid` (`oid`),
|
||||
KEY `otype` (`otype`),
|
||||
KEY `type` (`type`),
|
||||
KEY `term` (`term`),
|
||||
KEY `uid` (`uid`),
|
||||
KEY `aid` (`aid`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `tokens` (
|
||||
`id` varchar(40) NOT NULL,
|
||||
`secret` text NOT NULL,
|
||||
`client_id` varchar(20) NOT NULL,
|
||||
`expires` int(11) NOT NULL,
|
||||
`scope` varchar(200) NOT NULL,
|
||||
`uid` int(11) NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `client_id` (`client_id`),
|
||||
KEY `expires` (`expires`),
|
||||
KEY `uid` (`uid`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `xchan` (
|
||||
`xchan_hash` char(255) NOT NULL,
|
||||
`xchan_guid` char(255) NOT NULL DEFAULT '',
|
||||
`xchan_guid_sig` char(255) NOT NULL DEFAULT '',
|
||||
`xchan_pubkey` text NOT NULL,
|
||||
`xchan_photo_mimetype` char(32) NOT NULL DEFAULT 'image/jpeg',
|
||||
`xchan_photo_l` char(255) NOT NULL DEFAULT '',
|
||||
`xchan_photo_m` char(255) NOT NULL DEFAULT '',
|
||||
`xchan_photo_s` char(255) NOT NULL DEFAULT '',
|
||||
`xchan_addr` char(255) NOT NULL DEFAULT '',
|
||||
`xchan_profile` char(255) NOT NULL DEFAULT '',
|
||||
`xchan_name` char(255) NOT NULL DEFAULT '',
|
||||
`xchan_network` char(255) NOT NULL DEFAULT '',
|
||||
`xchan_photo_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`xchan_name_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
PRIMARY KEY (`xchan_hash`),
|
||||
KEY `xchan_guid` (`xchan_guid`),
|
||||
KEY `xchan_addr` (`xchan_addr`),
|
||||
KEY `xchan_profile` (`xchan_profile`),
|
||||
KEY `xchan_name` (`xchan_name`),
|
||||
KEY `xchan_network` (`xchan_network`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
93
install/htconfig.sample.php
Normal file
93
install/htconfig.sample.php
Normal file
@@ -0,0 +1,93 @@
|
||||
<?php
|
||||
|
||||
// If automatic system installation fails:
|
||||
|
||||
// Copy or rename this file to .htconfig.php
|
||||
|
||||
// Why .htconfig.php? Because it contains sensitive information which could
|
||||
// give somebody complete control of your database. Apache's default
|
||||
// configuration denies access to and refuses to serve any file beginning
|
||||
// with .ht
|
||||
|
||||
// Then set the following for your MySQL installation
|
||||
|
||||
$db_host = 'your.mysqlhost.com';
|
||||
$db_user = 'mysqlusername';
|
||||
$db_pass = 'mysqlpassword';
|
||||
$db_data = 'mysqldatabasename';
|
||||
|
||||
// Choose a legal default timezone. If you are unsure, use "America/Los_Angeles".
|
||||
// It can be changed later and only applies to timestamps for anonymous viewers.
|
||||
|
||||
$default_timezone = 'America/Los_Angeles';
|
||||
|
||||
// What is your site name?
|
||||
|
||||
$a->config['sitename'] = "Friendica Social Network";
|
||||
|
||||
// Your choices are REGISTER_OPEN, REGISTER_APPROVE, or REGISTER_CLOSED.
|
||||
// Be certain to create your own personal account before setting
|
||||
// REGISTER_CLOSED. 'register_text' (if set) will be displayed prominently on
|
||||
// the registration page. REGISTER_APPROVE requires you set 'admin_email'
|
||||
// to the email address of an already registered person who can authorise
|
||||
// and/or approve/deny the request.
|
||||
|
||||
// In order to perform system administration via the admin panel, admin_email
|
||||
// must precisely match the email address of the person logged in.
|
||||
|
||||
$a->config['system']['register_policy'] = REGISTER_OPEN;
|
||||
$a->config['register_text'] = '';
|
||||
$a->config[system']['admin_email'] = '';
|
||||
|
||||
// Maximum size of an imported message, 0 is unlimited
|
||||
|
||||
$a->config['max_import_size'] = 200000;
|
||||
|
||||
// maximum size of uploaded photos
|
||||
|
||||
$a->config['system']['maximagesize'] = 800000;
|
||||
|
||||
// Location of PHP command line processor
|
||||
|
||||
$a->config['php_path'] = 'php';
|
||||
|
||||
// You shouldn't need to change anything else.
|
||||
// Location of global directory submission page.
|
||||
|
||||
$a->config['system']['directory_submit_url'] = 'http://dir.friendika.com/submit';
|
||||
$a->config['system']['directory_search_url'] = 'http://dir.friendika.com/directory?search=';
|
||||
|
||||
// PuSH - aka pubsubhubbub URL. This makes delivery of public posts as fast as private posts
|
||||
|
||||
$a->config['system']['huburl'] = 'http://pubsubhubbub.appspot.com';
|
||||
|
||||
// Server-to-server private message encryption (RINO) is allowed by default.
|
||||
// Encryption will only be provided if this setting is true and the
|
||||
// PHP mcrypt extension is installed on both systems
|
||||
|
||||
$a->config['system']['rino_encrypt'] = true;
|
||||
|
||||
// allowed themes (change this from admin panel after installation)
|
||||
|
||||
$a->config['system']['allowed_themes'] = 'dispy,quattro,vier,darkzero,duepuntozero,greenzero,purplezero,slackr,diabook';
|
||||
|
||||
// default system theme
|
||||
|
||||
$a->config['system']['theme'] = 'duepuntozero';
|
||||
|
||||
|
||||
// By default allow pseudonyms
|
||||
|
||||
$a->config['system']['no_regfullname'] = true;
|
||||
|
||||
// If set to true the priority settings of ostatus contacts are used
|
||||
$a->config['system']['ostatus_use_priority'] = false;
|
||||
|
||||
// If enabled, all items are cached in the given directory
|
||||
$a->config['system']['itemcache'] = "";
|
||||
|
||||
// If enabled, the lockpath is used for a lockfile to check if the poller is running
|
||||
$a->config['system']['lockpath'] = "";
|
||||
|
||||
// If enabled, the MyBB fulltext engine is used
|
||||
// $a->config['system']['use_fulltext_engine'] = true;
|
Reference in New Issue
Block a user