Difference between revisions of "Package:Wordpress"

From Funtoo
Jump to navigation Jump to search
(import from gentoo)
 
m (clean up database info to the point where page functions)
Line 6: Line 6:
}}
}}
Wordpress is a blog [[web-server-stack]] application content management system.
Wordpress is a blog [[web-server-stack]] application content management system.
{{fancywarning|this page is out of date and designed for the dso php handler}}


== Install ==
== Install ==
Line 13: Line 11:


=== MySQL ===
=== MySQL ===
{{fancywarning|default "changeme" passwords are insecure, change them!}}
To create a database for wordpress to interact with:
To create a database for wordpress to interact with:


Line 24: Line 24:
</pre>
</pre>


Configure WordPress to interact with the database created. (generate goodies for this file with https://api.wordpress.org/secret-key/1.1/salt/)
{{file|name=/var/www/localhost/htdocs/wordpress/wp-config.php|lang=php|desc=insert database information|body=
{{RootCmd|nano /var/www/localhost/htdocs/wordpress/wp-config.php}}
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'wordpress');
/** MySQL database username */
define('DB_USER', 'wordpress');
/** MySQL database password */
define('DB_PASSWORD', 'changeme');
/** MySQL hostname */
define('DB_HOST', 'localhost');
/** Database Charset to use in creating database tables. */
define('DB_CHARSET', 'utf8');
/** The Database Collate type. Don't change this if in doubt. */
define('DB_COLLATE', '');
}}
 
acquire your own salts and insert them into your configuration filehttps://api.wordpress.org/secret-key/1.1/salt/
 
{{file|name=/var/www/localhost/htdocs/wordpress/wp-config.php|lang=php|desc=add a salt|body=
define('AUTH_KEY',        '5%#gO!G+miM;(Jt8U^12SAh');
define('SECURE_AUTH_KEY',  'hJ~Hi:(R/:^l$M;(Vfp:+04$A');
define('LOGGED_IN_KEY',    'f^%jl;[9~8],LA^Eq]-5*');
define('NONCE_KEY',        '&IX,NkKM;M;(Jt(Jt8U^j;(m7');
define('AUTH_SALT',        'TX^29j/P7[q0GhM;(Jt8U^-ug&mh');
define('SECURE_AUTH_SALT', '<p@0$;jThph,2M6e8i<UAW=');
define('LOGGED_IN_SALT',  'O0TY<>%eIAs/=;O&7@LkhxduYhg6');
define('NONCE_SALT',      'VQ^-BR7YM;(Jt8U^D4ZRMY#[');
}}


Database and database user are "wordpress" and passwords are what you set in your mysql database generation step. (changeme fields)
Database and database user are "wordpress" and passwords are what you set in your mysql database generation step. (changeme fields)
Line 40: Line 66:


=== Plugins & Themes & Images ===
=== Plugins & Themes & Images ===
{{SectionNeedsUpdates}}
{{fancywarning|this section is out of date and designed for the dso php handler}}


Wordpress is a bit of a permissions nightmare.  Themes and plugins will ask for ftp access due to permission problems.  For now [[User:Threesixes|Threesixes]] ([[User talk:Threesixes|talk]]) is getting around it by.
Wordpress is a bit of a permissions nightmare.  Themes and plugins will ask for ftp access due to permission problems.  For now [[User:Threesixes|Threesixes]] ([[User talk:Threesixes|talk]]) is getting around it by.

Revision as of 07:46, September 22, 2014

Wordpress

   Tip

We welcome improvements to this page. To edit this page, Create a Funtoo account. Then log in and then click here to edit this page. See our editing guidelines to becoming a wiki-editing pro.

Wordpress is a blog web-server-stack application content management system.

Install

root # emerge wordpress

MySQL

   Warning

default "changeme" passwords are insecure, change them!

To create a database for wordpress to interact with:

root # mysql -u root -p
mysql> CREATE DATABASE IF NOT EXISTS `wordpress` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`;
mysql> CREATE USER 'wordpress'@'localhost' IDENTIFIED BY 'changeme';
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON `wordpress`.* TO 'wordpress'@'localhost' IDENTIFIED BY 'changeme';
mysql> \q
   /var/www/localhost/htdocs/wordpress/wp-config.php (php source code) - insert database information
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'wordpress');
/** MySQL database username */
define('DB_USER', 'wordpress');
/** MySQL database password */
define('DB_PASSWORD', 'changeme');
/** MySQL hostname */
define('DB_HOST', 'localhost');
/** Database Charset to use in creating database tables. */
define('DB_CHARSET', 'utf8');
/** The Database Collate type. Don't change this if in doubt. */
define('DB_COLLATE', '');

acquire your own salts and insert them into your configuration file. https://api.wordpress.org/secret-key/1.1/salt/

   /var/www/localhost/htdocs/wordpress/wp-config.php (php source code) - add a salt
define('AUTH_KEY',         '5%#gO!G+miM;(Jt8U^12SAh');
define('SECURE_AUTH_KEY',  'hJ~Hi:(R/:^l$M;(Vfp:+04$A');
define('LOGGED_IN_KEY',    'f^%jl;[9~8],LA^Eq]-5*');
define('NONCE_KEY',        '&IX,NkKM;M;(Jt(Jt8U^j;(m7');
define('AUTH_SALT',        'TX^29j/P7[q0GhM;(Jt8U^-ug&mh');
define('SECURE_AUTH_SALT', '<p@0$;jThph,2M6e8i<UAW=');
define('LOGGED_IN_SALT',   'O0TY<>%eIAs/=;O&7@LkhxduYhg6');
define('NONCE_SALT',       'VQ^-BR7YM;(Jt8U^D4ZRMY#[');

Database and database user are "wordpress" and passwords are what you set in your mysql database generation step. (changeme fields)

5 minute installer

Point your browser @ http://localhost/wordpress/

Name your website, and make a default administrator password.

Administration & Use

Administer your WordPress @ http://localhost/wordpress/wp-admin/

Your shiny new blog is located @ http://localhost/wordpress/

Plugins & Themes & Images

   Important

This section is in need of updates.

   Warning

this section is out of date and designed for the dso php handler

Wordpress is a bit of a permissions nightmare. Themes and plugins will ask for ftp access due to permission problems. For now Threesixes (talk) is getting around it by.

Fix permissions to enable uploading content such as banners:

root # chown apache:apache /var/www/localhost/htdocs/wordpress/wp-content

Fix permissions to enable themes, and plugins:

root # chown -R apache:apache /var/www/localhost/htdocs/wordpress/wp-admin/
root # chown -R apache:apache /var/www/localhost/htdocs/wordpress/wp-includes/
root # chown -R apache:apache /var/www/localhost/htdocs/wordpress/wp-content/

This clearly is breaking the security of the webapp. To "restore" security once all is set how you want it.

root # chown -R root:root /var/www/localhost/htdocs/wordpress

This is probably not enough, and probably not correct.