Categories
Windows

Updating to PHP5.5.8.

同一記事の日本語版

   At Jan-09 18:16:03UTC, they released PHP5.5.8. My physical strength was slightly back. So, I updated my PHP.

   According to ( ChangeLog ), it fixes some bugs against PHP 5.5.7, and An addition. The addition is related to the old voluntary CVE-2011-3379 (See H. Tokumaru’s tumblr “Added validation of class names in the autoload process“. This is only in Japanese.).

   I downloaded a Thread Safe version php-5.5.8-Win32-VC11-x86.zip for my server (Windows7HP + SP1 (x86)). It requires VC11. If you don’t have VC11 on your Windows, you must install vcredist_x__.exe before the PHP configuration.

   The php.ini-production has nothing changed.

   As the official PHP binary includes php5apache2_4.dll, I extract the zip archive and replace all PHP5.5.7 files with all PHP5.5.8 files except my php.ini. Then, I restart my Apache. That’s it.

   If you need how to configure PHP5.5, please see the post. It is for a mbstrings user, but the information gives some help for you.

Categories
Uncategorized

CVE-2012-1823

同一記事の日本語版

   I watched “さくらのVPSに来る悪い人を観察する その2” and “SSH ハニーポットでの悪い人の観察“, then rolled on the floor, laughing. I first found this on “徳丸浩の日記” which reads the slide show is very interesting and very popular lately, so I went to the slide show to be sure it and agreed with it.

   The slide show is related to CVE-2012-1823. Actually, the attacks the slide#36 shows come everywhere whether the vulnerability exists or not. My server is no exception. I don’t create SSH server, and my PHP doesn’t have the vulnerability nor isn’t CGI version, so all attacks failed though.

   Ozuma5119 is a genuine white hacker. If you’re up for this topic, visit the linked sites though they are only in Japanese. Please use some translation services m(_”_)m.

Categories
everyday life

My body has been stronger than it in my childhood.

同一記事の日本語版

   Yesterday I had a terrible experience (^_^;).

   Since January 4th, I thought why I got really sleepy in spite of I was not busy or had no what to do. Though I had New Year’s visitors on January 2nd, on 3rd I got enough rest and was sleeping well at night. When I got up in the morning of 4th, I had a sore throat like tonsillitis. But I had no other cold symptoms and my sore throat went away until the evening.

   When I got up in the morning of 5th, my body felt strange. But I still had no cold symptoms. At the evening I went the first swimming this year. This was for the first time in a week and I felt much better when I came home.

   However, I tossed and turned through the wakeful night. So, I got up earlier in yesterday morning. Though I promised someone, I didn’t think I could keep the appointment. I prefer a call to an email. But too early to call. So, I waited 8 am. During waiting, my chill was harder and harder.

   When 8am. came, I was unable to call or email her because of having no voice and a bad headache. I asked one of my family to call her.

   I managed to have my breakfast, took a fever reducer and went to my bed room. I always see my doctor for my chronic disease but hate to see a doctor for a cold. When I have a slight sickness, I don’t want to go to a hospital. All of my family went to the first work this year.

   I got in bed, but I lost all of the breakfast and the fever reducer within 20 minutes. My chill still existed. I got in bed again and tried to sleep. I waked after feeling asleep for quite a while, but my clock told me 9 am. My chill still existed and I tried to sleep again. My next waking was 10 am. and my chill went away at this time. As I felt sick to my stomach, I thought I was getting dehydrated. I drank some water and wetted my neck with water which made me feel pretty good. Fortunately, some water got rid of my sick to the stomach. I went get a thermometer from the living room and took my temperature. It showed me 39.6℃. Too high (^o^).

   I wanted to take another fever reducer. I was not really sure about losing all of the previous reducer, so I tried to sleep and waited 1 pm. My next waking was at noon. I took my time to have lunch in the living room and had another fever reducer. I went back to bed room and got in bed again.

   When I waked up, it was 8 pm. Wow. My temperature was 38.3℃. I felt much better.

   I was a sickly child. However, until over the age of 20, I had no experience of a high fever. My home doctor at that time said he was in trouble because he could not go on my fever. He also told me not to have patience until the last minute. He thought I was a patient child. When I think back, he was wrong. I was not patient but impervious to pain.

   Until over my middle thirty, I was often hospitalized. I was not absent myself from the school or the office on a daily basis but my hospital stay took a pretty long term if I need it.

   If yesterday situations happened to me before my middle thirty, I had to go to a hospital. But now, I am writing this article without going to a hospital. It is full of emotion as I realized that my body has been stronger than it in my childhood.

