The Linux Page

Help other users realize that everything is possible, especially avoiding Windows for their own personal use.

Welcome to The Linux Page


Fox Trot by Bill Amend. Click to enlarge.
Click to enlarge

This site is a collection of my own work with Linux. Certain things are easy, others take time to decipher and if I ever need to repeat the work (which usually happens!), then I need to remember everything by memory or... have a site with all the steps taken and to take again.

The following are my most recent posts:

Somehow I receive many weird requests from one of Googlebot's. These use some very strange HTTP header, if I can even call that a header! modsecurity blocks all of them at once, but it just seems very strange since it has nothing to do with HTTP.

The two requests I have seen go like this:

0x16 0x03 0x01

0x80 0x2B 0x03 0x01

As you can see I show you the hexadecimal codes because these are controls!!! (Ctrl-V, Ctrl-C, Ctrl-A in the first request, and PAD, +, Ctrl-C, Ctrl-A)

I just have no idea what that is. I'm glad that modsecurity kicks those request out, but I'm wondering why am I

I got a problem with Qt that took me a whole day to fix!

I created a widget with many children. At first I used the QVBoxLayout and QHBoxLayout to lay out the child buttons in a grid like layout without paying much attention to the details. This was not too bad except that somehow the system picked up the smallest possible size for each button. Once I put a minimum size, it was better, but still not giving me much control in comparison to the specification for my project.

So at that point I looked around to learn how to create your own layout. Got the idea to look at the existing layout

I've been using Drupal for a while and only now started to notice a problem with the cache of JavaScript code. In general, I don't cache the JS since they are not dynamic files. But we do that with Snap!.

The Apache mime module offers two options: AddType and AddEncoding

Both options are used in a similar way meaning that both react on file extensions. When a match is found, the corresponding MIME type or content encoding is attached to the content being sent.

If you install the MIME module, it will attempt to encode data properly for the most general case, but not all cases. That ...

The following is a list of points one wants to follow in order to create a log in form and the necessary code in the backend.

Generate a secure Log In form (session id)

Each time you create a Log In form (or any form if that matters,) you should include a hidden session identifier in it. This will help you prevent users from posting to your server without first loading the form. This alone already prevents a large number of robots from flooding your server with totally useless POST commands1

  • 1. If you know why they do that, let me know because there is really no reason to send totally ...

To avoid recreating the same styles and title, summary pages over and over again one wants to create a template file. These are called <name>.dot where dot means document template.

To create a .dot just create a regular .doc file and then when saving it, change the extension to .dot. Nothing complicated here.

Now, if you are with a large company, the template file would be saved in a folder where Microsoft Office can find it automatically so when you say New you can then choose your template, it has to be placed here:

    C:\Users\<name>\AppData\Roaming\Microsoft\Templates

On MS-Windows, you get really strange errors and at times some of those errors are difficult to fix.

Sams Teach Yourself C++The error 0xC0150002 means that a DLL could not be loaded and thus the software could not get started since a piece of it was missing. The only solution is to "close the application" (since it wasn't really started, closing it sounds a bit funny here.)

There are several ways to find out about the problem. In Visual Studio, the output should tell you what is happening and that a library could not be loaded. However, many times, low level libraries will not be displayed in the ...

I have a problem with a package that doesn't exactly do what I need it to do so I wanted to recompile it.

Here are the steps to take to get the source, modify it, recompile the new version, and finally install that new version.

WARNING

Before you start, make sure that you make a copy of all the current settings. The installation step is not unlikely going to overwrite any existing changes.

So... let's assume that the package was well done and thus that the author properly tested that all the necessary build development tools are specified on the corresponding line in the spec file

I don't know about you, but on my end I like to use static IP addresses on my Intranet.

But under Windows Vista and Windows 7, Microsoft have done an incredibly good job at hiding the network connections to make sure you don't temper with them.

The path is as follow:

        Control Panel\Network and Internet\Network Connections

Once you are in there, you can use the right mouse button to get to the usual MS-Windows settings (The one where you can click on IPv6 or IPv4 and setup the IP to static.)

Today I got this error which surprised me for a little while. I was pretty sure I had it before, but could not find a reference, so I decided to put it here for sure this time!

Error: this.table.tBodies is undefined
Source File: http://linux.m2osw.com/sites/all/modules/jquery_update/replace/tabledrag...
Line: 516

Whenever I create a table in Drupal and the elements can be sorted, I like to use the drupal_add_tabledrag() feature. This function first parameter is the name of the table to drag. I was totally sure I had it right but it just kept giving me that error, over and over again

Today AddThis is down, big time! For hours...

So to make my websites load faster (although I did not delete all the caches, which is a problem too?!) I removed the functionality. If you have Drupal, there is what I have done to leave the settings the same but still hide the AddThis button and thus get all the pages of all my websites to load fast.

First we remove the link by returning an empty array:

/**
 * Implementation of hook_link(). 
 */
function addthis_link($type, $node=NULL, $teaser = FALSE) {
return array(); // immediate return
  $links = array();

  if ($type ===  ...

Unfreeze your Mouse when it Froze

Thank you for visiting my website.