Updated installer dependency to PHP 5.6 and ext-xml
- Updated doc
This commit is contained in:
parent
6fe64a5ac6
commit
4034daca08
5 changed files with 76 additions and 71 deletions
134
INSTALL.txt
134
INSTALL.txt
|
@ -1,40 +1,40 @@
|
||||||
|
|
||||||
Friendica Installation
|
Friendica Installation
|
||||||
|
|
||||||
We've tried very hard to ensure that Friendica will run on commodity hosting
|
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.
|
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
|
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
|
complex communications system which more closely resembles an email server
|
||||||
than a web server. For reliability and performance, messages are delivered in
|
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
|
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
|
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.
|
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
|
Many will. But please review the requirements and confirm these with your
|
||||||
hosting provider prior to installation.
|
hosting provider prior to installation.
|
||||||
|
|
||||||
Before you begin: Choose a domain name or subdomain name for your server.
|
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.
|
Put some thought into this - because changing it is currently not-supported.
|
||||||
Things will break, and some of your friends may have difficulty communicating
|
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
|
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
|
if you wish to connect with members of the Diaspora network, as this will
|
||||||
impact the installation requirements.
|
impact the installation requirements.
|
||||||
|
|
||||||
Decide if you will use SSL and obtain an SSL cert. Communications with the
|
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
|
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
|
recognised by the major browsers. Friendica will work with self-signed certs
|
||||||
but Diaspora communication may not. For best results, install your cert PRIOR
|
but Diaspora communication may not. For best results, install your cert PRIOR
|
||||||
to installing Friendica and when visiting your site for the initial
|
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
|
installation in step 5, please use the https: link. (Use the http: or non-SSL
|
||||||
link if your cert is self-signed).
|
link if your cert is self-signed).
|
||||||
|
|
||||||
|
|
||||||
1. Requirements
|
1. Requirements
|
||||||
- Apache with mod-rewrite enabled and "Options All" so you can use a
|
- Apache with mod-rewrite enabled and "Options All" so you can use a
|
||||||
local .htaccess file
|
local .htaccess file
|
||||||
|
|
||||||
- PHP 5.4+.
|
- PHP 5.6+ (PHP 7 recommended for performance).
|
||||||
|
|
||||||
- PHP *command line* access with register_argc_argv set to true in the
|
- PHP *command line* access with register_argc_argv set to true in the
|
||||||
php.ini file [or see 'poormancron' in section 8]
|
php.ini file [or see 'poormancron' in section 8]
|
||||||
|
|
||||||
- curl, gd (with at least jpeg support), mysql, mbstring, xml and openssl extensions
|
- curl, gd (with at least jpeg support), mysql, mbstring, xml and openssl extensions
|
||||||
|
@ -46,18 +46,18 @@ php.ini file [or see 'poormancron' in section 8]
|
||||||
- ability to schedule jobs with cron (Linux/Mac) or Scheduled Tasks
|
- ability to schedule jobs with cron (Linux/Mac) or Scheduled Tasks
|
||||||
(Windows) [Note: other options are presented in Section 8 of this document]
|
(Windows) [Note: other options are presented in Section 8 of this document]
|
||||||
|
|
||||||
- Installation into a top-level domain or sub-domain (without a
|
- Installation into a top-level domain or sub-domain (without a
|
||||||
directory/path component in the URL) is preferred. This is REQUIRED if
|
directory/path component in the URL) is preferred. This is REQUIRED if
|
||||||
you wish to communicate with the Diaspora network.
|
you wish to communicate with the Diaspora network.
|
||||||
|
|
||||||
|
|
||||||
- For alternative server configurations (such as Nginx server and MariaDB
|
- For alternative server configurations (such as Nginx server and MariaDB
|
||||||
database engine), refer to the wiki at https://github.com/friendica/friendica/wiki
|
database engine), refer to the wiki at https://github.com/friendica/friendica/wiki
|
||||||
|
|
||||||
2. Unpack the Friendica files into the root of your web server document area.
|
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
|
- If you copy the directory tree to your webserver, make sure
|
||||||
that you also copy .htaccess - as "dot" files are often hidden
|
that you also copy .htaccess - as "dot" files are often hidden
|
||||||
and aren't normally copied.
|
and aren't normally copied.
|
||||||
|
|
||||||
OR
|
OR
|
||||||
|
@ -74,11 +74,11 @@ password, database name).
|
||||||
- Friendica needs the permission to create and delete fields and tables in its own database.
|
- Friendica needs the permission to create and delete fields and tables in its own database.
|
||||||
- Please check the additional notes if running on MySQ 5.7.17 or newer
|
- Please check the additional notes if running on MySQ 5.7.17 or newer
|
||||||
|
|
||||||
4. If you know in advance that it will be impossible for the web server to
|
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
|
write or create files in your web directory, create an empty file called
|
||||||
.htconfig.php and make it writable by the web server.
|
.htconfig.php and make it writable by the web server.
|
||||||
|
|
||||||
5. Visit your website with a web browser and follow the instructions. Please
|
5. Visit your website with a web browser and follow the instructions. Please
|
||||||
note any error messages and correct these before continuing.
|
note any error messages and correct these before continuing.
|
||||||
|
|
||||||
If you are using SSL with a known signature authority (recommended), use the
|
If you are using SSL with a known signature authority (recommended), use the
|
||||||
|
@ -90,19 +90,19 @@ so in the host name setting for the database.
|
||||||
|
|
||||||
6. *If* the automated installation fails for any reason, check the following:
|
6. *If* the automated installation fails for any reason, check the following:
|
||||||
|
|
||||||
- ".htconfig.php" exists
|
- ".htconfig.php" exists
|
||||||
If not, edit htconfig.php and change system settings. Rename
|
If not, edit htconfig.php and change system settings. Rename
|
||||||
to .htconfig.php
|
to .htconfig.php
|
||||||
- Database is populated.
|
- Database is populated.
|
||||||
If not, import the contents of "database.sql" with phpmyadmin
|
If not, import the contents of "database.sql" with phpmyadmin
|
||||||
or mysql command line
|
or mysql command line
|
||||||
|
|
||||||
7. At this point visit your website again, and register your personal account.
|
7. At this point visit your website again, and register your personal account.
|
||||||
Registration errors should all be recoverable automatically.
|
Registration errors should all be recoverable automatically.
|
||||||
If you get any *critical* failure at this point, it generally indicates the
|
If you get any *critical* failure at this point, it generally indicates the
|
||||||
database was not installed correctly. You might wish to move/rename
|
database was not installed correctly. You might wish to move/rename
|
||||||
.htconfig.php to another name and empty (called 'dropping') the database
|
.htconfig.php to another name and empty (called 'dropping') the database
|
||||||
tables, so that you can start fresh.
|
tables, so that you can start fresh.
|
||||||
|
|
||||||
****************************************************************************
|
****************************************************************************
|
||||||
****************************************************************************
|
****************************************************************************
|
||||||
|
@ -110,38 +110,38 @@ tables, so that you can start fresh.
|
||||||
****************************************************************************
|
****************************************************************************
|
||||||
****************************************************************************
|
****************************************************************************
|
||||||
|
|
||||||
8. Set up a cron job or scheduled task to run the worker once every 5-10
|
8. Set up a cron job or scheduled task to run the worker once every 5-10
|
||||||
minutes to pick up the recent "public" postings of your friends. Example:
|
minutes to pick up the recent "public" postings of your friends. Example:
|
||||||
|
|
||||||
cd /base/directory; /path/to/php scripts/worker.php
|
cd /base/directory; /path/to/php scripts/worker.php
|
||||||
|
|
||||||
Change "/base/directory", and "/path/to/php" as appropriate for your situation.
|
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
|
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:
|
one shown, substituting for your unique paths and settings:
|
||||||
|
|
||||||
*/10 * * * * cd /home/myname/mywebsite; /usr/bin/php scripts/worker.php
|
*/10 * * * * cd /home/myname/mywebsite; /usr/bin/php scripts/worker.php
|
||||||
|
|
||||||
You can generally find the location of PHP by executing "which php". If you
|
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
|
have troubles with this section please contact your hosting provider for
|
||||||
assistance. Friendica will not work correctly if you cannot perform this step.
|
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
|
You should also be sure that $a->config['php_path'] is set correctly, it should
|
||||||
look like (changing it to the correct PHP location)
|
look like (changing it to the correct PHP location)
|
||||||
|
|
||||||
$a->config['php_path'] = '/usr/local/php53/bin/php'
|
$a->config['php_path'] = '/usr/local/php53/bin/php'
|
||||||
|
|
||||||
Alternative: You may be able to use the 'poormancron' plugin to perform this
|
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
|
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
|
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
|
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
|
".htconfig.php" and look for a line describing your plugins. On a fresh
|
||||||
installation, it will look like
|
installation, it will look like
|
||||||
|
|
||||||
$a->config['system']['addon'] = 'js_upload';
|
$a->config['system']['addon'] = 'js_upload';
|
||||||
|
|
||||||
This indicates the "js_upload" addon module is enabled. You may add additional
|
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
|
addons/plugins using this same line in the configuration file. Change it to
|
||||||
read
|
read
|
||||||
|
|
||||||
$a->config['system']['addon'] = 'js_upload,poormancron';
|
$a->config['system']['addon'] = 'js_upload,poormancron';
|
||||||
|
@ -185,40 +185,40 @@ It is however preferable to use the standard approach if configuring a new serve
|
||||||
|
|
||||||
|
|
||||||
#####################################################################
|
#####################################################################
|
||||||
- If you get the message
|
- If you get the message
|
||||||
"System is currently unavailable. Please try again later"
|
"System is currently unavailable. Please try again later"
|
||||||
#####################################################################
|
#####################################################################
|
||||||
|
|
||||||
Check your database settings. It usually means your database could not
|
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
|
be opened or accessed. If the database resides on the same machine, check that
|
||||||
the database server name is "localhost".
|
the database server name is "localhost".
|
||||||
|
|
||||||
#####################################################################
|
#####################################################################
|
||||||
- 500 Internal Error
|
- 500 Internal Error
|
||||||
#####################################################################
|
#####################################################################
|
||||||
|
|
||||||
This could be the result of one of our Apache directives not being
|
This could be the result of one of our Apache directives not being
|
||||||
supported by your version of Apache. Examine your apache server logs.
|
supported by your version of Apache. Examine your apache server logs.
|
||||||
You might remove the line "Options -Indexes" from the .htaccess file if
|
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.
|
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
|
Also check your file permissions. Your website and all contents must generally
|
||||||
be world-readable.
|
be world-readable.
|
||||||
|
|
||||||
It is likely that your web server reported the source of the problem in
|
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
|
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
|
caused the problem. Often this will need to be resolved with your hosting
|
||||||
provider or (if self-hosted) your web server configuration.
|
provider or (if self-hosted) your web server configuration.
|
||||||
|
|
||||||
#####################################################################
|
#####################################################################
|
||||||
- 400 and 4xx "File not found" errors
|
- 400 and 4xx "File not found" errors
|
||||||
#####################################################################
|
#####################################################################
|
||||||
|
|
||||||
First check your file permissions. Your website and all contents must
|
First check your file permissions. Your website and all contents must
|
||||||
generally be world-readable.
|
generally be world-readable.
|
||||||
|
|
||||||
Ensure that mod-rewite is installed and working, and that your
|
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
|
.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
|
containing the word "test" in the top directory of Friendica, make it world
|
||||||
readable and point your web browser to
|
readable and point your web browser to
|
||||||
|
|
||||||
http://yoursitenamehere.com/test.out
|
http://yoursitenamehere.com/test.out
|
||||||
|
@ -229,12 +229,12 @@ http://yoursitenamehere.com/test.out
|
||||||
your .htaccess file to be used (there are rules in this file to block access
|
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).
|
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
|
Make certain the .htaccess file exists and is readable by everybody, then
|
||||||
look for the existence of "AllowOverride None" in the Apache server
|
look for the existence of "AllowOverride None" in the Apache server
|
||||||
configuration for your site. This will need to be changed to
|
configuration for your site. This will need to be changed to
|
||||||
"AllowOverride All".
|
"AllowOverride All".
|
||||||
|
|
||||||
If you do not see the word "test", your .htaccess is working, but it is
|
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.
|
likely that mod-rewrite is not installed in your web server or is not working.
|
||||||
|
|
||||||
On most flavour of Linux,
|
On most flavour of Linux,
|
||||||
|
@ -242,16 +242,16 @@ likely that mod-rewrite is not installed in your web server or is not working.
|
||||||
% a2enmod rewrite
|
% a2enmod rewrite
|
||||||
% /etc/init.d/apache2 restart
|
% /etc/init.d/apache2 restart
|
||||||
|
|
||||||
Consult your hosting provider, experts on your particular Linux
|
Consult your hosting provider, experts on your particular Linux
|
||||||
distribution or (if Windows) the provider of your Apache server software if
|
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
|
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
|
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
|
name of your operating system distribution or Apache package (if using
|
||||||
Windows).
|
Windows).
|
||||||
|
|
||||||
|
|
||||||
#####################################################################
|
#####################################################################
|
||||||
- If you are unable to write the file .htconfig.php during installation
|
- If you are unable to write the file .htconfig.php during installation
|
||||||
due to permissions issues:
|
due to permissions issues:
|
||||||
#####################################################################
|
#####################################################################
|
||||||
|
|
||||||
|
@ -261,7 +261,7 @@ For Linux:
|
||||||
% touch .htconfig.php
|
% touch .htconfig.php
|
||||||
% chmod 777 .htconfig.php
|
% chmod 777 .htconfig.php
|
||||||
|
|
||||||
Retry the installation. As soon as the database has been created,
|
Retry the installation. As soon as the database has been created,
|
||||||
|
|
||||||
******* this is important *********
|
******* this is important *********
|
||||||
|
|
||||||
|
@ -320,15 +320,15 @@ Unable to create all mysql tables on MySQL 5.7.17 or newer
|
||||||
#######################################################################
|
#######################################################################
|
||||||
|
|
||||||
If the setup fails to create all the database tables and/or manual
|
If the setup fails to create all the database tables and/or manual
|
||||||
creation from the command line fails, with this error:
|
creation from the command line fails, with this error:
|
||||||
|
|
||||||
ERROR 1067 (42000) at line XX: Invalid default value for 'created'
|
ERROR 1067 (42000) at line XX: Invalid default value for 'created'
|
||||||
|
|
||||||
You need to adjust your my.cnf and add the following setting under
|
You need to adjust your my.cnf and add the following setting under
|
||||||
the [mysqld] section :
|
the [mysqld] section :
|
||||||
|
|
||||||
sql_mode = '';
|
sql_mode = '';
|
||||||
|
|
||||||
After that, restart mysql and try again.
|
After that, restart mysql and try again.
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -13,6 +13,8 @@
|
||||||
"issues": "https://github.com/friendica/friendica/issues"
|
"issues": "https://github.com/friendica/friendica/issues"
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
|
"php": ">5.6",
|
||||||
|
"ext-xml": "*",
|
||||||
"ezyang/htmlpurifier": "~4.7.0",
|
"ezyang/htmlpurifier": "~4.7.0",
|
||||||
"mobiledetect/mobiledetectlib": "2.8.*",
|
"mobiledetect/mobiledetectlib": "2.8.*",
|
||||||
"league/html-to-markdown": "~4.4.1",
|
"league/html-to-markdown": "~4.4.1",
|
||||||
|
|
7
composer.lock
generated
7
composer.lock
generated
|
@ -4,7 +4,7 @@
|
||||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
|
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
|
||||||
"This file is @generated automatically"
|
"This file is @generated automatically"
|
||||||
],
|
],
|
||||||
"content-hash": "13adf05bb2ebf7a11d9fc4b756fd8fb4",
|
"content-hash": "7a5d27cfcae62b1d9d10a10a343c0c96",
|
||||||
"packages": [
|
"packages": [
|
||||||
{
|
{
|
||||||
"name": "defuse/php-encryption",
|
"name": "defuse/php-encryption",
|
||||||
|
@ -668,6 +668,9 @@
|
||||||
},
|
},
|
||||||
"prefer-stable": false,
|
"prefer-stable": false,
|
||||||
"prefer-lowest": false,
|
"prefer-lowest": false,
|
||||||
"platform": [],
|
"platform": {
|
||||||
|
"php": ">5.6",
|
||||||
|
"ext-xml": "*"
|
||||||
|
},
|
||||||
"platform-dev": []
|
"platform-dev": []
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,7 +26,7 @@ Requirements
|
||||||
---
|
---
|
||||||
|
|
||||||
* Apache with mod-rewrite enabled and "Options All" so you can use a local .htaccess file
|
* Apache with mod-rewrite enabled and "Options All" so you can use a local .htaccess file
|
||||||
* PHP 5.4+.
|
* PHP 5.6+ (PHP 7 is recommended for performance)
|
||||||
* PHP *command line* access with register_argc_argv set to true in the php.ini file
|
* PHP *command line* access with register_argc_argv set to true in the php.ini file
|
||||||
* Curl, GD, PDO, MySQLi, hash, xml and OpenSSL extensions
|
* Curl, GD, PDO, MySQLi, hash, xml and OpenSSL extensions
|
||||||
* some form of email server or email gateway such that PHP mail() works
|
* some form of email server or email gateway such that PHP mail() works
|
||||||
|
|
|
@ -22,7 +22,7 @@ Wir planen, diese Einschränkung in einer zukünftigen Version zu beheben.
|
||||||
|
|
||||||
1. Voraussetzungen
|
1. Voraussetzungen
|
||||||
- Apache mit einer aktiverten mod-rewrite-Funktion und dem Eintrag "Options All", so dass du die lokale .htaccess-Datei nutzen kannst
|
- Apache mit einer aktiverten mod-rewrite-Funktion und dem Eintrag "Options All", so dass du die lokale .htaccess-Datei nutzen kannst
|
||||||
- PHP 5.4+. Je neuer, desto besser.
|
- PHP 5.6+. Je neuer, desto besser.
|
||||||
- PHP *Kommandozeilen*-Zugang mit register_argc_argv auf "true" gesetzt in der php.ini-Datei
|
- PHP *Kommandozeilen*-Zugang mit register_argc_argv auf "true" gesetzt in der php.ini-Datei
|
||||||
- Curl, GD, PDO, MySQLi, xml und OpenSSL-Erweiterung
|
- Curl, GD, PDO, MySQLi, xml und OpenSSL-Erweiterung
|
||||||
- etwas in der Art eines Email-Servers oder eines Gateways wie PHP mail()
|
- etwas in der Art eines Email-Servers oder eines Gateways wie PHP mail()
|
||||||
|
|
Loading…
Reference in a new issue