При попытке установки Wordpress открывается содержимое wp-config.php
Пытаюсь установить Wordpress.
- Скачал последнюю версию
wget https://wordpress.org/latest.zip
- Распаковал в свою директорию на сервере
/var/www/wplearn/html
- Перенес содержимое из
/var/www/wplearn/html/wordpress
в/var/www/wplearn/html
- Настроил конфиг
nginx
(вместо wp.example.site в реальном конфиге мой адрес)
server {
server_name wp.example.site;
root /var/www/wplearn/html;
index index.php index.html index.htm index.nginx-debian.html;
access_log /var/www/wplearn/log/access.log;
error_log /var/www/wplearn/log/error.log;
keepalive_timeout 60;
location / {
try_files $uri $uri/ /index.php;
}
location ~ ^/wp-json/ {
rewrite ^/wp-json/(.*?)$ /?rest_route=/$1 last;
}
location ~* /wp-sitemap.*\.xml {
try_files $uri $uri/ /index.php$is_args$args;
}
# error_page 404 /404.html;
# error_page 500 502 503 504 /50x.html;
client_max_body_size 20M;
location = /50x.html {
root /var/www/wplearn/html;
}
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
rewrite ^ /robots.txt break;
allow all;
log_not_found off;
access_log off;
}
location ~ /\.ht {
deny all;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
fastcgi_param DOCUMENT_ROOT /var/www/wplearn/html/;
fastcgi_param SCRIPT_FILENAME /var/www/wplearn/html$fastcgi_script_name;
fastcgi_param PATH_TRANSLATED /var/www/wplearn/html$fastcgi_script_name;
include fastcgi_params;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param HTTPS on;
fastcgi_intercept_errors on;
fastcgi_ignore_client_abort off;
fastcgi_connect_timeout 60;
fastcgi_send_timeout 180;
fastcgi_read_timeout 180;
fastcgi_buffer_size 128k;
fastcgi_buffers 4 256k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
# Add headers to serve security related headers
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
add_header X-Permitted-Cross-Domain-Policies none;
add_header X-Frame-Options "SAMEORIGIN";
}
#enable gzip compression
gzip on;
gzip_vary on;
gzip_min_length 1000;
gzip_comp_level 5;
gzip_types application/json text/css application/x-javascript application/javascript image/svg+xml;
gzip_proxied any;
# A long browser cache lifetime can speed up repeat visits to your page
location ~* \.(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ {
access_log off;
log_not_found off;
expires 360d;
}
# disable access to hidden files
location ~ /\.ht {
access_log off;
log_not_found off;
deny all;
}
}
- Создал базу данных для вордпресса.
- Скопировал конфиг вордпресса
cp wp-config-sample.php wp-config.php
и вставил там данные своей БД
/** The name of the database for WordPress */
define( 'DB_NAME', 'wplearn' );
/** Database username */
define( 'DB_USER', 'wplearn' );
/** Database password */
define( 'DB_PASSWORD', 'тут мой пароль' );
- Поменял
$table_prefix = 'wp_';
на свой префикс
Ну и конечно же перезагружал nginx
.
После этого запустил свой сайт wp.example.site (также пробовал wp.example.site/wp-admin/install.php)
Мне выдает содержимое моего wp-config.php
будто это обычный текстовый файл.
Я уж было подумал, может с PHP что-то не так и попробовал создать файл test.php со следующим содержимым:
<?php
phpinfo();
Открыл его wp.example.site/test.php
- все работает как полагается.
Что я делаю не так?
Wordpress очень давно ставил и это было на виртуальном хостинге. А тут решил на VPS попробовать и вот такая беда.
Источник: Stack Overflow на русском