Categories
everyday life

Hatsumōde(初詣) to my local shrine.

同一記事の日本語版

   This early morning, about after 1a.m., I went Hatsumōde(初詣) to my local shrine. It is only 3 or 4 minutes away from my house by walk.

   Usually, it is empty. But, from New Year’s Eve to the first three days of the new year, it has events and some visitors for Hatsumōde(初詣). This year, it had Sinto music band and candles in bamboo pots and this was the first time for me at the place.

   By the way, I translated 氏神様 into my local shrine. In a Japanese-English dictionary I have, I found ‘the shrine of the local Shinto deity’ as 氏神様. But this doesn’t sit well with me.

篝火
Kagaribi
蝋燭
Candle lights
おめかし
Dressing up – (^_^)
Categories
everyday life

Happy New Year!

おめでとう!   Happy New Year! It is the beginning of a new year.

   This is a year of Uma, according to the Oriental Zodiac.

   We call ‘uma’ ‘horse’ in English. I like to see and to ride a horse. Unfortunately, I don’t have a chance to ride a horse last decade. Someday again, I want to ride it.

   I wish you guys Happy New Year.

   Gods bless you, guys!

Categories
WordPress

Enabled Opcache.

同一記事の日本語版

   On Dec. 24th, I enabled Opcache on my server (Windows7HP + SP1 (x86)).

   Since installing “BulletProof Security“, it gave me a few trouble. On the other hand, it also brought me some useful information about PHP. For example, I saw its System Information page and changed values in my php.ini like the below. It’s for the security reason.

Default Custom
output_buffering = 4096 output_buffering = Off
expose_php = On expose_php = Off
mysql.allow_persistent = On mysql.allow_persistent = Off

   The other day, I found the words “Opcode Cache” on the page. It reminded me of OPcache bundled with PHP5.5. Then I tried to enable it on my server.

   I changed some settings in my php.ini.

   First, I added the line “zend_extension=php_opcache.dll” to the end of Windows Extensions and changed the next six lines by following this page instructions. I can find better values for my server someday, but now, to follow the page instructions is better for me who is a very newbie of Opcache.

Default Custom
;opcache.enable=0 opcache.enable=1
;opcache.memory_consumption=64 opcache.memory_consumption=128
;opcache.interned_strings_buffer=4 opcache.interned_strings_buffer=8
;opcache.max_accelerated_files=2000 opcache.max_accelerated_files=4000
;opcache.revalidate_freq=2 opcache.revalidate_freq=60
;opcache.fast_shutdown=0 opcache.fast_shutdown=1
Details
Details
Files
Files

   I don’t use the CLI version of PHP, so I left “;opcache.enable_cli=0”.

   On Apache benchmarks of before and after. ApacheBench
   This benches show some improvements. But, with my feelings I realized more than the benches on the home network. I think Opcache brought major effects to my sites because most of them depend on PHP scripts, i.e. WordPress.

   I had heard about APC Control Panel, so I looked for a Control Panel of Opcache and found. You can control Opcache from a Web browser by Opcache Control Panel, ocp.php. It requires the php function ‘phpinfo’, so you had better make an access control for this file.

Categories
WordPress

About Jetpack trouble.

同一記事の日本語版

   After moving to MariaDB, Jetpack suddenly gave me an error. I was not to able to connect my stats on WordPress.com from my parent site dashboard. As I could not solve this by myself, I went to Jetpack Support Forum and started the topic “Jetpack: site_inaccessible“. Three days later, I went to WordPress.com Japanese Forum and started “ルートサイトと昔のテストサイトのコンフリクト。” because I realized these two forums were complete different groups. But I was wrong. They belong to the same party. However, I did a multi-post because my writing was not enough (^_^;). Anyway, I had some suggestions from both of them.

  1. Jeremy Herve told me to use define( 'JETPACK_CLIENT__HTTPS', 'NEVER' );. But it did not work.
  2. Richard Archambault suggested me the issue might be related with SSL and told me to check my SITE_URL up. But, my SITE_URL was http://o6asan.com that meant no problem.
  3. naokomc told me at Stats Page it looked the owner had no dibs on the site when he could not connect to WordPress.com. So, I thought again it might be related with SSL that Richard told me.
  4. Then, I tried connecting after commenting define( 'FORCE_SSL_ADMIN', true ); out. That worked, wow!!

   I got that the authorization might fail with define( 'FORCE_SSL_ADMIN', true ); on some conditions.

   After the connection to WordPress.com, I rolled define( 'FORCE_SSL_ADMIN', true ); back. It is O.K. after the Authorization even if define( 'FORCE_SSL_ADMIN', true ); is uncommented.

   I have never resolved in my mind why this suddenly happened. But, the issue solved.

