Skip to content

Latest commit

 

History

History
278 lines (207 loc) · 7.31 KB

File metadata and controls

278 lines (207 loc) · 7.31 KB

Project Setup


pastikan sudah install web service nginx dan PHP versi 7 keatas

Nginx Setup

buat virtualhost di dalam directory /etc/nginx/sites-available beri nama misal kotayogya

konfignya seperti ini

server {
        ## Your website name goes here.
        server_name kotayogya.id www.kotayogya.id;
        ## Your only path reference.
        root /var/www/kotayogya.id;
        ## This should be in your http block and if it is, it's not needed here.
        index index.php;

        location = /favicon.ico {
                log_not_found off;
                access_log off;
        }

        location = /robots.txt {
                allow all;
                log_not_found off;
                access_log off;
        }

        location / {
                # This is cool because no php is touched for static content.
                # include the "?$args" part so non-default permalinks doesn't break when using query string
                try_files $uri $uri/ /index.php?$args;
        }

        location ~ \.php$ {
                #NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
                include fastcgi_params;
                fastcgi_intercept_errors on;
                fastcgi_pass php;
                #The following parameter can be also included in fastcgi_params file
                fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
        }

        location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
                expires max;
                log_not_found off;
        }
}

setelah selesai buat link ke dalam directory /etc/nginx/sites-enabled dengan perintah seperti ini

ln -s /etc/nginx/sites-available/kotayogya /etc/nginx/sites-enabled

kemudian restart nginx dengan perintah

systemctl restart nginx

Konfigurasi HTTPS dengan certbot

Install certbot di Server dengan perintah

apt install python-certbot-nginx

untuk konfigurasi HTTPS di nginx bisa menggunakan perintah

certbot --nginx -d kotayogya.id -d www.kotayogya.id

Note: dimana kotayogya.id adalah domain nya

kemudian akan muncul peringatan

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
-------------------------------------------------------------------------------
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
-------------------------------------------------------------------------------
Select the appropriate number [1-2] then [enter] (press 'c' to cancel):

pilih nomor 2

lalu restart nginx dengan perintah

systemctl restart nginx

Download Wordpress

setelah itu download wordpress dengan curl

cd /tmp
curl -LO https://wordpress.org/latest.tar.gz

extract wordpress dengan perintah

tar xzvf latest.tar.gz

copy contoh config wordpress

cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php

copy semua hasil extract td kedalam directori /var/www/ dan ganti namanya dengan kotayogya.id

cp -a /tmp/wordpress/. /var/www/kotayogya.id

beri hak akses untuk update otomatis dengan perintah

chown -R www-data:www-data /var/www/kotayogya.id

Generate Key Wordpress

untuk generate key buka url https://api.wordpress.org/secret-key/1.1/salt/

menggunakan perintah curl

curl -s https://api.wordpress.org/secret-key/1.1/salt/

isi dalam wp-config.php

<?php
/**
 * The base configuration for WordPress
 *
 * The wp-config.php creation script uses this file during the
 * installation. You don't have to use the web site, you can
 * copy this file to "wp-config.php" and fill in the values.
 *
 * This file contains the following configurations:
 *
 * * MySQL settings
 * * Secret keys
 * * Database table prefix
 * * ABSPATH
 *
 * @link https://wordpress.org/support/article/editing-wp-config-php/
 *
 * @package WordPress
 */

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'database_name_here' );

/** MySQL database username */
define( 'DB_USER', 'username_here' );

/** MySQL database password */
define( 'DB_PASSWORD', 'password_here' );

/** 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', '' );

/**#@+
 * Authentication Unique Keys and Salts.
 *
 * Change these to different unique phrases!
 * You can generate these using the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service}
 * You can change these at any point in time to invalidate all existing cookies. This will force all users to have to log in again.
 *
 * @since 2.6.0
 */
define( 'AUTH_KEY',         'put your unique phrase here' );
define( 'SECURE_AUTH_KEY',  'put your unique phrase here' );
define( 'LOGGED_IN_KEY',    'put your unique phrase here' );
define( 'NONCE_KEY',        'put your unique phrase here' );
define( 'AUTH_SALT',        'put your unique phrase here' );
define( 'SECURE_AUTH_SALT', 'put your unique phrase here' );
define( 'LOGGED_IN_SALT',   'put your unique phrase here' );
define( 'NONCE_SALT',       'put your unique phrase here' );

/**#@-*/

/**
 * WordPress Database Table prefix.
 *
 * You can have multiple installations in one database if you give each
 * a unique prefix. Only numbers, letters, and underscores please!
 */
$table_prefix = 'wp_';

/**
 * For developers: WordPress debugging mode.
 *
 * Change this to true to enable the display of notices during development.
 * It is strongly recommended that plugin and theme developers use WP_DEBUG
 * in their development environments.
 *
 * For information on other constants that can be used for debugging,
 * visit the documentation.
 *
 * @link https://wordpress.org/support/article/debugging-in-wordpress/
 */
define( 'WP_DEBUG', false );

/* That's all, stop editing! Happy publishing. */

/** Absolute path to the WordPress directory. */
if ( ! defined( 'ABSPATH' ) ) {
        define( 'ABSPATH', __DIR__ . '/' );
}

/** Sets up WordPress vars and included files. */
require_once ABSPATH . 'wp-settings.php';

konfigurasi database dalam wp-config.php

lalu isi

define( 'AUTH_KEY',         'put your unique phrase here' );
define( 'SECURE_AUTH_KEY',  'put your unique phrase here' );
define( 'LOGGED_IN_KEY',    'put your unique phrase here' );
define( 'NONCE_KEY',        'put your unique phrase here' );
define( 'AUTH_SALT',        'put your unique phrase here' );
define( 'SECURE_AUTH_SALT', 'put your unique phrase here' );
define( 'LOGGED_IN_SALT',   'put your unique phrase here' );
define( 'NONCE_SALT',       'put your unique phrase here' );

dengan key yang sudah di generate dari url https://api.wordpress.org/secret-key/1.1/salt/

save lalu restart nginx

systemctl restart nginx

buka domain kotayogya.id

kemudian setup password dan bahasa untuk user.


Kembali Ke Halaman Utama