Revision as of 08:57, November 21, 2014 by Threesixes (Talk | contribs) (put notices that wordpress has hidden admin levels assigned to the first registered account.)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)


Source Repository:Repository:Gentoo Portage Tree


Summary: Wordpress php and mysql based content management system (CMS)

Use Flags

Installs Akismet comment spam plug-in
Installs themes (including default theme)



Keychain 2.8.2 Released

Keychain 2.8.2, a maintenance and bug fix release, is now available.
2015-11-16 by Drobbins

Unfork Tree is Live!

The "unfork" tree is now merged into the main Funtoo Linux tree, and Funtoo Linux is now using shards for core packages, x11 (including media libraries), KDE, GNOME, python and perl.
2015-10-12 by Drobbins

OpenSSH 7 Disables DSA Keys By Default

Please be aware of this important change to avoid getting locked out of your Funtoo server.
2015-10-07 by Drobbins



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. Wordpress powers much of the internet, and can be converted into several other systems. Wordpress can be a blog, forum, bug tracker, social media platform, or even a web store. There are several plugins available, and it has a large community backing it.


# emerge wordpress

Nginx Server Configuration

Nginx does not respect the .htaccess files generated by wordpress. To manually insert url rewrite rules:

/etc/nginx/sites-available/localhost - nginx rewrite rules
location /wordpress {
                try_files $uri $uri/ /wordpress/index.php?$args;

More information can be found here: http://wiki.nginx.org/WordPress

Permission Adjustments

if using nginx change permissions to nobody:nobody instead of apache:apache

Plugins, Themes & Images

Wordpress needs some directories to be run under the webserver or php-fpm user for uploading images, and installing themes & plugins.

Fix permissions to enable uploading content such as banners:

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

Fix permissions to enable themes, and plugins:

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


/var/www/localhost/htdocs/wordpress/wp-config.php contains plaintext sql database passwords. we should change the permissions to lock this file down.

# chmod 640 /var/www/localhost/htdocs/wordpress/wp-config.php
# chown apache:apache /var/www/localhost/htdocs/wordpress/wp-config.php



default "changeme" passwords are insecure, change them!

To create a database for wordpress to interact with:

# 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 username, and password.


Wordpress has hidden admin levels assigned to the first registered account. Make sure you leave it as a generic admin account.

Administration & Use

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

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

Your new blogs rss feed is located @ http://localhost/wordpress/feed/

Suggested Themes

  • Responsive

Suggested Plugins

  • Add Meta Tags
  • Disqus Comment System
  • Google XML Sitemaps
  • Share Buttons by AddToAny
  • WooCommerce
  • Wordfence Security
  • YouTube widget responsive