Виртуальный хост Fedora + Nginx + Wordpress на EC2, генерирующий ссылки на фактическое имя хоста

В настоящее время я пытаюсь настроить виртуальный хост в Nginx, чтобы я мог запустить сервер WordPress, как если бы он находился в другом домене. Проблема, с которой я сталкиваюсь в настоящее время, заключается в том, что на сервере WordPress, когда я захожу на " http://example-domain.com/blog/", отображается каждая ссылка, указывающая на хост Amazon, "ec2---- *"..compute-1.amazonaws.com. Я хотел бы, чтобы все эти ссылки были разрешены с помощью хоста "example-domain.com".

Мой основной файл конфигурации Nginx (nginx.conf):

http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
    server_names_hash_bucket_size 64;

    log_format  main  '$remote_addr - $remote_user [$time_local] $request '
                  '"$status" $body_bytes_sent "$http_referer" '
                  '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  2;

    #gzip  on;

    # Load config files from the /etc/nginx/conf.d directory
    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;

    #
    # The default server
    #
    server {
    listen       80;
    server_name  _;

    #charset koi8-r;

    #access_log  logs/host.access.log  main;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }

    error_page  404              /404.html;
    location = /404.html {
        root   /usr/share/nginx/html;
    }

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
    }
}

Виртуальный хост настроен со следующим conf:

server {
    listen      80;
    server_name example-domain.com;

    root   /var/www/example-domain.com/html;
    index  index.html index.htm index.php;

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    location ~ \.php$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    fastcgi_param  PATH_INFO $fastcgi_script_name;
        include        fastcgi_params;
    }

    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    location ~ /\.ht {
        deny  all;
    }
}

Папка WordPress находится по адресу /var/www/example-domain.com/html/blog/. Кто-нибудь знает, почему все ссылки WordPress на главной странице используют имя хоста ec2, а не имя, определенное в конфигурации виртуального хоста? Если так, пожалуйста, помогите мне.

Заранее спасибо!

1 ответ

Решение

Это потому, что WordPress сохраняет URL/ имя домена в настройках базы данных. Вам необходимо войти в WordPress wp-admin и обновить URL сайта или просто обновить его непосредственно в базе данных.

Другие вопросы по тегам