<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>aip.im</title>
	<atom:link href="http://www.aip.im/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.aip.im</link>
	<description>Just another weblog</description>
	<lastBuildDate>Wed, 25 Apr 2012 11:41:42 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>How to find out IP address by MAC address</title>
		<link>http://www.aip.im/2012/04/how-to-find-out-ip-address-by-mac-address/</link>
		<comments>http://www.aip.im/2012/04/how-to-find-out-ip-address-by-mac-address/#comments</comments>
		<pubDate>Wed, 25 Apr 2012 11:41:42 +0000</pubDate>
		<dc:creator>aip</dc:creator>
				<category><![CDATA[Network]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[arp]]></category>

		<guid isPermaLink="false">http://www.aip.im/?p=82</guid>
		<description><![CDATA[Sometimes you may have a MAC address but need to figure out the IP address. If you have access to a computer on the same network you may be able to look it up using the arp command (works on both Windows and Linux): arp -a You will see a list similar to this: Interface: [...]]]></description>
			<content:encoded><![CDATA[<p>Sometimes you may have a MAC address but need to figure out the IP address. If you have access to a computer on the same network you may be able to look it up using the arp command (works on both Windows and Linux):</p>
<p><code>arp -a<br />
</code><span id="more-82"></span></p>
<p>You will see a list similar to this:</p>
<p><code>Interface: 192.168.1.141 --- 0xb<br />
  Internet Address      Physical Address      Type<br />
  192.168.1.1            00-40-4c-15-ca-b1     dynamic<br />
  192.168.1.6            00-10-ae-1d-e6-2b     dynamic<br />
  192.168.1.15           00-34-2a-d2-90-e9     dynamic<br />
  192.168.1.50           00-23-29-d6-cb-11     dynamic<br />
...<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.aip.im/2012/04/how-to-find-out-ip-address-by-mac-address/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to check if SSL v2 is enabled using openssl</title>
		<link>http://www.aip.im/2012/04/how-to-check-if-ssl-v2-is-enabled-using-openssl/</link>
		<comments>http://www.aip.im/2012/04/how-to-check-if-ssl-v2-is-enabled-using-openssl/#comments</comments>
		<pubDate>Fri, 13 Apr 2012 21:50:41 +0000</pubDate>
		<dc:creator>aip</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[OpenSSL]]></category>
		<category><![CDATA[PCI compliance]]></category>
		<category><![CDATA[SSLv2]]></category>
		<category><![CDATA[SSLv3]]></category>

		<guid isPermaLink="false">http://www.aip.im/?p=78</guid>
		<description><![CDATA[SSL v2 is weak and outdated protocol. All modern browsers and applications support SSL v3 and that's why you should disable SSL v2 where possible. Using this command you can check if SSL v2 is enabled: openssl s_client -connect www.example.org:443 -ssl2 If SSL v2 is disabled you should get a response like this (this is [...]]]></description>
			<content:encoded><![CDATA[<p>SSL v2 is weak and outdated protocol. All modern browsers and applications support SSL v3 and that's why you should disable SSL v2 where possible.</p>
<p>Using this command you can check if SSL v2 is enabled:</p>
<p><code>openssl s_client -connect www.example.org:443 -ssl2<br />
</code><span id="more-78"></span></p>
<p>If SSL v2 is disabled you should get a response like this (this is the response you want to get because SSL v2 should be disabled):</p>
<p><code>CONNECTED(00000003)<br />
write:errno=104<br />
</code></p>
<p>or</p>
<p><code>CONNECTED(00000003)<br />
11132:error:1407F0E5:SSL routines:SSL2_WRITE:ssl handshake failure:s2_pkt.c:428:<br />
</code></p>
<p>However, if SSL v2 is enabled the response will be a lot longer and include something like this:</p>
<p><code>...<br />
Ciphers common between both SSL endpoints:<br />
RC4-MD5         EXP-RC4-MD5     RC2-CBC-MD5<br />
EXP-RC2-CBC-MD5 DES-CBC-MD5     DES-CBC3-MD5<br />
---<br />
SSL handshake has read 1370 bytes and written 364 bytes<br />
---<br />
<strong>New, SSLv2, Cipher is DES-CBC3-MD5</strong><br />
Server public key is 2048 bit<br />
...<br />
</code></p>
<p>Here are instructions on how to disable SSL v2 on Windows 2008 servers:<br />
<a href="http://www.aip.im/2012/03/how-to-disable-ssl-v2-enable-ssl-v3-on-windows-2008/">How to disable SSL v2 / enable SSL v3 on Windows 2008</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.aip.im/2012/04/how-to-check-if-ssl-v2-is-enabled-using-openssl/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to disable SSL v2 / enable SSL v3 on Windows 2008</title>
		<link>http://www.aip.im/2012/03/how-to-disable-ssl-v2-enable-ssl-v3-on-windows-2008/</link>
		<comments>http://www.aip.im/2012/03/how-to-disable-ssl-v2-enable-ssl-v3-on-windows-2008/#comments</comments>
		<pubDate>Fri, 30 Mar 2012 08:05:12 +0000</pubDate>
		<dc:creator>aip</dc:creator>
				<category><![CDATA[IIS]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[PCI compliance]]></category>
		<category><![CDATA[SSLv2]]></category>
		<category><![CDATA[SSLv3]]></category>
		<category><![CDATA[Windows Server]]></category>

		<guid isPermaLink="false">http://www.aip.im/?p=73</guid>
		<description><![CDATA[SSL v2 is weak and outdated protocol. All modern browsers support SSL v3 and it's enabled by default on Windows 2008 (IIS 7 / IIS 7.5). To make sure all clients are using SSL v3 we must disable SSL v2. This is required for PCI compliance. This is what needs to be done to disable [...]]]></description>
			<content:encoded><![CDATA[<p>SSL v2 is weak and outdated protocol. All modern browsers support SSL v3 and it's enabled by default on Windows 2008 (IIS 7 / IIS 7.5). To make sure all clients are using SSL v3 we must disable SSL v2. This is required for PCI compliance.<span id="more-73"></span></p>
<p>This is what needs to be done to disable SSL v2:</p>
<p>1. Start - Run<br />
2. Type "regedit" and click OK<br />
3. Locate the following key: HKey_Local_Machine\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0<br />
4. Right click the "SSL 2.0" key and select Edit &gt; Add key<br />
5. Type "Server" and click Enter<br />
6. Right click Server and select New &gt; Add DWORD (32 bit) value<br />
7. Type "Enabled" as the name and make sure the value is "0"<br />
8. Restart the server</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aip.im/2012/03/how-to-disable-ssl-v2-enable-ssl-v3-on-windows-2008/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to set php.ini values in .htaccess</title>
		<link>http://www.aip.im/2012/03/how-to-set-php-ini-values-in-htaccess/</link>
		<comments>http://www.aip.im/2012/03/how-to-set-php-ini-values-in-htaccess/#comments</comments>
		<pubDate>Tue, 20 Mar 2012 11:18:37 +0000</pubDate>
		<dc:creator>aip</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.aip.im/?p=70</guid>
		<description><![CDATA[If you can't or don't want to edit the host's php.ini file, you can make site-specific php.ini value changes using .htaccess. Simply insert a new line on this format: php_value {name} {value} Here's how to change the memory limit: php_value memory_limit 256M]]></description>
			<content:encoded><![CDATA[<p>If you can't or don't want to edit the host's php.ini file, you can make site-specific php.ini value changes using .htaccess. Simply insert a new line on this format:</p>
<p><code>php_value {name} {value}<br />
</code><span id="more-70"></span></p>
<p>Here's how to change the memory limit:</p>
<p><code>php_value memory_limit 256M<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.aip.im/2012/03/how-to-set-php-ini-values-in-htaccess/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to migrate multiple sites from IIS 6 to IIS 7</title>
		<link>http://www.aip.im/2012/02/how-to-migrate-multiple-sites-from-iis-6-to-iis-7/</link>
		<comments>http://www.aip.im/2012/02/how-to-migrate-multiple-sites-from-iis-6-to-iis-7/#comments</comments>
		<pubDate>Wed, 08 Feb 2012 11:12:09 +0000</pubDate>
		<dc:creator>aip</dc:creator>
				<category><![CDATA[IIS]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[migration]]></category>
		<category><![CDATA[msdeploy]]></category>
		<category><![CDATA[webdeploy]]></category>
		<category><![CDATA[Windows Server]]></category>

		<guid isPermaLink="false">http://www.aip.im/?p=66</guid>
		<description><![CDATA[This is a quick guide on how to migrate all sites from IIS 6 to IIS 7. You can probably use the same commands to move sites from one IIS 7 to another. Everything will be migrated, including application pools, virtual directories, SSL certficiates etc. 1. Download and install Web Deployment Tool on both source [...]]]></description>
			<content:encoded><![CDATA[<p>This is a quick guide on how to migrate all sites from IIS 6 to IIS 7. You can probably use the same commands to move sites from one IIS 7 to another.</p>
<p>Everything will be migrated, including application pools, virtual directories, SSL certficiates etc.</p>
<p>1. Download and install Web Deployment Tool on both source and destination servers: http://www.iis.net/download/webdeploy<span id="more-66"></span></p>
<p>2. Backup the IIS configuration on the destination server</p>
<p><code>cmd<br />
cd C:\Program Files\IIS\Microsoft Web Deploy V2<br />
%windir%\system32\inetsrv\appcmd add backup “PreWebDeploy”<br />
</code></p>
<p>3. Export the configuration from the source server to a zip package</p>
<p><code>cmd<br />
cd C:\Program Files\IIS\Microsoft Web Deploy V2<br />
msdeploy -verb:sync -source:metakey=lm/w3svc -disableLink:contentExtension -dest:package=C:\Temp\Sites.zip,encryptPassword=P4ssword > C:\Temp\WebDeploySource.log<br />
</code></p>
<p><em>You can choose any password in the "encryptPassword" variable. Using the "-disableLink:contentExtension" will only move configuration and when you have a lot of data it's probably the way to go.</em></p>
<p>4. Simulate import on the destination server (optional)</p>
<p>You can use msdeploy to see what would happen if you imported the package from the source server. No changes will be made to the IIS configuration and you can see what would happen in the log file</p>
<p><code>cmd<br />
cd C:\Program Files\IIS\Microsoft Web Deploy V2<br />
msdeploy -verb:sync -source:package=c:\Temp\Sites.zip,encryptPassword=P4ssword -disableLink:contentExtension -dest:metakey=lm/w3svc -whatif > C:\temp\WebDeployWhatIf.log<br />
</code></p>
<p>5. Import sites to the destination server</p>
<p><code>cmd<br />
cd C:\Program Files\IIS\Microsoft Web Deploy V2<br />
msdeploy -verb:sync -source:package=c:\Temp\Sites.zip,encryptPassword=P4ssword -disableLink:contentExtension -dest:metakey=lm/w3svc > C:\temp\WebDeployDestination.log<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.aip.im/2012/02/how-to-migrate-multiple-sites-from-iis-6-to-iis-7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to add new column to a MSSQL table between two existing columns</title>
		<link>http://www.aip.im/2011/08/how-to-add-new-column-to-a-mssql-table-between-two-existing-columns/</link>
		<comments>http://www.aip.im/2011/08/how-to-add-new-column-to-a-mssql-table-between-two-existing-columns/#comments</comments>
		<pubDate>Fri, 19 Aug 2011 15:51:07 +0000</pubDate>
		<dc:creator>aip</dc:creator>
				<category><![CDATA[Microsoft SQL Server]]></category>
		<category><![CDATA[mssql]]></category>

		<guid isPermaLink="false">http://www.aip.im/?p=57</guid>
		<description><![CDATA[It's possible but not as easy as ALTER TABLE [table] ADD COLUMN [column] [type] AFTER [anothercolumn]; like supported in MySql. We need to drop all contraints, create a temporary table with the new structure, copy all data to the temporary table, drop the old table and rename the temporary table. Below is a script that [...]]]></description>
			<content:encoded><![CDATA[<p>It's possible but not as easy as ALTER TABLE [table] ADD COLUMN [column] [type] AFTER [anothercolumn]; like supported in MySql.</p>
<p>We need to drop all contraints, create a temporary table with the new structure, copy all data to the temporary table, drop the old table and rename the temporary table.</p>
<p>Below is a script that adds the column <em>newcolumn</em> between <em>place</em> and <em>name</em> in a table named <strong>mytable</strong>.</p>
<p><code>ALTER TABLE [mytable] DROP CONSTRAINT [PK_mytable]<br />
ALTER TABLE [mytable] DROP CONSTRAINT [DF_mytable_place]<br />
ALTER TABLE [mytable] DROP CONSTRAINT [DF_mytable_name]<br />
&nbsp;<br />
CREATE TABLE tmp_mytable (<br />
	[item_id] [int] IDENTITY(1,1) NOT NULL,<br />
	[place] [int] NOT NULL,<br />
	[newcolumn] [nvarchar](255) NOT NULL,<br />
	[name] [nvarchar](255) NOT NULL,<br />
 CONSTRAINT [PK_mytable] PRIMARY KEY CLUSTERED<br />
(<br />
	[item_id] ASC<br />
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]<br />
) ON [PRIMARY]<br />
&nbsp;<br />
ALTER TABLE [tmp_mytable] ADD  CONSTRAINT [DF_mytable_place]  DEFAULT ((1)) FOR [place]<br />
ALTER TABLE [tmp_mytable] ADD  CONSTRAINT [DF_mytable_name]  DEFAULT ('') FOR [name]<br />
ALTER TABLE [tmp_mytable] ADD  CONSTRAINT [DF_mytable_newcolumn]  DEFAULT ('newvalue') FOR [newcolumn]<br />
&nbsp;<br />
SET IDENTITY_INSERT dbo.tmp_mytable ON<br />
IF EXISTS(SELECT * FROM [mytable])<br />
	 EXEC('INSERT INTO [tmp_mytable] (item_id, place, name)<br />
		SELECT item_id, place, name FROM [mytable] WITH (HOLDLOCK TABLOCKX)')<br />
SET IDENTITY_INSERT dbo.tmp_mytable OFF<br />
&nbsp;<br />
DROP TABLE mytable;<br />
EXECUTE sp_rename N'tmp_mytable', N'mytable', 'OBJECT';<br />
</code></p>
<p>If you don't care about the placement you can add a column to the end of the table using this command:</p>
<p><code>ALTER TABLE mytable ADD newcolumn [nvarchar](255) NOT NULL CONSTRAINT DF_mytable_newcolumn DEFAULT 'newvalue'<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.aip.im/2011/08/how-to-add-new-column-to-a-mssql-table-between-two-existing-columns/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to easily migrate mailboxes from Exchange server 2003 to 2010</title>
		<link>http://www.aip.im/2011/06/how-to-easily-migrate-mailboxes-from-exchange-server-2003-to-2010/</link>
		<comments>http://www.aip.im/2011/06/how-to-easily-migrate-mailboxes-from-exchange-server-2003-to-2010/#comments</comments>
		<pubDate>Tue, 21 Jun 2011 01:17:50 +0000</pubDate>
		<dc:creator>aip</dc:creator>
				<category><![CDATA[Mail]]></category>
		<category><![CDATA[Exchange]]></category>

		<guid isPermaLink="false">http://www.aip.im/?p=53</guid>
		<description><![CDATA[I have been trying to figure out a way to move a few mailboxes from Exchange server 2003 to 2010. There is no trust relation between the two servers and they are on different networks so the included Move Request feature does work. I only seem to be able to find very complicated and time [...]]]></description>
			<content:encoded><![CDATA[<p>I have been trying to figure out a way to move a few mailboxes from Exchange server 2003 to 2010. There is no trust relation between the two servers and they are on different networks so the included Move Request feature does work. I only seem to be able to find very complicated and time consuming ways of doing that mainly targeted for Exchange servers with hundreds or thousands of mailboxes or involving expensive migration tools.<span id="more-53"></span></p>
<p>After searching for solutions I found that the easiest way would be to export pst file from Outlook including all data from the old server and import it to the new. Exporting the pst using exmerge would also work out but for some reason it's not working on the old Windows 2003 server. Most users suggest using the Import-Mailbox cmdlet but it's not available in Exchange Server 2010. This is the error message I got:</p>
<p><code>[PS] C:\Windows\system32>Import-Mailbox -Identity username -FilePath \\server\share\file.pst<br />
The term 'Import-Mailbox' is not recognized as the name of a cmdlet, function, script file, or operable program. Check<br />
the spelling of the name, or if a path was included, verify that the path is correct and try again.<br />
At line:1 char:15<br />
+ Import-Mailbox <<<<  -Identity username<br />
    + CategoryInfo          : ObjectNotFound: (Import-Mailbox:String) [], CommandNotFoundException<br />
    + FullyQualifiedErrorId : CommandNotFoundException<br />
</code></p>
<p>Looks like Import-Mailbox has been replaced with a new command: New-MailboxImportRequest.</p>
<p>This is how I managed to import the ost using Exchange Management Shell:</p>
<p><code>New-MailboxImportRequest -Mailbox username -FilePath \\server\share\file.pst<br />
</code></p>
<p>To see a list of import requests and the status of each of them use the Get-MailboxImportRequest cmdlet:</p>
<p><code>[PS] C:\Windows\system32>Get-MailboxImportRequest</p>
<p>Name                     Mailbox                       Status<br />
----                     -------                       ------<br />
MailboxImport            domain/Users/username         InProgress<br />
</code></p>
<p>To see current status of a single import including percentage completed use the Get-MailboxImportRequestStatistics cmdlet:</p>
<p><code>[PS] C:\Windows\system32>Get-MailboxImportRequestStatistics -Identity username\MailboxImport</p>
<p>Name               Status          TargetAlias        PercentComplete<br />
----               ------          -----------        ---------------<br />
MailboxImport      InProgress      username           5<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.aip.im/2011/06/how-to-easily-migrate-mailboxes-from-exchange-server-2003-to-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Changing file upload limits in ASP.NET on IIS 7 or greater</title>
		<link>http://www.aip.im/2011/05/changing-file-upload-limits-in-asp-net-on-iis-7-or-greater/</link>
		<comments>http://www.aip.im/2011/05/changing-file-upload-limits-in-asp-net-on-iis-7-or-greater/#comments</comments>
		<pubDate>Fri, 13 May 2011 16:13:10 +0000</pubDate>
		<dc:creator>aip</dc:creator>
				<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[IIS]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[swfupload]]></category>
		<category><![CDATA[upload]]></category>

		<guid isPermaLink="false">http://www.aip.im/?p=49</guid>
		<description><![CDATA[When uploading files greater than 28.6 MB (30000000 Bytes) with ASP.NET on IIS 7.5 using SWFUpload I'm getting this error: There has been an I/O Error: Error #2038 The reason is that IIS 7 and greater has a request limit of 28.6 MB. The limit can be raised to 100 MB using the following commands: [...]]]></description>
			<content:encoded><![CDATA[<p>When uploading files greater than 28.6 MB (30000000 Bytes) with ASP.NET on IIS 7.5 using SWFUpload I'm getting this error:</p>
<blockquote><p>There has been an I/O Error: Error #2038</p></blockquote>
<p><span id="more-49"></span></p>
<p>The reason is that IIS 7 and greater has a request limit of 28.6 MB. The limit can be raised to 100 MB using the following commands:</p>
<p><code>cd C:\Windows\System32\inetsrv<br />
appcmd set config -section:requestFiltering -requestLimits.maxAllowedContentLength:104857600<br />
</code></p>
<p>You can also do this in the IIS Manager:</p>
<ol>
<li>Open the IIS Manager</li>
<li>From the server home tree item, open the Request Filtering item</li>
<li>Click Edit Feature Settings... on the right</li>
<li>Set the Maximum allowed content length (Bytes)</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.aip.im/2011/05/changing-file-upload-limits-in-asp-net-on-iis-7-or-greater/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to test disk performance in Linux</title>
		<link>http://www.aip.im/2011/04/how-to-test-disk-performance-in-linux/</link>
		<comments>http://www.aip.im/2011/04/how-to-test-disk-performance-in-linux/#comments</comments>
		<pubDate>Mon, 11 Apr 2011 09:19:41 +0000</pubDate>
		<dc:creator>aip</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[dd]]></category>
		<category><![CDATA[performance]]></category>

		<guid isPermaLink="false">http://www.aip.im/?p=46</guid>
		<description><![CDATA[A lot of performance issues can be caused by poor disk performance. Here's how to test the read and write performance on a Linux system using dd. 1. Write a file 2x the size of the RAM to make sure we get the real write rate. In this example the RAM of the server is [...]]]></description>
			<content:encoded><![CDATA[<p>A lot of performance issues can be caused by poor disk performance. Here's how to test the read and write performance on a Linux system using dd.</p>
<p>1. Write a file 2x the size of the RAM to make sure we get the real write rate. In this example the RAM of the server is 1 GB so I'm writing a 2 GB file (8KB * 250000 = 2GB). You can adjust the number of blocks to make it suitable for the amount of RAM in your system .</p>
<p><code>time sh -c "dd if=/dev/zero of=ddfile bs=8k count=250000 && sync"<br />
</code></p>
<p>2. Write a new file equal to the amount of RAM in the system to flush out the data cached with last action (8KB * 125000 = 1GB).</p>
<p><code>dd if=/dev/zero of=ddfile2 bs=8K count=125000<br />
</code></p>
<p>3. Test the read speed </p>
<p><code>time dd if=ddfile of=/dev/null bs=8k<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.aip.im/2011/04/how-to-test-disk-performance-in-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Case insensitive functions not working properly with special international characters</title>
		<link>http://www.aip.im/2011/04/case-insensitive-functions-not-working-properly-with-special-international-characters/</link>
		<comments>http://www.aip.im/2011/04/case-insensitive-functions-not-working-properly-with-special-international-characters/#comments</comments>
		<pubDate>Thu, 07 Apr 2011 10:40:08 +0000</pubDate>
		<dc:creator>aip</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.aip.im/?p=44</guid>
		<description><![CDATA[I was creating a PHP-level search function using stripos to check if the search query was found in a string. Everything was working perfectly except special characters were still case sensitive. Turns out the problem is that the default locale was set to one not supporting those characters. To fix it, change the default locale [...]]]></description>
			<content:encoded><![CDATA[<p>I was creating a PHP-level search function using stripos to check if the search query was found in a string. Everything was working perfectly except special characters were still case sensitive.</p>
<p>Turns out the problem is that the default locale was set to one not supporting those characters. To fix it, change the default locale to a better match or set the locale manually using the setlocale function:</p>
<p><code>setlocale(LC_ALL, 'is_IS');<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.aip.im/2011/04/case-insensitive-functions-not-working-properly-with-special-international-characters/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->