Categories
everyday life

I can’t accept this is happening, but it is true.

同一記事の日本語版

   On December 20th, Reuters broke “Exclusive: Secret contract tied NSA and security industry pioneer“. On December 23rd, Mikko Hypponen wrote “An Open Letter to the Chiefs of EMC and RSA“.

   I can’t accept this is happening, but Mikko wrote such a letter shows us the article is almost true. For NSA, it might be their regular jobs. But for RSA, what a shame!! Of course, we should read not only Reuters side articles but also the opposite side ones like RSA RESPONSE TO MEDIA CLAIMS REGARDING NSA RELATIONSHIP.

   It is a sad fact that RSA’s credibility was destroyed.

Categories
everyday life

Snow falling in my garden (^o^).

同一記事の日本語版
   Today, we had another snow in my town, though it was very short time. So I took a video again. How about its execution? Hmmmm.
Categories
Windows

Moving to MariaDB5.5.

同一記事の日本語版
Update information      Edit(Dec.21)    Edit2(Dec.25)    Edit3(2014.Jun.22)

MaintenanceNotice   Yesterday, I worked very hard. For what? Well, moving to MariaDB5.5 from MySQL on Windows7HP+SP1(x86). Haha.

   First, I backed up all the sever data.
   Next, I made a maintenance.html like the right, and for maintenance I added the next lines to the head of my .htaccess at the Document Root. The text in it is like the below. (refer to: mod_rewrite, <IfModule>)

     ErrorDocument 503 /maintenance.html

     RewriteEngine On
     RewriteCond %{REQUEST_URI} !=/maintenance.html
     RewriteCond %{REMOTE_ADDR} !=IP address for Admin
     RewriteRule ^.*$ – [R=503,L]

     Header set Retry-After “Wed, 18 Dec 2013 01:00:00 GMT”

   On the page, I found “This section should only be used if you need to have one configuration file that works whether or not a specific module is available. In normal operation, directives need not be placed in <IfModule> sections.”. So, I thought I did not need <IfModule> sections.

   Then, I announced the server maintenance on my sites and began moving to MariaDB5.5.

   I had a clean installation of MariaDB because I wanted to change my sql engine from MyISAM to InnoDB. When I started using MySQL, I made the tables by MyISAM. Recently, I heard about InnoDB merits several times. So I always wanted to move to InnoDB, but I also found someone was in troubles on moving to it on the Internet. Hence I have hesitated to make a move because I can NOT handle them if something wrong happens despite my poor knowledge about the sql.

   MariaDB has InnoDB as its default. So I was going to recreate all my tables on this occasion if necessary.

Step1 The uninstallation of MySQL.

  1. Deactivated all WordPress plugins on my sites.
  2. Backed all databases up separately from the sever data backup.
  3. Also exported all contents of my WordPress from the site Dashboard. Because I was going to import all contents by the WordPress Importer if possible. I gave it up as described below, though.
  4. Stop the service.
    Control Panel >> Administrative tools >> Services
    Select the MySQL service name and stop.
  5. Delete the service.
    Run a cmd.exe as an Administrator.
    > sc delete MySql
  6. Removed the folders, MySQL and MyDATA (<--- These are MySQL scripts and data on my server).

Step2 The installation of MariaDB.

  1. Downloaded mariadb-5.5.34-win32.zip from MariaDB.
  2. Running my eyes overInstalling MariaDB Windows ZIP packages, I went to the page about mysql_install_db.exe.
  3. Extracted the Zip archive. Made two folders named MariaDB and MyDB on my server ware partition named Drive_SV. Installed all things made by extract to the folder MariaDB.

    Run a cmd.exe as an Administrator.
    > cd Drive_SV:MariaDBbin
    > mysql_install_db.exe –datadir=Drive_SV:MyDB –service=MyDB –password=secret

    By this, I was able to set the password for the root user and had a new my.ini in the MyDB.

  4. Control Panel >> Administrative tools >> Services
    Select the MyDB service name and start
    If its ‘Startup Type’ is not ‘Automatic’, you should change it to ‘Automatic’.

