Как установить WordPress на конфигурации ЛЕМП

Введение

В этом учебнике вы узнаете, как установить WordPress на только что созданный экземпляр. Я продемонстрирую установки на сервере Ubuntu 14.04. Эти инструкции могут также работать на более старых версиях Ubuntu и Debian.

Итак давайте начнем.
Шаг 1: Обновление существующих пакетов

apt-get update && apt получить обновления

Шаг второй: Установка Nginx

Nginx является высокая производительность легкий веб-сервер предназначен с целью доставки большого количества статического контента с эффективным использованием системных ресурсов. В отличие от Apache Nginx использует асинхронную событийную модель, которая обеспечивает более предсказуемой производительности под нагрузкой.

Добавим репозиторий стороннего установить последнюю версию Nginx (1.6.1).

sudo apt-get установить python-программное обеспечение свойства
ppa:rtcamp добавить apt репозиторий – y / nginx
sudo apt получить обновление
sudo apt-get установить nginx
Запуск службы nginx

Теперь давайте проверим, если сервер запущен и работает.

http://Your-VPS-IP

Это должно принять вас к Nginx по умолчанию целевую страницу.
Шаг третий: Установить PHP 5.5

PHP является широко используемым открытым исходным кодом общего назначения скриптовый язык, который особенно подходит для веб-разработки и может быть встроен в HTML.

Давайте установить последнюю версию PHP на нашем сервере.

sudo добавить apt репозиторий ppa:ondrej / php5
sudo apt получить обновление
sudo apt-get установить php5-common php5-mysqlnd php5-xmlrpc php5-curl php5-gd php5-кли php5-fpm php-pear php5-разработчика php5-imap php5-mcrypt

Если вы хотите проверить вашу версию PHP, выполните следующую команду:

PHP – v

Вы увидите нечто вроде этого.

PHP 5.5.16-1+deb.sury.org~trusty+1 (cli) (постройки: 2014 25 Авг 10:24:59)
Copyright (c) 1997-2014 группе PHP
Zend Engine v2.5.0, авторское право (c) 1998-2014 Zend технологии
withZendOPcache v7.0.4-dev, авторское право (c) 1999-2014, по технологии Zend

Теперь мы сделаем небольшое изменение сделать наши установки более безопасной конфигурации. Откройте файл конфигурации основной php5-fpm с привилегиями root:

sudo нано /etc/php5/fpm/php.ini

Нажмите сочетание клавиш Ctrl + W и поиска для cgi.fix_pathinfo=. Раскомментируйте это (;) удалить и изменить 1 до 0. После изменений строка должна выглядеть следующим образом:

CGI.fix_pathinfo=0

Сохранить (Ctrl + O) и закройте файл (Ctrl + X).

Теперь нам просто нужно перезапустить наш процессор PHP, введя:

sudo перезапуск службы php5-fpm

Шаг четвертый: Установка MySQL

Для хранения и управления базами данных, нам нужно установить MySQL. Вы можете легко установить его, введя следующее в консоли:

sudo apt получить установки mysql сервера

Во время процесса установки вам будет предложено установить пароль корня MySQL. После того как вы установили пароль root, нам придется рассказать MySQL для создания структуры каталогов, где он будет хранить базы данных.

sudo mysql_install_db

Давайте закончить его, запустив сценарий безопасности, который будет изменить некоторые неуверенность по умолчанию.

sudomysql_secure_installation

Просто введите пароль корня MySQL и типа n, если вы не хотите, чтобы изменить его. После этого введите y, чтобы каждый вопрос.
Установить часовой пояс (условный)

По умолчанию часовой пояс вашего сервера является UTC. Если вы живете в другой часовой пояс, вы можете изменить его, введя следующую команду:

sudo dpkg-reconfigure tzdata

На данный момент ваш сервер ЛЕМП — запущен и работает.
Шаг 5: Настройка Nginx служить WordPress

Давайте начнем наши WordPress установки, создавая блок сервера Nginx для нашего сайта.

sudo нано /etc/nginx/sites-available/wordpress

Вставьте следующий код:

server {
listen 80;

root /var/www/wordpress;
index index.php index.html index.htm;

server_name domain.com;

error_page 404 /404.html;

error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location / {
# try_files $uri $uri/ =404;
try_files $uri $uri/ /index.php?q=$uri&$args;
}

location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}

