P
P
paulborodin2017-01-06 23:28:45
Digital certificates
paulborodin, 2017-01-06 23:28:45

WordPress. The connection is not fully secured. How to decide?

Installed a certificate on the site, but in Chrome, when you visit the page, the information
"Connection to the site is not completely secure" is displayed
Attackers can see the images that are visible to you and change them for fraudulent purposes.
Site status "Reliable", hangs until the site is rendered.
In the administrative panel, the site is also "Reliable".

I can not figure out what is the reason, I will be glad for any help.
Website address: up-sv.ru

Answer the question

In order to leave comments, you need to log in

4 answer(s)
P
paulborodin, 2017-01-08
@paulborodin

Alas, in my case, these solutions did not bring any benefit and the site died a heroic death.
As a result, the WordPress HTTPS plugin was activated on the newly installed blog, after which the site began to look visually as it should.
After that, in the "Site address (URL)" I registered https instead of http, and the links in the code of the pages became the desired format.
If you also enter the site name via https in the "WordPress Address (URL)", then the admin panel does not work.

R
Roman, 2017-01-06
@alone_lion1987

This happens to you, because the output of links in html goes according to the http:// protocol (look through the source html code and search for http:// , all the links there are loaded via http, but you need to use https), so it turns out such situation. It is necessary that the system generates links via https. This applies to everything - links to connect css, js. Links in the content that are already taken from the database.
In this case, in your site template, if absolute urls are specified, I advise you to replace http with https. If you use the output functions from the database everywhere, then you need to change it in the database. But it's better to try this code (if you have a site on wordpress). There is also a built-in function that determines which protocol the web server uses to serve pages - is_ssl( ) .
In the functions.php file, paste:

add_filter('the_content', 'replace_url_to_https', 30);
function replace_url_to_https($text)
{
    $text = preg_replace('~http(://(?:www.)?' . preg_quote($_SERVER['HTTP_HOST']) . ')~', 'https\1', $text);
    return $text;
}

Вроде это должно помочь.
Еще можно запросами к бд попробовать, тогда и код выше не понадобится:
UPDATE wp_options SET option_value = replace(option_value, 'http://site.ru', 'https://site.ru') WHERE option_name = 'home' OR option_name = 'siteurl';

UPDATE wp_posts SET guid = replace(guid, 'http://site.ru', 'https://site.ru');

UPDATE wp_posts SET post_content = replace(post_content, 'http://site.ru', 'https://site.ru');

Тут site.ru — ваш домен подставляете. Все абсолютные пути в базе станут с https
А везде, где ссылки выводятся не через бд, а напрямую хардкорно прописаны где либо http, замените на https://

O
ommunist, 2017-01-07
@ommunist

Mixed content problem. можно решить как советует уважаемый Роман Жариков. Можно пофиксить (на самом деле то же самое внутри почти), установкрй и активацией плугина вроде Fix non-SSL links.

Q
qool_loop, 2019-04-01
@qool_loop

установи Realy Simple SSl plugin и будет тебе счастье

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question