Sziasztok!
Itt a nyár op. rendszer frissítések.
Debian 8 ról lett frissítés 9 -re.
Egy wordpress is fut a szerveren.
dpkg -l | grep php alapján feltettem a php7.0 csomagokat lib-apache-t ....
De miután,
a2dismod php5 && a2enmod php7.0 && service apache2 restart
A weboldalon pld a könyv-ből k#đĐnyv lesz ????
Googleztam az php7.0 /... ini-ben szerkesztve se javult a helyzet !
Találkozott már valaki hasonlóval megtudta oldani ?
Megoldás:
mivel latin1 volt a karakterkódolása a DB-nek
a wp-config.php ba
/** Az adatbázis karakter kódolása */
define('DB_CHARSET', 'latin1');
Köszönöm a segítséget mindenkinek!!!
- 342 megtekintés
Hozzászólások
A headerben ami kimegy a kliensnek, abban mi van? Nem 100%, hogy a php a ludas.
- A hozzászóláshoz be kell jelentkezni
Például a wp-login.php -ban
<head>
<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" />
<title>
Ha erre gondoltál?
- A hozzászóláshoz be kell jelentkezni
Nem, a http headerre gondoltam. De itt mit kop bele a charsethez amugy?
- A hozzászóláshoz be kell jelentkezni
wget tel lehuztam az indexoldalt ebben:
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="profile" href="http://gmpg.org/xfn/11" />
A $charset mindjárt megnézem.
- A hozzászóláshoz be kell jelentkezni
Dev toolsban nezd meg vagy itt van ez https://www.webconfs.com/http-header-check.php
De szerintem itt adatbazis szinten kell a problemat keresni akkor...
- A hozzászóláshoz be kell jelentkezni
Innen vettem mit kéne lekérdezni:
https://developer.wordpress.org/reference/functions/bloginfo/
select * from wp_options where option_name ='blog_charset';
+-----------+--------------+--------------+----------+
| option_id | option_name | option_value | autoload |
+-----------+--------------+--------------+----------+
| 31 | blog_charset | UTF-8 | yes |
+-----------+--------------+--------------+----------+
- A hozzászóláshoz be kell jelentkezni
Amit írtál link alapján:
Content-Type => text/html; charset=UTF-8
- A hozzászóláshoz be kell jelentkezni
Na ez ok, de nem allitottal vissza esetleg adatbazist? Mert en arra tippelnek, hogy a DB-bol jon szarul ki a stuff...
- A hozzászóláshoz be kell jelentkezni
Igen db -ből jön az áldás:
világokkal, válogasson kedvére a disztópiák közül. ez van a db-ben.
Csak nem értem hogy php5 mért műkszik, php7 el mért nem ???
- A hozzászóláshoz be kell jelentkezni
mysql vs mysqli ?
- A hozzászóláshoz be kell jelentkezni
Ha jol ertem ez eleve rosszul van tarolva. Azt nem tudom miert ment, mert igy extra konverzio kell.
Nem lehet, hogy volt egy mentes ami vissza lett alitva hibas encoding-al?
- A hozzászóláshoz be kell jelentkezni
valszeg a db latin2-es
$ php -r "var_dump(utf8_decode('világokkal, válogasson kedvére a disztópiák közül.'));"
string(57) "világokkal, válogasson kedvére a disztópiák közül."
- A hozzászóláshoz be kell jelentkezni
Ilyet például úgy tudsz elérni, hogy veszed az utf8-at, végrehajtasz rajta egy iso-8859-1 -> utf8 konverziót, és utf8-ként nézed.
$ echo 'világokkal, válogasson kedvére a disztópiák' | iconv -f iso-8859-2 -t utf8
vilĂĄgokkal, vĂĄlogasson kedvĂŠre a disztĂłpiĂĄk
- A hozzászóláshoz be kell jelentkezni
ha adatbazisban latin2 van akkor azt allitsd be a wp-config.php-ban
/** Az adatbázis karakter kódolása */
define('DB_CHARSET', 'utf8mb4');
es ha utf8-as kimenetet akarsz akkor kelleni fog az iconv vagy mbstring php modul hogy a wordpress konvertalni tudja
a php5-el valoszinuleg azert mukodott mert volt valamilyen automatikus konverzio, esetleg a php.ini-ben nezd meg.
de ha nem akarod hogy mindig konvertalni kelljen az adatbazisbol beolvasott adatokat, exportald ki, recode-al konvertald at, allitsd be a fajlban a charsetet es a collation-t unikodosra, importald be
mysqldump adatbazis >adatbazis.sql
recode iso-8859-2..utf-8 adatbazis.sql
sed vagy mcedit vagy ami tetszik: a charset es collate-t modositsd vele hogy kb. ilyen legyen a fajl
DROP TABLE IF EXISTS `wp_commentmeta`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `wp_commentmeta` (
`meta_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`comment_id` bigint(20) unsigned NOT NULL DEFAULT 0,
`meta_key` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`meta_value` longtext COLLATE utf8mb4_unicode_ci DEFAULT NULL,
PRIMARY KEY (`meta_id`),
KEY `comment_id` (`comment_id`),
KEY `meta_key` (`meta_key`(191))
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
mysql adatbazis <adatbazis.sql
neked aztan fura humorod van...
- A hozzászóláshoz be kell jelentkezni
Hát lehet beszívtam:
latin1 a mostani állapot . Most online decoderekkel próbálkozok, hogy lesz a
Évi = Évi :( :(
- A hozzászóláshoz be kell jelentkezni
ha ez https://hup.hu/comment/2654512#comment-2654512 jo,
akkor valami ilyesmivel tudod megcsinalni:
php -r "file_put_contents('adatbazis.sql', utf8_decode(file_get_contents('adatbazis.sql')));"
neked aztan fura humorod van...
- A hozzászóláshoz be kell jelentkezni
# echo 'ü' | iconv -f iso-8859-1 -t utf-8
ü
# echo 'ü' | iconv -f iso-8859-1 -t utf-8
ü
echo 'ü' | iconv -f iso-8859-1 -t iso-8859-2
iconv: illegal input sequence at position 0
- A hozzászóláshoz be kell jelentkezni
Köszi végül is túl komplikáltam már itt irtad is mit kell tennem, csak másképp:
/** Az adatbázis karakter kódolása */
define('DB_CHARSET', 'latin1');
- A hozzászóláshoz be kell jelentkezni
Köszönöm a sok javaslatot, mindjárt végig próbálom. dump van !! Szerencsére nem hajt a tatár, nem HA website.
- A hozzászóláshoz be kell jelentkezni
ha mar frissites, hanyas a wordpress?
neked aztan fura humorod van...
- A hozzászóláshoz be kell jelentkezni
WordPress 4.7.20
és sajnos ezt irja ki:
Az automatikus WordPress frissítést nem sikerült befejezni - a frissítést újra el kell végezni.
És ha minden igaz akkor a php verzió a ludas benne ezért kéne meglépnem min a php7.0 ami deb 9 LTS alatt sec. frissítést kap. még.
Mit ami nem rég jött:
[SECURITY] [DLA 2708-1] php7.0 security update
- A hozzászóláshoz be kell jelentkezni
nezd meg hogy az iconv es mbstring php modulok engedelyezve vannak-e
neked aztan fura humorod van...
- A hozzászóláshoz be kell jelentkezni
hat en a wp-contents konyvtar es wp-config.php fajlon kivul torolni szoktam, es az uj kitomoritett wordpressel potolom
neked aztan fura humorod van...
- A hozzászóláshoz be kell jelentkezni
Gyakran felmerülnek ilyen kérdések, akár valamilyen FAQ-ot is lehetne belőle csinálni. Persze ne úgy gondoljuk el, hogy készen le van írva, hogy a negyedik sorban az 'x'-et, 'y'-ra kell cserélni, és jó lesz, a hibakeresést saját kezűleg kell megcsinálni.
- A hozzászóláshoz be kell jelentkezni
Mi volt a pontos php5 verzió?
Csak mert 5.6-ra váltásnál bejött egy ilyen issue: PHP 5.6 default_charset change may break HTML output (ha 5.6-nál korábbi php5 volt előtte, akkor érdemes lehet rálesni)
- A hozzászóláshoz be kell jelentkezni
5.6.40, de azért ránézek köszi
- A hozzászóláshoz be kell jelentkezni
ha mar belekezdtel itt ne allj meg, par honap es a debian 9 is oldoldstable lesz :)
na meg a php 7.0 is eol mar
neked aztan fura humorod van...
- A hozzászóláshoz be kell jelentkezni
Ez kicsit fura számomra is, de a debian hozz ki még rá security frissítéseket:
https://security-tracker.debian.org/tracker/php7.0
[SECURITY] [DLA 2708-1] php7.0 security update
Ameddig az deb9 LTS ezt is "kötelességük" kezelni nem?
- A hozzászóláshoz be kell jelentkezni
hat itt https://wiki.debian.org/LTS azt irjak hogy nem a debian security team csinalja, de igen valakik csinaljak.
ettol meg ha nem blokkolja valami a frissitest debian 10-re, erdemes megcsinalni, mar eleg stabil :)
neked aztan fura humorod van...
- A hozzászóláshoz be kell jelentkezni
Frissítési stratégiám miatt erőltetem a nem olyan fontos rendszereken a deb9-et. A 9-esen bátrabban konfigurálom fel az automatikus frissítések telepítését, mert már valószínűleg csak sec-ek jönnek.
A 10-nél nagyon figyelem a lev. listás leveleket a debian teams-től, de vannak szerverek amiken csak munkaidő után, (pénteken) ha lehet kézzel indítom csak el, mert már szívatott meg, pld a squid.
Vagy bénán konfigolom az auto frissitéseket ... ?
- A hozzászóláshoz be kell jelentkezni
hat elvileg az unattended-upgrades jol csinalja, de ha aggodsz a telepites miatt, akkor csak toltsd le automatikusan a frissiteseket es kezzel inditsd el.
neked aztan fura humorod van...
- A hozzászóláshoz be kell jelentkezni