Step3 Access MariaDB via phpMyAdmin.

  1. Accessed MyDB as the root user from phpMyAdmin.
    Imported one of my backup database, phpmyadmin.
  2. Made a WordPress User and gave it all WordPress database privileges except Grant and no Global privileges. Of course set a password for it. Made a database for the WordPress. Their collation is utf8_general_ci.
    Logout.

   Import by WordPress Importer and I gave it up. The reason is the below.

   After a new WordPress installation, I imported all contents by WordPress Importer. But unfortunately, I found the fact that the plugin neglected some tags like <object>, it was inconvenient for me. I don’t know it neglects what kind tags and to examine them by myself is too much trouble. Therefore, I gave up this method.

Step4 Restored all WordPress database via phpMyAdmin.

  1. I wanted to use the InnoDB, so I replaced all ‘ENGINE=MyISAM’ by ‘ENGINE=InnoDB’ in the backup sql file.
  2. Login as the WordPress User.
    Exported the current WordPress database.
    Dropped all tables on the WordPress table because my backup sql file contained all data.
  3. Imported the backup. I had an error like this.
         #1214 – The used table type doesn’t support FULLTEXT indexes

    The backup file was originally MyISAM, so it includes FULLTEXT indexes. Actually it uses by YARPP as keys of post_title and post_content. Hummm. But on the forum the plugin author says we can use YARPP on the InnoDB though its performance slows down.

    I removed all lines about FULLTEXT indexes in the file. (I remember I heard we can use FULLTEXT with InnoDB on MySQL5.6.–Dec.25Edit)

  4. Dropped all tables again.

    Imported the customized file. I had another error.
         #1064 – You have an error in your SQL syntax;

    This error was my fault. When I removed FULLTEXT indexes I forgot to remove a “,” like this.
         KEY `post_author` (`post_author`),   <<--------This is the ',' I forgot to remove.      ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=xxxx ; I removed all such ','s.

  5. Dropped all tables again.

    Imported the customized file. Complete.

Step5 Back to normal condition.

  1. Login the WordPess.
    Activated all plugins.
    Checked all script behaviors.

    Change .htaccess text to end the maintenance.

  2. Actually, I still have an error about Jetpack on my parent site. Like this.

         Your website needs to be publicly accessible to use Jetpack: site_inaccessible
         Error Details: The Jetpack server was unable to communicate with your site https://MySITE
         [IXR -32300: transport error: http_request_failed SSL certificate problem: self signed
         certificate in certificate chain]

    But I think this is not the maintenance faults. Now I am waiting for a reply on the Jetpack forum.

   Now I use MariaDB5.5. Clap, clap.

Edit(Dec.21):
   After I changed SQL Storage Engine from MyISAM to InnoDB, the plugin YARPP performance slowed down very much. It was more than my expecting. So, I decided to rollback the Engine about the table wp_posts by YARPP instruction message.

  1. Login phpMyAdmin.
  2. Select the database for WordPress.
  3. Select the table wp_posts.
  4. Select ‘Operations’ from the top navigation bar.
  5. Change Storage Engine from Innodb to MyISAM at Table options.
  6. Click Go button of Tabble options.
  7. Logout phpMyAdmin.

   But YARPP didn’t recognize this change, though the author have a specialized feature for this. I went to the YARPP support forum to find a solution. I found MyISAM Override check doesn’t work. I followed hussong‘s instructions.

  1. Deactivate the plugin.
  2. Login phpMyAdmin.
  3. Select the database for WordPress.
  4. Select the table wp_options.
  5. Select ‘SQL’ from the top navigation bar.
  6. Use SELECT * FROM `wp_options` WHERE option_name LIKE "yarpp%"
  7. Delete all I found.You can see yarpp_fulltext_disabled = 1. Change it to yarpp_fulltext_disabled = 0
  8. Logout phpMyAdmin.
  9. Activate the plugin.
  10. Setting the plugin again because all old settings gone.

Now, I can use Titles and Bodies consider options. Happy!

Edit2(Dec.25):
   I wrote “About Jetpack trouble“.

Edit3(2014.Jun.22):
   I wrote an article The solution of “SSL3_READ_BYTES:sslv3 alert handshake failure” on WordPress.