location = /favicon.ico {
access_log off;
log_not_found off;
expires max;
}
location = /robots.txt {
access_log off;
log_not_found off;
}

# Cache Static Files For As Long As Possible
location ~*
\.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|css|rss|atom|js|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$
{
access_log off;
log_not_found off;
expires max;
}
# Security Settings For Better Privacy Deny Hidden Files
location ~ /\. {
deny all;
access_log off;
log_not_found off;
}
# Return 403 Forbidden For readme.(txt|html) or license.(txt|html)
if ($request_uri ~* “^.+(readme|license)\.(txt|html)$”) {
return 403;
}
# Disallow PHP In Upload Folder
location /wp-content/uploads/ {
location ~ \.php$ {
deny all;
}
}
}

This is a well tuned WordPress configuration file with permalinks support. Save (Ctrl+O) and close the file (Ctrl+X). Let’s enable the server block by symlinking:

sudo ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/wordpress

Next, we’ll delete the Nginx default server block.

sudo rm /etc/nginx/sites-enabled/default

Now, we’ll tune the main Nginx configuration file:

sudo nano /etc/nginx/nginx.conf

Make sure that the number of worker processes is equal to the number of cores in your instance.

user www-data;
worker_processes 1;
pid /run/nginx.pid;

Add use epoll; to the events block.

events {
worker_connections 4096;
multi_accept on;
use epoll;
}

Add client_max_body_size and server_tokens off directive. Set keepalive_timeout to 30 seconds.

##
# Basic Settings
##

sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 30;
types_hash_max_size 2048;
server_tokens off;
client_max_body_size 100m;

# server_names_hash_bucket_size 64;
# server_name_in_redirect off;

include /etc/nginx/mime.types;
default_type application/octet-stream;

Make sure that the whole Gzip settings block looks like this:

##
# Gzip Settings
##

gzip on;
gzip_disable “msie6”;

gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

Save (Ctrl+O) and close the file (Ctrl+X). Then restart the server:

sudo service nginx restart

Step Six: Configure PHP

If you want to upload files more than 2mb to your WordPress site, you have to increase PHP upload size variables in php.ini.

sudo nano /etc/php5/fpm/php.ini

Now, press Ctrl+W and search for “upload_max_filesize” and set it to 100m.

upload_max_filesize=100M

Do the same with post_max_size. post_max_size needs to be the same size or larger than upload_max_filesize.

post_max_size=100M

Restart PHP.

sudo service php5-fpm restart

Step Seven: Setting up the MySQL database

In this step, we’ll create the database user and tables. Go ahead and log into the MySQL shell:

mysql -u root -p

Log in using your MySQL root password. We will need to create a WordPress database, along with a user in the database. First, let’s make the database (feel free to give it whatever name you like):

CREATE DATABASE wordpress;
Query OK, 1 row affected (0.00 sec)

After that, we need to create a new user. Please replace the database, name, and password with whatever you prefer:

CREATE USER wordpressuser@localhost;
Query OK, 0 rows affected (0.00 sec)

Set a password for your new user:

SET PASSWORD FOR wordpressuser@localhost= PASSWORD(“password”);
Query OK, 0 rows affected (0.00 sec)

Finish up by granting all privileges to the new user. Without this command, the WordPress installer will not be able to start up:

GRANT ALL PRIVILEGES ON wordpress.* TO wordpressuser@localhost IDENTIFIED BY ‘password’;
Query OK, 0 rows affected (0.00 sec)

Then refresh MySQL:

FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

Exit the MySQL shell:

exit

Step Eight: Installing the WordPress files

We’re almost done. Let’s proceed to installing WordPress.

First navigate to the site root directory:

mkdir /var/www/
cd /var/www/

Now, download the latest version of WordPress:

wget http://wordpress.org/latest.tar.gz

Extract it from the archive:

tar -xzvf latest.tar.gz

пользователя www-data. Это позволит будущим автоматическое обновление плагинов WordPress и редактирования файлов с SFTPng of WordPress plugins and file editing with SFTP.

sudo chown -R www-data:www-data wordpress/
sudo usermod -a -G www-data www-data

Вы сделали! Ваш новый сайт WordPress теперь готова. Просто перейдите на свой веб-сайт и завершите установку.