<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://docs.sandbox.joomla.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jzlcdh</id>
	<title>Joomla! Documentation - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://docs.sandbox.joomla.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jzlcdh"/>
	<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/Special:Contributions/Jzlcdh"/>
	<updated>2026-08-15T07:29:06Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=User_talk:Jzlcdh&amp;diff=158305</id>
		<title>User talk:Jzlcdh</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=User_talk:Jzlcdh&amp;diff=158305"/>
		<updated>2015-02-09T10:05:27Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: totally confused what this was about so blanking out&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=User:Jzlcdh&amp;diff=158304</id>
		<title>User:Jzlcdh</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=User:Jzlcdh&amp;diff=158304"/>
		<updated>2015-02-09T10:03:41Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: Blanked the page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=Backup_Basics_for_a_Joomla!_Web_Site&amp;diff=125172</id>
		<title>Backup Basics for a Joomla! Web Site</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=Backup_Basics_for_a_Joomla!_Web_Site&amp;diff=125172"/>
		<updated>2014-08-26T12:23:38Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: 2FA lockout workaround added&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{merge|What are the best practices for site backups?}}&lt;br /&gt;
&lt;br /&gt;
Always keep a recent backup of your site.  There is more to backup than accidents.  Accidents do happen, but there are many other reasons it helps to have your backup files handy before the need arises.   The causes of data loss are many.  Joomla sites can be compromised by malicious attackers if the site administrator has not paid attention to security, or in rare cases when hackers bypass the best security.   Joomla is designed for teamwork, and even good editors can make an error to harm the site.     There are many reasons website administrators need to revert the site back to a previous working state.&lt;br /&gt;
&lt;br /&gt;
Practice both backup and restore. Nobody should wait for an emergency to test their skills and tools for dealing with an emergency.  Very often people create a backup of something that is empty or corrupted, and discover that none of their critical data was really backed up in the first place.  Nobody likes a ship that sinks with empty lifeboats, and it&#039;s also wise to practice getting people out of the lifeboats and into a new working system.  Having a backup is not just about accidents, because a person well versed in backup can help with safe development of new features.  Backup and restore help web managers create a staging website where new changes can be practiced without risking the production website.    The clone can be created on a local machine acting as a test server, or any other folder or web hosting account supporting the SQL and PHP versions used by the site you&#039;ve backed up.  It&#039;s easy for anyone to mix up their live site and staging site, so change the color of your staging site template to remind developers that the staging site is not live to the public.    &lt;br /&gt;
&lt;br /&gt;
If you use 2 factor authentication then currently (written Aug 2014) if you are locked out of your site you can rename the folder plugins/twofactorauth to twofactorauth.BAK and log in to your site&#039;s back-end. Then disable all plugins under the &amp;quot;twofactorauth&amp;quot; group. Finally, rename the plugins/twofactorauth.BAK folder of your site back to twofactorauth. &lt;br /&gt;
&lt;br /&gt;
== Summary ==&lt;br /&gt;
&lt;br /&gt;
There are two parts to a complete back up of your Joomla site&lt;br /&gt;
 &lt;br /&gt;
a) The database information, most often found in your mysql database&lt;br /&gt;
&lt;br /&gt;
b) The files and folders on your website, as hosted on most static html websites&lt;br /&gt;
&lt;br /&gt;
== Database Backup  Part 1 of 2 ==&lt;br /&gt;
&lt;br /&gt;
One of the first steps to backup your Joomla site is to close the site to the public, backup the files, and then re-open the site.  The steps from phpmyadmin.net omit this much needed operation.  Go to the backend of your Joomla control panel, under global configuration, under the site tab, set &amp;quot;site offline&amp;quot; = yes.   This will then change the look of your configuration.php file in the root of your Joomla website.    An administrator will need to use your hosting control panel to view that file or use FTP to download and view the file.   Inside configuration.php you can find the name of your database that will need backing up.  Look for the line with code resembling &amp;quot;var $db = &#039;x1234&#039;;&amp;quot; or &amp;quot;public $db = &#039;x1234&#039;;&amp;quot;  Where x1234 is the name of your database.  &lt;br /&gt;
&lt;br /&gt;
Using the logon information for your server or hosting company open the PhpMyAdmin tool. Open the database and look for the table named &amp;quot;users&amp;quot; and then click the icon to &amp;quot;view&amp;quot; the data in that table.   You should see the names of staff who have accounts on your Joomla site.   This view provides you the confidence that you are about to backup the correct database.  Click the export tab, then go.   Your browser will download your database into an SQL file.  Find where you browser put that file, then move the file to a much more secure drive or location.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Server SQL databases can be backed up without PhpMyAdmin and instead using the SQL command line.  If you know how to do that, you&#039;re most likely not in need of this documentation.  &lt;br /&gt;
&lt;br /&gt;
It is recommended to back up the database at least twice per week or even everyday (and more) if you have an active site.&lt;br /&gt;
&lt;br /&gt;
== File System Backup Part 2 of 2 ==&lt;br /&gt;
&lt;br /&gt;
Continue with your site offline, see above.  Your joomla folder and files can be backed up by downloading them with an FTP utility or using the file manager of your webhosting company.   Both of these file options work, neither is better.  &lt;br /&gt;
&lt;br /&gt;
FTP tools move thousands of Joomla files and use more time.  The FTP process can be slow and interrupted.  Many Joomla sites are hosted by providers like godaddy or hostgator who provide a control panel for taking thousands of files in one folder and then creating a zip file very quickly.   This means your site is offline for a shorter amount of time, and you have only one zip file.  Go to your hosting control panel and look for their file manager icon.   &lt;br /&gt;
&lt;br /&gt;
If you use your hosting file manager, practice using that interface to select your server folder and creating a zip file.  Download the zip file locally and then expand it locally to to see what files are inside that zip file.  This option also let&#039;s you expand the same zip file for restoration to a staging site. &lt;br /&gt;
&lt;br /&gt;
Backing up the Joomla files with FTP is no different than backing up a static HTML website. Download all the files and folders that exist in the main Joomla directory.  The downloaded locaiton is a folder on your local computer. Be sure that the file and directory structure remains the same as it is in the live site.   When you restore the files, you will use the FTP utility to upload the files to a new server. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;As soon as you&#039;ve downloaded your files via zip or FTP, change your site to be online.&lt;br /&gt;
&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== More Backup Documentation ==  &lt;br /&gt;
&lt;br /&gt;
Most administrators of a Joomla website have access to their MySQL data using the GUI interface called PhpMyAdmin, see [https://phpmyadmin.readthedocs.org/en/latest/faq.html#how-can-i-backup-my-database-or-table How can I backup my database or table?] for more information.&lt;br /&gt;
 &lt;br /&gt;
There are several automated backup extensions for Joomla! located in the [http://extensions.joomla.org Joomla! Extensions Directory]. Here is a link for [http://extensions.joomla.org/extensions/access-a-security/site-security/backup Joomla! Backup Extensions]. &lt;br /&gt;
&lt;br /&gt;
When servers are hosted in the same building as the staff, the web administrators should make extra care to store the backup copies of the database/files in a different building.  Fire, theft, water or other damage often wipes out the live website AND backups.  On a regular basis the web administrators should burn both the database and files to CD or save to an external hard drive off site.&lt;br /&gt;
&lt;br /&gt;
==Special Notes==&lt;br /&gt;
=== Automated Backup Tools ===&lt;br /&gt;
&lt;br /&gt;
==== Akeeba ====&lt;br /&gt;
&lt;br /&gt;
* Akeeba Backup produces a .jpa file that you should download to a safe location that&#039;s not on your webhost or webserver. &lt;br /&gt;
&lt;br /&gt;
* The .jpa file contains all the folders/files and database files.&lt;br /&gt;
&lt;br /&gt;
* The .jpa file also contains an installer&lt;br /&gt;
&lt;br /&gt;
These paragraphs are about backup, but it&#039;s worth a quick note that the Akeeba restore process is a fast guided process similar to a setup wizard.     Place 2 files on a new webhost.  a) your JPA file and b) Kickstart.php (from Akeeba)  You then use a browser to launch the restore process and unpack the .jpa file.  Please read the Akeeba restore documentation.&lt;br /&gt;
&lt;br /&gt;
Akeeba and other backup extensions can be download from [http://extensions.joomla.org/extensions/access-a-security/site-security/backup]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorials]][[Category:Security]]&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=Security_Checklist/Site_Administration&amp;diff=125171</id>
		<title>Security Checklist/Site Administration</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=Security_Checklist/Site_Administration&amp;diff=125171"/>
		<updated>2014-08-26T12:20:49Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: /* Consider using 2 factor authentication */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{:Security Checklist/TOC}}&lt;br /&gt;
== Site Administration ==&lt;br /&gt;
&lt;br /&gt;
===Use well-formed passwords===&lt;br /&gt;
: Change passwords regularly and keep them unique. A strong  password has a random combination of letters, numbers, or symbols. Avoid using single names or words found in a dictionary. Never use the names of your relatives, pets, etc. Search the forums for a script supplied by Wizzie that automatically changes passwords. This is a great tool for administrators or multiple sites. There are numerous handy websites that have [http://strongpasswordgenerator.com strong password generators].&lt;br /&gt;
&lt;br /&gt;
===Consider using 2 factor authentication===&lt;br /&gt;
: For superusers (and perhaps other powerful users) consider using 2 factor authentication. {{JVer/multi|3.2}}&lt;br /&gt;
&lt;br /&gt;
If you set all superusers on your live site to use 2FA then currently (written Aug 2014) if you are locked out of your site after recovery you can rename the folder plugins/twofactorauth to twofactorauth.BAK and log in to your site&#039;s back-end. Then disable all plugins under the &amp;quot;twofactorauth&amp;quot; group. Finally, rename the plugins/twofactorauth.BAK folder of your site back to twofactorauth.&lt;br /&gt;
&lt;br /&gt;
===Maintain a strong site backup process===&lt;br /&gt;
: Never rely on others&#039; backups. Take responsibility for your backup procedures. Many ISPs state in their contract that you cannot rely solely on their backups.&lt;br /&gt;
&lt;br /&gt;
===Monitor crack attempts===&lt;br /&gt;
: VPS and dedicated server users can run [http://www.tripwire.com/ TripWire] or [http://la-samhna.de/samhain/ SAMHAIN]. These applications provide exhaustive file checking and reporting functionality, and can be installed in a stealthy manner to help protect themselves in the event of a serious infiltration. (Note: Users of shared servers cannot use this technique.)&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Perform automated intrusion detection===&lt;br /&gt;
: Use an Intrusion Prevention/Detection Systems to block/alert on malicious HTTP requests. &lt;br /&gt;
* [http://www.google.com/search?q=Intrusion+Prevention Google search]&lt;br /&gt;
&lt;br /&gt;
===Perform manual intrusion detection===&lt;br /&gt;
: Regularly check raw logs for suspicious activity. Don&#039;t rely on summaries and graphs.&lt;br /&gt;
&lt;br /&gt;
===Stay current with security patches and upgrades===&lt;br /&gt;
: Apply vendor-released security patches ASAP.&lt;br /&gt;
* Review the [http://docs.joomla.org/Vulnerable_Extensions_List vulnerable extensions]&lt;br /&gt;
&lt;br /&gt;
===Proactively seek site vulnerabilities===&lt;br /&gt;
: Perform frequent web scanning.&lt;br /&gt;
&lt;br /&gt;
* [http://www.google.com/search?q=%22web+scanning Google Search]&lt;br /&gt;
&lt;br /&gt;
===Proactively seek SQL injections vulnerabilities===&lt;br /&gt;
: Use tools such as [http://www.parosproxy.org/ Paros Proxy] for conducting automated SQL Injection tests against your PHP applications.&lt;br /&gt;
      &amp;lt;ul&amp;gt;&lt;br /&gt;
         &amp;lt;li&amp;gt;[http://www.google.com/search?q=%22SQL+Injection Google Search]&amp;lt;/li&amp;gt;&lt;br /&gt;
         &amp;lt;li&amp;gt;[http://en.wikipedia.org/wiki/SQL_injection Wikipedia Article]&amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Use shell scripts to automate security tasks===&lt;br /&gt;
: Search the forums for these popular scripts:&lt;br /&gt;
      &amp;lt;ul&amp;gt;&lt;br /&gt;
           &amp;lt;li&amp;gt;Joomla! Version Checking&amp;lt;/li&amp;gt;&lt;br /&gt;
           &amp;lt;li&amp;gt;Joomla! Component/Module Version Checking&amp;lt;/li&amp;gt;&lt;br /&gt;
           &amp;lt;li&amp;gt;Exploit Checking&amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Learn about security software===&lt;br /&gt;
: There is not a single tool that can protect your site. If there were, it would be so heavily targeted that it would probably become a liability.&lt;br /&gt;
&lt;br /&gt;
===Don&#039;t reinvent every wheel===&lt;br /&gt;
: Every now and then, hire a professional Joomla! security consultant to review your configurations. Do you remember the adage, &#039;&#039;&amp;quot;Anyone who acts as their own lawyer has a fool for a client.&amp;quot;?&#039;&#039; The same goes for Web development. Don&#039;t expect to catch all of your own security mistakes.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- KEEP THIS AT THE END OF THE PAGE --&amp;gt;&lt;br /&gt;
[[Category:Security Checklist]]&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=Backup_Basics_for_a_Joomla!_Web_Site&amp;diff=124921</id>
		<title>Backup Basics for a Joomla! Web Site</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=Backup_Basics_for_a_Joomla!_Web_Site&amp;diff=124921"/>
		<updated>2014-08-19T07:06:56Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: added 2fa note&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{merge|What are the best practices for site backups?}}&lt;br /&gt;
&lt;br /&gt;
Always keep a recent backup of your site.  There is more to backup than accidents.  Accidents do happen, but there are many other reasons it helps to have your backup files handy before the need arises.   The causes of data loss are many.  Joomla sites can be compromised by malicious attackers if the site administrator has not paid attention to security, or in rare cases when hackers bypass the best security.   Joomla is designed for teamwork, and even good editors can make an error to harm the site.     There are many reasons website administrators need to revert the site back to a previous working state.&lt;br /&gt;
&lt;br /&gt;
Practice both backup and restore (Note: if you use 2 factor authentication then currently - written Aug 2014 - you need to read http://github.com/joomla/joomla-cms/issues/4126#issuecomment-52558665). Nobody should wait for an emergency to test their skills and tools for dealing with an emergency.  Very often people create a backup of something that is empty or corrupted, and discover that none of their critical data was really backed up in the first place.  Nobody likes a ship that sinks with empty lifeboats, and it&#039;s also wise to practice getting people out of the lifeboats and into a new working system.  Having a backup is not just about accidents, because a person well versed in backup can help with safe development of new features.  Backup and restore help web managers create a staging website where new changes can be practiced without risking the production website.    The clone can be created on a local machine acting as a test server, or any other folder or web hosting account supporting the SQL and PHP versions used by the site you&#039;ve backed up.  It&#039;s easy for anyone to mix up their live site and staging site, so change the color of your staging site template to remind developers that the staging site is not live to the public.    &lt;br /&gt;
&lt;br /&gt;
== Summary ==&lt;br /&gt;
&lt;br /&gt;
There are two parts to a complete back up of your Joomla site&lt;br /&gt;
 &lt;br /&gt;
a) The database information, most often found in your mysql database&lt;br /&gt;
&lt;br /&gt;
b) The files and folders on your website, as hosted on most static html websites&lt;br /&gt;
&lt;br /&gt;
== Database Backup  Part 1 of 2 ==&lt;br /&gt;
&lt;br /&gt;
One of the first steps to backup your Joomla site is to close the site to the public, backup the files, and then re-open the site.  The steps from phpmyadmin.net omit this much needed operation.  Go to the backend of your Joomla control panel, under global configuration, under the site tab, set &amp;quot;site offline&amp;quot; = yes.   This will then change the look of your configuration.php file in the root of your Joomla website.    An administrator will need to use your hosting control panel to view that file or use FTP to download and view the file.   Inside configuration.php you can find the name of your database that will need backing up.  Look for the line with code resembling &amp;quot;var $db = &#039;x1234&#039;;&amp;quot; or &amp;quot;public $db = &#039;x1234&#039;;&amp;quot;  Where x1234 is the name of your database.  &lt;br /&gt;
&lt;br /&gt;
Using the logon information for your server or hosting company open the PhpMyAdmin tool. Open the database and look for the table named &amp;quot;users&amp;quot; and then click the icon to &amp;quot;view&amp;quot; the data in that table.   You should see the names of staff who have accounts on your Joomla site.   This view provides you the confidence that you are about to backup the correct database.  Click the export tab, then go.   Your browser will download your database into an SQL file.  Find where you browser put that file, then move the file to a much more secure drive or location.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Server SQL databases can be backed up without PhpMyAdmin and instead using the SQL command line.  If you know how to do that, you&#039;re most likely not in need of this documentation.  &lt;br /&gt;
&lt;br /&gt;
It is recommended to back up the database at least twice per week or even everyday (and more) if you have an active site.&lt;br /&gt;
&lt;br /&gt;
== File System Backup Part 2 of 2 ==&lt;br /&gt;
&lt;br /&gt;
Continue with your site offline, see above.  Your joomla folder and files can be backed up by downloading them with an FTP utility or using the file manager of your webhosting company.   Both of these file options work, neither is better.  &lt;br /&gt;
&lt;br /&gt;
FTP tools move thousands of Joomla files and use more time.  The FTP process can be slow and interrupted.  Many Joomla sites are hosted by providers like godaddy or hostgator who provide a control panel for taking thousands of files in one folder and then creating a zip file very quickly.   This means your site is offline for a shorter amount of time, and you have only one zip file.  Go to your hosting control panel and look for their file manager icon.   &lt;br /&gt;
&lt;br /&gt;
If you use your hosting file manager, practice using that interface to select your server folder and creating a zip file.  Download the zip file locally and then expand it locally to to see what files are inside that zip file.  This option also let&#039;s you expand the same zip file for restoration to a staging site. &lt;br /&gt;
&lt;br /&gt;
Backing up the Joomla files with FTP is no different than backing up a static HTML website. Download all the files and folders that exist in the main Joomla directory.  The downloaded locaiton is a folder on your local computer. Be sure that the file and directory structure remains the same as it is in the live site.   When you restore the files, you will use the FTP utility to upload the files to a new server. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;As soon as you&#039;ve downloaded your files via zip or FTP, change your site to be online.&lt;br /&gt;
&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== More Backup Documentation ==  &lt;br /&gt;
&lt;br /&gt;
Most administrators of a Joomla website have access to their MySQL data using the GUI interface called PhpMyAdmin, see [https://phpmyadmin.readthedocs.org/en/latest/faq.html#how-can-i-backup-my-database-or-table How can I backup my database or table?] for more information.&lt;br /&gt;
 &lt;br /&gt;
There are several automated backup extensions for Joomla! located in the [http://extensions.joomla.org Joomla! Extensions Directory]. Here is a link for [http://extensions.joomla.org/extensions/access-a-security/site-security/backup Joomla! Backup Extensions]. &lt;br /&gt;
&lt;br /&gt;
When servers are hosted in the same building as the staff, the web administrators should make extra care to store the backup copies of the database/files in a different building.  Fire, theft, water or other damage often wipes out the live website AND backups.  On a regular basis the web administrators should burn both the database and files to CD or save to an external hard drive off site.&lt;br /&gt;
&lt;br /&gt;
==Special Notes==&lt;br /&gt;
=== Automated Backup Tools ===&lt;br /&gt;
&lt;br /&gt;
==== Akeeba ====&lt;br /&gt;
&lt;br /&gt;
* Akeeba Backup produces a .jpa file that you should download to a safe location that&#039;s not on your webhost or webserver. &lt;br /&gt;
&lt;br /&gt;
* The .jpa file contains all the folders/files and database files.&lt;br /&gt;
&lt;br /&gt;
* The .jpa file also contains an installer&lt;br /&gt;
&lt;br /&gt;
These paragraphs are about backup, but it&#039;s worth a quick note that the Akeeba restore process is a fast guided process similar to a setup wizard.     Place 2 files on a new webhost.  a) your JPA file and b) Kickstart.php (from Akeeba)  You then use a browser to launch the restore process and unpack the .jpa file.  Please read the Akeeba restore documentation.&lt;br /&gt;
&lt;br /&gt;
Akeeba and other backup extensions can be download from [http://extensions.joomla.org/extensions/access-a-security/site-security/backup]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorials]][[Category:Security]]&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=Security_Checklist/Site_Administration&amp;diff=124920</id>
		<title>Security Checklist/Site Administration</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=Security_Checklist/Site_Administration&amp;diff=124920"/>
		<updated>2014-08-19T06:48:59Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: /* Consider using 2 factor authentication */  added link re secret key issue&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{:Security Checklist/TOC}}&lt;br /&gt;
== Site Administration ==&lt;br /&gt;
&lt;br /&gt;
===Use well-formed passwords===&lt;br /&gt;
: Change passwords regularly and keep them unique. A strong  password has a random combination of letters, numbers, or symbols. Avoid using single names or words found in a dictionary. Never use the names of your relatives, pets, etc. Search the forums for a script supplied by Wizzie that automatically changes passwords. This is a great tool for administrators or multiple sites. There are numerous handy websites that have [http://strongpasswordgenerator.com strong password generators].&lt;br /&gt;
&lt;br /&gt;
===Consider using 2 factor authentication===&lt;br /&gt;
: For superusers (and perhaps other powerful users) consider using 2 factor authentication. {{JVer/multi|3.2}}&lt;br /&gt;
&lt;br /&gt;
If you set all superusers on your live site to use 2FA then currently (written Aug 2014) you will need to read &lt;br /&gt;
http://github.com/joomla/joomla-cms/issues/4126#issuecomment-52558665&lt;br /&gt;
when doing your disaster recovery test.&lt;br /&gt;
&lt;br /&gt;
===Maintain a strong site backup process===&lt;br /&gt;
: Never rely on others&#039; backups. Take responsibility for your backup procedures. Many ISPs state in their contract that you cannot rely solely on their backups.&lt;br /&gt;
&lt;br /&gt;
===Monitor crack attempts===&lt;br /&gt;
: VPS and dedicated server users can run [http://www.tripwire.com/ TripWire] or [http://la-samhna.de/samhain/ SAMHAIN]. These applications provide exhaustive file checking and reporting functionality, and can be installed in a stealthy manner to help protect themselves in the event of a serious infiltration. (Note: Users of shared servers cannot use this technique.)&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Perform automated intrusion detection===&lt;br /&gt;
: Use an Intrusion Prevention/Detection Systems to block/alert on malicious HTTP requests. &lt;br /&gt;
* [http://www.google.com/search?q=Intrusion+Prevention Google search]&lt;br /&gt;
&lt;br /&gt;
===Perform manual intrusion detection===&lt;br /&gt;
: Regularly check raw logs for suspicious activity. Don&#039;t rely on summaries and graphs.&lt;br /&gt;
&lt;br /&gt;
===Stay current with security patches and upgrades===&lt;br /&gt;
: Apply vendor-released security patches ASAP.&lt;br /&gt;
* Review the [http://docs.joomla.org/Vulnerable_Extensions_List vulnerable extensions]&lt;br /&gt;
&lt;br /&gt;
===Proactively seek site vulnerabilities===&lt;br /&gt;
: Perform frequent web scanning.&lt;br /&gt;
&lt;br /&gt;
* [http://www.google.com/search?q=%22web+scanning Google Search]&lt;br /&gt;
&lt;br /&gt;
===Proactively seek SQL injections vulnerabilities===&lt;br /&gt;
: Use tools such as [http://www.parosproxy.org/ Paros Proxy] for conducting automated SQL Injection tests against your PHP applications.&lt;br /&gt;
      &amp;lt;ul&amp;gt;&lt;br /&gt;
         &amp;lt;li&amp;gt;[http://www.google.com/search?q=%22SQL+Injection Google Search]&amp;lt;/li&amp;gt;&lt;br /&gt;
         &amp;lt;li&amp;gt;[http://en.wikipedia.org/wiki/SQL_injection Wikipedia Article]&amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Use shell scripts to automate security tasks===&lt;br /&gt;
: Search the forums for these popular scripts:&lt;br /&gt;
      &amp;lt;ul&amp;gt;&lt;br /&gt;
           &amp;lt;li&amp;gt;Joomla! Version Checking&amp;lt;/li&amp;gt;&lt;br /&gt;
           &amp;lt;li&amp;gt;Joomla! Component/Module Version Checking&amp;lt;/li&amp;gt;&lt;br /&gt;
           &amp;lt;li&amp;gt;Exploit Checking&amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Learn about security software===&lt;br /&gt;
: There is not a single tool that can protect your site. If there were, it would be so heavily targeted that it would probably become a liability.&lt;br /&gt;
&lt;br /&gt;
===Don&#039;t reinvent every wheel===&lt;br /&gt;
: Every now and then, hire a professional Joomla! security consultant to review your configurations. Do you remember the adage, &#039;&#039;&amp;quot;Anyone who acts as their own lawyer has a fool for a client.&amp;quot;?&#039;&#039; The same goes for Web development. Don&#039;t expect to catch all of your own security mistakes.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- KEEP THIS AT THE END OF THE PAGE --&amp;gt;&lt;br /&gt;
[[Category:Security Checklist]]&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=Security_Checklist/Site_Administration&amp;diff=115889</id>
		<title>Security Checklist/Site Administration</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=Security_Checklist/Site_Administration&amp;diff=115889"/>
		<updated>2014-03-17T09:16:43Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: added 2 factor auth&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{:Security Checklist/TOC}}&lt;br /&gt;
== Site Administration ==&lt;br /&gt;
&lt;br /&gt;
===Use well-formed passwords===&lt;br /&gt;
: Change passwords regularly and keep them unique. A strong  password has a random combination of letters, numbers, or symbols. Avoid using single names or words found in a dictionary. Never use the names of your relatives, pets, etc. Search the forums for a script supplied by Wizzie that automatically changes passwords. This is a great tool for administrators or multiple sites. There are numerous handy websites that have [http://strongpasswordgenerator.com strong password generators].&lt;br /&gt;
&lt;br /&gt;
===Consider using 2 factor authentication===&lt;br /&gt;
: For superusers (and perhaps other powerful users) consider using 2 factor authentication. {{JVer/multi|3.2}}&lt;br /&gt;
&lt;br /&gt;
===Maintain a strong site backup process===&lt;br /&gt;
: Never rely on others&#039; backups. Take responsibility for your backup procedures. Many ISPs state in their contract that you cannot rely solely on their backups.&lt;br /&gt;
&lt;br /&gt;
===Monitor crack attempts===&lt;br /&gt;
: VPS and dedicated server users can run [http://www.tripwire.com/ TripWire] or [http://la-samhna.de/samhain/ SAMHAIN]. These applications provide exhaustive file checking and reporting functionality, and can be installed in a stealthy manner to help protect themselves in the event of a serious infiltration. (Note: Users of shared servers cannot use this technique.)&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Perform automated intrusion detection===&lt;br /&gt;
: Use an Intrusion Prevention/Detection Systems to block/alert on malicious HTTP requests. &lt;br /&gt;
* [http://www.google.com/search?q=Intrusion+Prevention Google search]&lt;br /&gt;
&lt;br /&gt;
===Perform manual intrusion detection===&lt;br /&gt;
: Regularly check raw logs for suspicious activity. Don&#039;t rely on summaries and graphs.&lt;br /&gt;
&lt;br /&gt;
===Stay current with security patches and upgrades===&lt;br /&gt;
: Apply vendor-released security patches ASAP.&lt;br /&gt;
* Review the [http://docs.joomla.org/Vulnerable_Extensions_List vulnerable extensions]&lt;br /&gt;
&lt;br /&gt;
===Proactively seek site vulnerabilities===&lt;br /&gt;
: Perform frequent web scanning.&lt;br /&gt;
&lt;br /&gt;
* [http://www.google.com/search?q=%22web+scanning Google Search]&lt;br /&gt;
&lt;br /&gt;
===Proactively seek SQL injections vulnerabilities===&lt;br /&gt;
: Use tools such as [http://www.parosproxy.org/ Paros Proxy] for conducting automated SQL Injection tests against your PHP applications.&lt;br /&gt;
      &amp;lt;ul&amp;gt;&lt;br /&gt;
         &amp;lt;li&amp;gt;[http://www.google.com/search?q=%22SQL+Injection Google Search]&amp;lt;/li&amp;gt;&lt;br /&gt;
         &amp;lt;li&amp;gt;[http://en.wikipedia.org/wiki/SQL_injection Wikipedia Article]&amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Use shell scripts to automate security tasks===&lt;br /&gt;
: Search the forums for these popular scripts:&lt;br /&gt;
      &amp;lt;ul&amp;gt;&lt;br /&gt;
           &amp;lt;li&amp;gt;Joomla! Version Checking&amp;lt;/li&amp;gt;&lt;br /&gt;
           &amp;lt;li&amp;gt;Joomla! Component/Module Version Checking&amp;lt;/li&amp;gt;&lt;br /&gt;
           &amp;lt;li&amp;gt;Exploit Checking&amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Learn about security software===&lt;br /&gt;
: There is not a single tool that can protect your site. If there were, it would be so heavily targeted that it would probably become a liability.&lt;br /&gt;
&lt;br /&gt;
===Don&#039;t reinvent every wheel===&lt;br /&gt;
: Every now and then, hire a professional Joomla! security consultant to review your configurations. Do you remember the adage, &#039;&#039;&amp;quot;Anyone who acts as their own lawyer has a fool for a client.&amp;quot;?&#039;&#039; The same goes for Web development. Don&#039;t expect to catch all of your own security mistakes.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- KEEP THIS AT THE END OF THE PAGE --&amp;gt;&lt;br /&gt;
[[Category:Security Checklist]]&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=Security_Checklist/Getting_Started&amp;diff=115447</id>
		<title>Security Checklist/Getting Started</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=Security_Checklist/Getting_Started&amp;diff=115447"/>
		<updated>2014-03-14T14:34:55Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: /* The most important guidelines */  updated forums&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{:Security Checklist/TOC}}&lt;br /&gt;
=== Security matters ===&lt;br /&gt;
&lt;br /&gt;
:Internet security is a fast moving challenge and ever present threat. There is no one right way to secure a website, and all security methods are subject to instant obsolescence, incremental improvement, and constant revision. All public facing websites are open to constant attack. Are you willing and able to invest the time it takes to administer a dynamic, 24x7, world-accessible, database-driven, interactive, user-authenticated website? Do you have the time and resources to respond to the constant flow of new Internet security issues? The [[Top 10 Stupidest Administrator Tricks]] is a comic/tragic look at what can go wrong. Don&#039;t learn these tricks the hard way! Depending on your own experience, reading the &#039;&#039;Stupidest Tricks&#039;&#039; will either make you laugh or cry. Luckily, there are some well-established principles upon which to base your defensive plans. The following checklists point you toward current best practices for Joomla security.&lt;br /&gt;
&lt;br /&gt;
=== How to read these documents ===&lt;br /&gt;
#Not all techniques are appropriate for every level of experience. Apply the techniques you understand and read up on the ones you don&#039;t.&lt;br /&gt;
#Not all techniques are appropriate for every server. If you use a shared server, you must depend on the settings established by your hosting provider. If you are using a virtual or dedicated server, you can apply more creative security tactics.&lt;br /&gt;
#Not all security tactics are appropriate for all versions of Joomla. Where a technique applies to only one version it is noted by one of the following icons: {{JVer/multi|1.0,1.5,1.6,1.7,2.5,3.0,3.1}}&lt;br /&gt;
&lt;br /&gt;
=== The most important guidelines===&lt;br /&gt;
:These checklists are long and growing because the full plot is thick, complex, and expanding, but don&#039;t despair! Here are a few essential guidelines for securing any website. Following them will protect you from most catastrophes.&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;Back up early and often:&#039;&#039;&#039; Set up (and use and test) a regular backup and recovery process. When done well, this ensures that you can recover from almost any imaginable disaster.&lt;br /&gt;
# &#039;&#039;&#039;Update early and often:&#039;&#039;&#039; Promptly update to the latest &#039;&#039;stable&#039;&#039; version of Joomla! and any installed third-party extensions. This ensures that your site is protected from the newest vulnerabilities as soon as a fix is released and from the latest attack methods as soon as a defense is developed. &lt;br /&gt;
# &#039;&#039;&#039;Use a secure host&#039;&#039;&#039;: Use a high-quality Web host. Do not be fooled by offers of &#039;unlimited bandwidth, unlimited hard drive space, unlimited databases, etc. &lt;br /&gt;
# &#039;&#039;&#039;Use the community&#039;&#039;&#039;: Don&#039;t forget the truism, &amp;quot;If a deal is too good to be true, it is.&amp;quot; It seems that nothing on Earth is unlimited--except perhaps the gullibility of fools and the greed of those who prey upon them. Consider hiring professional assistance if you have inadequate experience or knowledge in this area. One of the advantages of GNU software is that user support is free. Take good advantage of this by asking good questions within the [http://forum.joomla.org Joomla! Forums]. When doing so, be sure to use the the most appropriate board, such as Installation, Migration and Updating, Administration. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
::The most helpful posts in the Joomla! Security Forum are converted into [[Security and Performance FAQs]]. Many of the items on this list are explained in much greater detail in the FAQs. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
::You may want to read the excellent [[Beginners|Absolute Beginners Guide to Joomla!]] It has wealth of tips and tricks presented in an easy to understand format. Even experienced Joomlaists find great ideas here. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
::Hunt down the many nuggets of wisdom found in the [http://forum.joomla.org Joomla! Forums], in particular the [http://forum.joomla.org/viewforum.php?f=714 Joomla! 3.x Security Forum] and the [http://forum.joomla.org/viewforum.php?f=621 Joomla! 2.x Security Forum].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
::To receive all Joomla security announcements, subscribe to Joomla Security News. There are several ways to subscribe: &lt;br /&gt;
&lt;br /&gt;
::# [http://feedburner.google.com/fb/a/mailverify?uri=JoomlaSecurityNews Automatic Email Notification]&lt;br /&gt;
::# [http://feeds.joomla.org/JoomlaSecurityNews RSS feed].&lt;br /&gt;
&lt;br /&gt;
=== The bad news === &lt;br /&gt;
#&#039;&#039;&#039;There is no perfect security on the Web!&#039;&#039;&#039; As economists would say, &amp;quot;There&#039;s no free lunch.&amp;quot; Don&#039;t be fooled by Joomla&#039;s award winning ease-of-use. Maintaining a secure Web site on the open Internet is not easy. Maintaining adequate security requires a wide and ever-growing range of skills and knowledge, constant watchfulness, and a robust backup and recovery process.&lt;br /&gt;
#&#039;&#039;&#039;There&#039;s no one right way!&#039;&#039;&#039; Due to the variety and complexity of modern web systems, security issues can&#039;t be resolved with simple, one-size-fits-all solutions. You (or someone you trust) must learn enough about your server infrastructure to make valid security decisions. Strong security is a moving target. Today&#039;s expert might be tomorrow&#039;s victim. Welcome to the game...&lt;br /&gt;
#&#039;&#039;&#039;There&#039;s no substitute for experience!&#039;&#039;&#039; To secure your Web site, you must gain real experience (some of which will be bitter), or get experienced help from others. If you haven&#039;t invested the considerable time it takes to learn how to maintain a secure Web site, be sure you can consult with someone who has. Read this tongue-in-cheek description of the [[Top_10_Stupidest_Administrator_Tricks|Top 10 Stupidest Administrator Tricks]] which illustrates typical, blow-by-blow examples of how to learn Web security the hard way.&lt;br /&gt;
&lt;br /&gt;
=== The good news === &lt;br /&gt;
&lt;br /&gt;
#&#039;&#039;&#039;Even a beginner can start at the head of the herd&#039;&#039;&#039; User forums for many systems are clogged with [http://www.google.com/search?q=Help!+I&#039;ve+been+hacked Help! I&#039;ve been hacked] posts by people who did NOT follow standard security practices. If you are studying this checklist before your site is attacked, congratulations, you&#039;re already ahead of the herd.&lt;br /&gt;
#&#039;&#039;&#039;It&#039;s not as hard as it looks&#039;&#039;&#039; If this is one of your first websites, security issues may seem overwhelming, but you don&#039;t have to deal with all of them at once. Start with the most critical issues. As you become more familiar with [http://www.gnu.org GNU] tools and techniques, including [http://www.gnu.org/ GNU/Linux], [http://www.apache.org Apache], [http://www.mysql.com MySQL], [http://en.wikipedia.org/wiki/SQL SQL], [http://www.php.net PHP], [http://en.wikipedia.org/wiki/HTTP HTTP], [http://en.wikipedia.org/wiki/CSS CSS], [http://en.wikipedia.org/wiki/XML XML], [http://en.wikipedia.org/wiki/RSS RSS], [http://en.wikipedia.org/wiki/TCP/IP TCP/IP], [http://en.wikipedia.org/wiki/FTP FTP], [http://subversion.tigris.org/ Subversion], [http://en.wikipedia.org/wiki/JavaScript JavaScript], and [http://www.joomla.org Joomla!], you&#039;ll add refinements to your set of security tactics.&lt;br /&gt;
#&#039;&#039;&#039;You can get help&#039;&#039;&#039; If you believe your website was attacked, &#039;&#039;&#039;do not&#039;&#039;&#039; simply post an announcement with full details in the Joomla! forums. If you are dealing with a new vulnerability or new form of attack, publishing that information could put other websites at risk. Instead, report possible security vulnerabilities to the [http://developer.joomla.org/security Joomla! Security Task Force].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- KEEP THIS AT THE END OF THE PAGE --&amp;gt;&lt;br /&gt;
[[Category:Security Checklist]]&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=Security_Checklist/Joomla!_Setup&amp;diff=115446</id>
		<title>Security Checklist/Joomla! Setup</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=Security_Checklist/Joomla!_Setup&amp;diff=115446"/>
		<updated>2014-03-14T13:34:48Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: /* Protect directories and files */  removed advice to move config file as according to docs not good advice nowadays&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{:Security Checklist/TOC}}&lt;br /&gt;
== Configuring Joomla!==&lt;br /&gt;
&lt;br /&gt;
===Install official versions of Joomla!===&lt;br /&gt;
: To avoid breaking your site, search the forums for reports of incompatible extensions before upgrading to a new version of Joomla.&lt;br /&gt;
&lt;br /&gt;
: Upgrade to the [http://www.joomla.org/download.html latest stable version of Joomla!] as soon as possible. &lt;br /&gt;
&lt;br /&gt;
: Download Joomla! from official sites only, such as [http://joomlacode.org/ JoomlaCode.org], and check the [http://docs.joomla.org/How_to_determine_a_package_checksum MD5 hash].&lt;br /&gt;
&lt;br /&gt;
: Use [http://extensions.joomla.org/component/option,com_mtree/task,viewlink/link_id,1146/Itemid,35/ Joomla Diagnostics] to ensure that all files were installed correctly. (Note: the version of Joomla Diagnostics made for the initial release of 1.5 does not work for 1.5.3.)&lt;br /&gt;
&lt;br /&gt;
Note to editors: This extension has been unpublished for the following reason: UR8-Copyright Violations&lt;br /&gt;
&lt;br /&gt;
===Change the default administrator username===&lt;br /&gt;
: Change the user name of the default admin user. This simple step effectively increases the security of this critical account 50% by modifying one of the two variables attackers must know to gain access. The password is the other variable. Change it early and often. &#039;&#039;&#039;([[Security_and_Performance_FAQs#Why_should_I_immediately_change_the_name_of_the_default_admin_user_after_a_new_install.3F|FAQ]])&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Protect directories and files===&lt;br /&gt;
: Ensure that all configurable paths to writable or uploadable directories (document repositories, image galleries, caches) are outside of public_html. Check third party extensions such as DOCMan and Gallery2 for editable paths to writable directories. &lt;br /&gt;
&lt;br /&gt;
: {{JVer|1.5}}{{JVer|2.5}}{{JVer|3.x}} In the Back-End Global Configuration, change the log path. Some extensions use the built in JLog class. This will, by default write logs to http://yousite/logs. Change this to a place that a casual browser cannot find (and don&#039;t pick /tmp/), or lock it down with http authentication. Because we are dealing with Open Source software, attackers can read the code of third-party extensions and may be able to guess log file names.&lt;br /&gt;
&lt;br /&gt;
: {{JVer|1.5}}{{JVer|2.5}}{{JVer|3.x}} In the Back-End Global Configuration, change the temp folder path.&lt;br /&gt;
&lt;br /&gt;
: If the log and temp paths are changed and PHP &#039;&#039;open_basedir&#039;&#039; configuration directive is set, make sure that the new paths fall within the scope of &#039;&#039;open_basedir&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
: There is currently no easy way to move the Joomla! /image and /media directories. This is because thousands of third party extensions expect to find these important directories at the current location. The best plan is to make sure open_basedir is properly set for all the user accounts on your server. Check with your host if unsure.&lt;br /&gt;
&lt;br /&gt;
===Adjust file and directory permissions===&lt;br /&gt;
&#039;&#039;&#039;This option no longer appears in Joomla.&#039;&#039;&#039;&lt;br /&gt;
On Older versions of Joomla : Once your site is configured and stable, write-protect critical directories and files by changing directory permissions to 755, and file permissions to 644. There is a feature in Site --&amp;gt; Global Configuration --&amp;gt; Server to set all folder and file permissions at once. Test third party extensions afterwards, and carefully review the code of any extension that has trouble with such settings. Note: Depending on your server&#039;s permissions, you may need to temporarily reset to more open permissions when installing more extensions with the Joomla! installer.&lt;br /&gt;
&#039;&#039;&#039;This option no longer appears in Joomla.&#039;&#039;&#039; but is included for historical purposes.&lt;br /&gt;
&lt;br /&gt;
===Remove unneeded files ===&lt;br /&gt;
: Remove all design templates not needed by your site. Never put security logic into template files.&lt;br /&gt;
&lt;br /&gt;
: {{JVer|1.5}} Disable the XML-RPC server if you don&#039;t need it.&lt;br /&gt;
&lt;br /&gt;
: Clean up after installs. The installation process will require you to delete the installation directory and all its contents. Do this; do not simply rename it. If you upload files to your site as compressed archives (xxxx.zip for example), don&#039;t forget to remove the compressed file. Check the /temp/ directory as temporary files may remain there after a failed installation attempt.&lt;br /&gt;
&lt;br /&gt;
: In general, do not leave any unneeded files (compressed or otherwise) on a public server. Each unused (and perhaps long forgotten) file is a potential security hole.&lt;br /&gt;
&lt;br /&gt;
===Turn Register Globals Emulation OFF===&lt;br /&gt;
&lt;br /&gt;
: {{JVer|1.0}} Turn Joomla&#039;s Register Globals Emulation OFF. Although this setting is somewhat safer than PHP register_globals, you are much better off avoiding such settings all together (as well as any applications that require them). On pre-1.0.13 versions of Joomla, this setting is found in the globals.php file. As of version 1.0.13, it can be turned off in the Back-end, under Global Settings. &lt;br /&gt;
&lt;br /&gt;
: {{JVer|1.5}}{{JVer|2.5}}{{JVer|3.x}} Joomla 1.5 and greater, does not use register globals, and in fact has smart code to defeat this setting even if it&#039;s turned on at the PHP level. Note that although this makes Joomla itself safer, any server with register globals turned on is potentially vulnerable. Any shared server with register globals turned on is more than likely a sitting duck. Any hosting provider that insists register globals should be turned on is ignorant, incompetent, or worse. Was that blunt enough?&lt;br /&gt;
&lt;br /&gt;
: For more information on register_globals, please see [[Security_Checklist_2_-_Hosting_and_Server_Setup#Don.27t_use_PHP_register_globals|Security Checklist: PHP: register_globals]].&lt;br /&gt;
&lt;br /&gt;
== Installing Joomla! Extensions ==&lt;br /&gt;
&lt;br /&gt;
===Backup before installing ===&lt;br /&gt;
: Before installing extensions, always backup your site&#039;s files and database. This follows a very basic principle: &lt;br /&gt;
&lt;br /&gt;
: &#039;&#039;&#039;&#039;&#039;Thou shalt at all times be able to return your site to a previous working state.&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
: Therefore, it&#039;s smart to set up a simple and fast backup script to automate this task. If you don&#039;t set up an easy process in advance, you&#039;ll be sorely tempted to do a quick upgrade without backing up first. This very understandable tendency is however one of the chief causes of premature hair loss, sudden career changes, and even death.&lt;br /&gt;
&lt;br /&gt;
===Check for extension vulnerabilities===&lt;br /&gt;
: Most security vulnerabilities are caused by third party extensions. Before installing extensions, check the Official List of Vulnerable 3rd Party/Non Joomla! Extensions. There&#039;s an entire forum dedicated to vulnerable third part extensions. Subscribe to it.&lt;br /&gt;
&lt;br /&gt;
===Download from trusted sites=== &lt;br /&gt;
: The fully qualified and official definition of a &amp;quot;trusted site&amp;quot; is one that &#039;&#039;&#039;YOU&#039;&#039;&#039; trust.&lt;br /&gt;
&lt;br /&gt;
===User beware! Check the code quality===&lt;br /&gt;
: Third party extensions come in all flavors of quality and age. Although Joomla! coding standards exist, third party developers are not required to follow them. Extensions listed on the official Joomla! site are not reviewed for compliance, however if verified vulnerabilities are reported, they will be removed from the list until they are fixed.&lt;br /&gt;
&lt;br /&gt;
===Test, test, test...===&lt;br /&gt;
: Test all extensions on a development site before installing on a production site. Then test on the production site. Don&#039;t forget to check the logs for runtime errors and warnings.&lt;br /&gt;
&lt;br /&gt;
===Remove junk files===&lt;br /&gt;
: Remove all unused extensions and double check that related folders and files were actually removed by uninstall scripts. Note that during uninstall, many third party extensions will leave related files on your site, and related database tables complete with data. This is either a feature or a bug depending on your point of view. Any files left on your server remain accessible from the Web via direct URLs, such as http://yousite.com/modules/bad_module.&lt;br /&gt;
&lt;br /&gt;
===Avoid encrypted code===&lt;br /&gt;
: Joomla is (and despite disinformation campaigns, always has been) a GNU GPL project. This means that all extensions to Joomla must also be free (as in freedom) and open (as in readable code). Encrypted code may be safe, but you can&#039;t determine this for yourself, and so you must trust the developers. Using others&#039; encrypted code puts you back in the world of proprietary software where you must wait for security patches from the developer, hoping that attackers don&#039;t find your site first before a fix is released.&lt;br /&gt;
&lt;br /&gt;
: You are often not free to modify, improve, or share encrypted code. These restrictions make encrypted code less valuable to the community as a whole, and reduce the overall viability of the Joomla project which depends on open sharing among all participants.&lt;br /&gt;
&lt;br /&gt;
: Of course, code that is not distributed to others is exempt from GNU GPL distribution requirements. Thus you can encrypt Joomla-related code on your own servers, providing you do not share it with others.&lt;br /&gt;
&lt;br /&gt;
==Additional Joomla! Hardening Tips and Tricks ==&lt;br /&gt;
&lt;br /&gt;
===Avoid shared servers if possible===&lt;br /&gt;
: For maximum security, avoid a shared server on which you don&#039;t know or can&#039;t trust all the other users or their code quality.&lt;br /&gt;
&lt;br /&gt;
===Use an SSL server===&lt;br /&gt;
&#039;&#039;This has more to do with secure payments and administration, and is not Joomla! core or server security, but has been included here for advisory purposes.&lt;br /&gt;
&#039;&#039;&lt;br /&gt;
: SSL servers are currently the only way to securely process confidential transactions and secure user authentication. SSL works by encrypting all HTTP communications between the Web server and Web clients. Thus, even if a transmission is intercepted, it cannot be read. &lt;br /&gt;
&lt;br /&gt;
: Joomla! 1.0.x does not allow you to assign an SSL server to individual sub-directories. Search the forums for &amp;quot;Tommy Hack&amp;quot; for one way to deal with this. Joomla! 1.5 has greatly improved SSL options.&lt;br /&gt;
&lt;br /&gt;
===Use Apache&#039;s .htaccess===&lt;br /&gt;
: For an additional layer of password protection, you can use .htaccess to password protect critical  directories. This is usually adequate for blocking the typical script kiddie, but be aware that .htaccess password protection alone is not a highly secure method. It MUST be combined with an SSL server for maximum protection. An SSL server is required for protecting your site from more sophisticated attacks, such as packet sniffing.&lt;br /&gt;
&lt;br /&gt;
===Switch to Joomla! 1.5 or newer===&lt;br /&gt;
{{JVer|1.0}} The most significant upgrade in Joomla!&#039;s history includes powerful security and performance enhancements.&lt;br /&gt;
* [http://www.joomla.org/content/view/4483/118/ Joomla 1.5 Overview]&lt;br /&gt;
* [http://joomlacode.org/gf/project/joomla/frs/?action=index Joomla Downloads]&lt;br /&gt;
&lt;br /&gt;
=== Add Joomla! Security Announcements to your site ===&lt;br /&gt;
: The Joomla! Security Team supports and RSS feed that provides the latest Joomla security information. The following FAQ explains how to add this feed to your site.&lt;br /&gt;
&lt;br /&gt;
* [http://docs.joomla.org/Security_and_Performance_FAQs#How_can_I_add_the_Joomla.21_Security_Announcements_Feed_to_the_Admin_Control_Panel.3F How can I add the Joomla! Security Announcements Feed to the Admin Control Panel?]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- KEEP THIS AT THE END OF THE PAGE --&amp;gt;&lt;br /&gt;
[[Category:Security Checklist]]&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=File:IPrestrictionIIS.jpg&amp;diff=60671</id>
		<title>File:IPrestrictionIIS.jpg</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=File:IPrestrictionIIS.jpg&amp;diff=60671"/>
		<updated>2011-07-13T13:00:10Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: IIS 7.5 screenshot for IP restriction&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;IIS 7.5 screenshot for IP restriction&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=IIS&amp;diff=60670</id>
		<title>IIS</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=IIS&amp;diff=60670"/>
		<updated>2011-07-13T12:58:22Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: /* Restricting access to the backend by IP address */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Whilst IIS (Internet Information Services, a Microsoft web server) accounts for relatively few users, compared to Apache, there are enough to warrant providing information which is unique.&lt;br /&gt;
&lt;br /&gt;
PHP can run on IIS, so a Joomla! web site also can run on IIS.&lt;br /&gt;
&lt;br /&gt;
The PHP.net website should be referenced, regarding the installation of PHP on Windows and the configuraiton of IIS to process PHP webpages and scripts.&lt;br /&gt;
&lt;br /&gt;
To get started, here are some helpful links for developers who want to install PHP and Joomla! on IIS.&lt;br /&gt;
&lt;br /&gt;
* Install Joomla for Windows and IIS using the Web Platform Installer - http://www.microsoft.com/web/joomla &lt;br /&gt;
* PHP on Windows and IIS; building an IIS-optimized PHP - http://www.microsoft.com/web/php&lt;br /&gt;
&lt;br /&gt;
The two most common problems encountered by Joomla! admins whose sites are on IIS webservers are:&lt;br /&gt;
* Setting the website&#039;s directory/filesystem permissions correctly&lt;br /&gt;
* Enabling SEF URLs&lt;br /&gt;
&lt;br /&gt;
==Setting the filesystem permissions==&lt;br /&gt;
&lt;br /&gt;
===Conceptual Overview===&lt;br /&gt;
Windows filesystem permissions are more complex than the 3-level, 3-value Unix-style &amp;lt;code&amp;gt;rw-r--r--&amp;lt;/code&amp;gt; conventions. &lt;br /&gt;
&lt;br /&gt;
Windows servers have a user called &amp;lt;code&amp;gt;IUSR&amp;lt;/code&amp;gt;, which corresponds to the &amp;lt;code&amp;gt;apache&amp;lt;/code&amp;gt; user on many Linux systems. PHP scripts run under the IUSR account.&lt;br /&gt;
&lt;br /&gt;
====Levels====&lt;br /&gt;
A directory or file does have an &amp;lt;code&amp;gt;owner&amp;lt;/code&amp;gt;, and Windows does have &amp;lt;code&amp;gt;group&amp;lt;/code&amp;gt;s, but there is no &amp;lt;code&amp;gt;&amp;quot;everyone else&amp;quot;&amp;lt;/code&amp;gt; under Windows. &lt;br /&gt;
&lt;br /&gt;
There is a group called &amp;lt;code&amp;gt;Users&amp;lt;/code&amp;gt;. This corresponds to all accounts used by human beings to deliberately interact with the server. But accounts for services, system operations, and software user permisions do not belong to that group, and in fact &#039;&#039;&#039;no&#039;&#039;&#039; accounts at all (human or otherwise) have &#039;&#039;&#039;any&#039;&#039;&#039; privileges which aren&#039;t explicitly granted either directly to the user or by membership in some group.&lt;br /&gt;
&lt;br /&gt;
====Values====&lt;br /&gt;
Beyond &amp;lt;code&amp;gt;Read&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;Write&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;Execute&amp;lt;/code&amp;gt;, Windows permissions include additional values. The important ones to know about for a Joomla website are &amp;lt;code&amp;gt;Read&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;Write&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===HowTo configure the permissions===&lt;br /&gt;
When logged in to the Windows server, run Windows Explorer, and navigate to inetpub.&lt;br /&gt;
&lt;br /&gt;
Right-click the directory which holds your Joomla site.&amp;lt;br /&amp;gt;&lt;br /&gt;
Get Properties, tab to Security.&amp;lt;br /&amp;gt;&lt;br /&gt;
Click ADD.&amp;lt;br /&amp;gt;&lt;br /&gt;
Make sure that the LOCATION field is set to the local computer, not a domain controller.&amp;lt;br /&amp;gt;&lt;br /&gt;
Type iis_iusrs into the field for identifying the user/group you are granting access to.&amp;lt;br /&amp;gt;&lt;br /&gt;
Confirm.&amp;lt;br /&amp;gt;&lt;br /&gt;
Highlight the iis_iusrs entry in the access control list.&amp;lt;br /&amp;gt;&lt;br /&gt;
Check the boxes for Read &amp;amp; Execute, List Folder Contents, Read, and Write&amp;lt;br /&amp;gt;&lt;br /&gt;
Confirm, put the security window away now.&amp;lt;br /&amp;gt;&lt;br /&gt;
Open Start -. Administrator -&amp;gt; Computer Management.&amp;lt;br /&amp;gt;&lt;br /&gt;
Navigate to Local Users and Groups -&amp;gt; Groups.&amp;lt;br /&amp;gt;&lt;br /&gt;
Find or create the group iis_iusrs&amp;lt;br /&amp;gt;&lt;br /&gt;
Add a member to the group:&amp;lt;br /&amp;gt;&lt;br /&gt;
again, make sure that the LOCATION field is set to the local computer, not a domain controller.&amp;lt;br /&amp;gt;&lt;br /&gt;
Type IUSR into the field for identifying the user/group you are granting access to.&amp;lt;br /&amp;gt;&lt;br /&gt;
Confirm.&amp;lt;br /&amp;gt;&lt;br /&gt;
Save.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Run the Joomla installer again, and enjoy your PHP user&#039;s write privileges in your website folder.&lt;br /&gt;
&lt;br /&gt;
==[[Restricting access to the backend by IP address]]==&lt;br /&gt;
&lt;br /&gt;
You can utilise server based IP protection.&lt;br /&gt;
If you&#039;re running IIS 7.5 on Windows Server 2008, you can use the IP and&lt;br /&gt;
Domain Security option. Go to the Server Manager MMC panel and select&lt;br /&gt;
&amp;quot;Roles&amp;quot; and then &amp;quot;Web Server (IIS). From here select &amp;quot;Add Role Services&amp;quot; and&lt;br /&gt;
in the window that pops up, scroll down to security and select the &amp;quot;IP And&lt;br /&gt;
Domain Security Option&amp;quot; (see screenshot below)&lt;br /&gt;
[[File:IPrestrictionIIS.jpg]]&lt;br /&gt;
and then hit next to install.&lt;br /&gt;
Once you&#039;ve got it installed, open up the IIS Manager MMC panel (if you have&lt;br /&gt;
it open already, you will need to restart it for the appropriate panel to&lt;br /&gt;
appear; this also means the server manager one might not be useful to you)&lt;br /&gt;
and navigate down to the administrator directory of the site. Click on the&lt;br /&gt;
&amp;quot;IPv4 Address and Domain Restrictions&amp;quot;. You can change the default behaviour&lt;br /&gt;
by clicking &amp;quot;Edit Feature Settings&amp;quot; and setting the default value for&lt;br /&gt;
unspecified clients to deny. Then add allow entries for your trusted IP&lt;br /&gt;
addresses or subnets.&lt;br /&gt;
Check out the following article for details as well:&lt;br /&gt;
[[http://www.iis.net/ConfigReference/system.webServer/security/ipSecurity]]&lt;br /&gt;
(thanks to Sam Moffat for above info)&lt;br /&gt;
&lt;br /&gt;
==[[Search Engine Friendly URLs]]==&lt;br /&gt;
The functioning of SEF URLs depends on &amp;quot;URL rewriting&amp;quot; - matching patterns in incoming HTTP requests, and passing the request to the webserver in a different format. Joomla can only understand the parameters present in the &amp;quot;ugly&amp;quot; request, so the human-readable path in the incoming HTTP request needs to be re-written for Joomla.&lt;br /&gt;
&lt;br /&gt;
===Apache&#039;s mod_rewrite===&lt;br /&gt;
&amp;lt;code&amp;gt;mod_rewrite&amp;lt;/code&amp;gt; is the familiar way by which many webmasters translate nice human-readable, spider-friendly URL requests like &amp;lt;code&amp;gt;/about_us/contact_information&amp;lt;/code&amp;gt; into the &amp;quot;ugly&amp;quot; internal server path like &amp;lt;code&amp;gt;/index.php?option=com_content&amp;amp;view=article&amp;amp;id=999&amp;amp;Itemid=23&amp;lt;/code&amp;gt; that makes Joomla serve up some content. A text file called .htaccess contains the rewrite rules, which are written according to a specific syntax.&lt;br /&gt;
&lt;br /&gt;
===IIS===&lt;br /&gt;
Before Windows Server 2008 and IIS7, only third-party add-ons could add URL rewriting functionality to an IIS webserver. For servers today still running IIS6 or earlier, these are still available. CodePlex is a website and code-sharing developer forge associated with Microsoft, and it hosts at least two good-quality URL rewrite solutions for IIS6. At least one of these modules will parse and execute the same rewrite rules which work in Apache .htaccess files.&lt;br /&gt;
&lt;br /&gt;
Windows Server 2008 comes with IIS7, which is the first webserver for which Microsoft provides a native module which provides URL rewriting functionality.&lt;br /&gt;
&lt;br /&gt;
The module is called &amp;quot;IIS URL Rewrite Module&amp;quot; and is free to download and install on your IIS7 webserver.&lt;br /&gt;
&lt;br /&gt;
The IIS7 module configures and stores its rules in a very different way than the format Apache provides via .htaccess. The rules are stored as XML data in the web.config file in a website&#039;s root. The IIS Management Console provides a GUI and wizard for creating and testing rules. The wizard is capable of reading a text file with .htaccess-type rules and converting them to the native format.&lt;br /&gt;
&lt;br /&gt;
See [[Enabling Search Engine Friendly (SEF) URLs on IIS]] for instructions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;[[Category:IIS]][[Category:FAQ]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=IIS&amp;diff=60669</id>
		<title>IIS</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=IIS&amp;diff=60669"/>
		<updated>2011-07-13T12:53:45Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: Added: Restricting access to the backend by IP address&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Whilst IIS (Internet Information Services, a Microsoft web server) accounts for relatively few users, compared to Apache, there are enough to warrant providing information which is unique.&lt;br /&gt;
&lt;br /&gt;
PHP can run on IIS, so a Joomla! web site also can run on IIS.&lt;br /&gt;
&lt;br /&gt;
The PHP.net website should be referenced, regarding the installation of PHP on Windows and the configuraiton of IIS to process PHP webpages and scripts.&lt;br /&gt;
&lt;br /&gt;
To get started, here are some helpful links for developers who want to install PHP and Joomla! on IIS.&lt;br /&gt;
&lt;br /&gt;
* Install Joomla for Windows and IIS using the Web Platform Installer - http://www.microsoft.com/web/joomla &lt;br /&gt;
* PHP on Windows and IIS; building an IIS-optimized PHP - http://www.microsoft.com/web/php&lt;br /&gt;
&lt;br /&gt;
The two most common problems encountered by Joomla! admins whose sites are on IIS webservers are:&lt;br /&gt;
* Setting the website&#039;s directory/filesystem permissions correctly&lt;br /&gt;
* Enabling SEF URLs&lt;br /&gt;
&lt;br /&gt;
==Setting the filesystem permissions==&lt;br /&gt;
&lt;br /&gt;
===Conceptual Overview===&lt;br /&gt;
Windows filesystem permissions are more complex than the 3-level, 3-value Unix-style &amp;lt;code&amp;gt;rw-r--r--&amp;lt;/code&amp;gt; conventions. &lt;br /&gt;
&lt;br /&gt;
Windows servers have a user called &amp;lt;code&amp;gt;IUSR&amp;lt;/code&amp;gt;, which corresponds to the &amp;lt;code&amp;gt;apache&amp;lt;/code&amp;gt; user on many Linux systems. PHP scripts run under the IUSR account.&lt;br /&gt;
&lt;br /&gt;
====Levels====&lt;br /&gt;
A directory or file does have an &amp;lt;code&amp;gt;owner&amp;lt;/code&amp;gt;, and Windows does have &amp;lt;code&amp;gt;group&amp;lt;/code&amp;gt;s, but there is no &amp;lt;code&amp;gt;&amp;quot;everyone else&amp;quot;&amp;lt;/code&amp;gt; under Windows. &lt;br /&gt;
&lt;br /&gt;
There is a group called &amp;lt;code&amp;gt;Users&amp;lt;/code&amp;gt;. This corresponds to all accounts used by human beings to deliberately interact with the server. But accounts for services, system operations, and software user permisions do not belong to that group, and in fact &#039;&#039;&#039;no&#039;&#039;&#039; accounts at all (human or otherwise) have &#039;&#039;&#039;any&#039;&#039;&#039; privileges which aren&#039;t explicitly granted either directly to the user or by membership in some group.&lt;br /&gt;
&lt;br /&gt;
====Values====&lt;br /&gt;
Beyond &amp;lt;code&amp;gt;Read&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;Write&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;Execute&amp;lt;/code&amp;gt;, Windows permissions include additional values. The important ones to know about for a Joomla website are &amp;lt;code&amp;gt;Read&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;Write&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===HowTo configure the permissions===&lt;br /&gt;
When logged in to the Windows server, run Windows Explorer, and navigate to inetpub.&lt;br /&gt;
&lt;br /&gt;
Right-click the directory which holds your Joomla site.&amp;lt;br /&amp;gt;&lt;br /&gt;
Get Properties, tab to Security.&amp;lt;br /&amp;gt;&lt;br /&gt;
Click ADD.&amp;lt;br /&amp;gt;&lt;br /&gt;
Make sure that the LOCATION field is set to the local computer, not a domain controller.&amp;lt;br /&amp;gt;&lt;br /&gt;
Type iis_iusrs into the field for identifying the user/group you are granting access to.&amp;lt;br /&amp;gt;&lt;br /&gt;
Confirm.&amp;lt;br /&amp;gt;&lt;br /&gt;
Highlight the iis_iusrs entry in the access control list.&amp;lt;br /&amp;gt;&lt;br /&gt;
Check the boxes for Read &amp;amp; Execute, List Folder Contents, Read, and Write&amp;lt;br /&amp;gt;&lt;br /&gt;
Confirm, put the security window away now.&amp;lt;br /&amp;gt;&lt;br /&gt;
Open Start -. Administrator -&amp;gt; Computer Management.&amp;lt;br /&amp;gt;&lt;br /&gt;
Navigate to Local Users and Groups -&amp;gt; Groups.&amp;lt;br /&amp;gt;&lt;br /&gt;
Find or create the group iis_iusrs&amp;lt;br /&amp;gt;&lt;br /&gt;
Add a member to the group:&amp;lt;br /&amp;gt;&lt;br /&gt;
again, make sure that the LOCATION field is set to the local computer, not a domain controller.&amp;lt;br /&amp;gt;&lt;br /&gt;
Type IUSR into the field for identifying the user/group you are granting access to.&amp;lt;br /&amp;gt;&lt;br /&gt;
Confirm.&amp;lt;br /&amp;gt;&lt;br /&gt;
Save.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Run the Joomla installer again, and enjoy your PHP user&#039;s write privileges in your website folder.&lt;br /&gt;
&lt;br /&gt;
==[[Restricting access to the backend by IP address]]==&lt;br /&gt;
&lt;br /&gt;
You can utilise server based IP protection.&lt;br /&gt;
If you&#039;re running IIS 7.5 on Windows Server 2008, you can use the IP and&lt;br /&gt;
Domain Security option. Go to the Server Manager MMC panel and select&lt;br /&gt;
&amp;quot;Roles&amp;quot; and then &amp;quot;Web Server (IIS). From here select &amp;quot;Add Role Services&amp;quot; and&lt;br /&gt;
in the window that pops up, scroll down to security and select the &amp;quot;IP And&lt;br /&gt;
Domain Security Option&amp;quot; (see screenshot below) and then hit next to install.&lt;br /&gt;
Once you&#039;ve got it installed, open up the IIS Manager MMC panel (if you have&lt;br /&gt;
it open already, you will need to restart it for the appropriate panel to&lt;br /&gt;
appear; this also means the server manager one might not be useful to you)&lt;br /&gt;
and navigate down to the administrator directory of the site. Click on the&lt;br /&gt;
&amp;quot;IPv4 Address and Domain Restrictions&amp;quot;. You can change the default behaviour&lt;br /&gt;
by clicking &amp;quot;Edit Feature Settings&amp;quot; and setting the default value for&lt;br /&gt;
unspecified clients to deny. Then add allow entries for your trusted IP&lt;br /&gt;
addresses or subnets.&lt;br /&gt;
Check out the following article for details as well:&lt;br /&gt;
[[http://www.iis.net/ConfigReference/system.webServer/security/ipSecurity]]&lt;br /&gt;
(thanks to Sam Moffat for above info)&lt;br /&gt;
&lt;br /&gt;
==[[Search Engine Friendly URLs]]==&lt;br /&gt;
The functioning of SEF URLs depends on &amp;quot;URL rewriting&amp;quot; - matching patterns in incoming HTTP requests, and passing the request to the webserver in a different format. Joomla can only understand the parameters present in the &amp;quot;ugly&amp;quot; request, so the human-readable path in the incoming HTTP request needs to be re-written for Joomla.&lt;br /&gt;
&lt;br /&gt;
===Apache&#039;s mod_rewrite===&lt;br /&gt;
&amp;lt;code&amp;gt;mod_rewrite&amp;lt;/code&amp;gt; is the familiar way by which many webmasters translate nice human-readable, spider-friendly URL requests like &amp;lt;code&amp;gt;/about_us/contact_information&amp;lt;/code&amp;gt; into the &amp;quot;ugly&amp;quot; internal server path like &amp;lt;code&amp;gt;/index.php?option=com_content&amp;amp;view=article&amp;amp;id=999&amp;amp;Itemid=23&amp;lt;/code&amp;gt; that makes Joomla serve up some content. A text file called .htaccess contains the rewrite rules, which are written according to a specific syntax.&lt;br /&gt;
&lt;br /&gt;
===IIS===&lt;br /&gt;
Before Windows Server 2008 and IIS7, only third-party add-ons could add URL rewriting functionality to an IIS webserver. For servers today still running IIS6 or earlier, these are still available. CodePlex is a website and code-sharing developer forge associated with Microsoft, and it hosts at least two good-quality URL rewrite solutions for IIS6. At least one of these modules will parse and execute the same rewrite rules which work in Apache .htaccess files.&lt;br /&gt;
&lt;br /&gt;
Windows Server 2008 comes with IIS7, which is the first webserver for which Microsoft provides a native module which provides URL rewriting functionality.&lt;br /&gt;
&lt;br /&gt;
The module is called &amp;quot;IIS URL Rewrite Module&amp;quot; and is free to download and install on your IIS7 webserver.&lt;br /&gt;
&lt;br /&gt;
The IIS7 module configures and stores its rules in a very different way than the format Apache provides via .htaccess. The rules are stored as XML data in the web.config file in a website&#039;s root. The IIS Management Console provides a GUI and wizard for creating and testing rules. The wizard is capable of reading a text file with .htaccess-type rules and converting them to the native format.&lt;br /&gt;
&lt;br /&gt;
See [[Enabling Search Engine Friendly (SEF) URLs on IIS]] for instructions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;[[Category:IIS]][[Category:FAQ]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=Chunk:M16_Search_Engine_Friendly_Joomal_1_6_Article&amp;diff=37289</id>
		<title>Chunk:M16 Search Engine Friendly Joomal 1 6 Article</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=Chunk:M16_Search_Engine_Friendly_Joomal_1_6_Article&amp;diff=37289"/>
		<updated>2011-02-14T16:45:05Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: /* How set up IIS URL Rewriting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==IIS==&lt;br /&gt;
&lt;br /&gt;
(Note: this IIS documentation may not apply to Joomla versions prior to 1.6: so please use the alternative documents which are available if you are not on Joomla 1.6 or above) &lt;br /&gt;
&lt;br /&gt;
The IIS URL Rewrite module stores rules in a site&#039;s web.config file, expressed in XML format.&lt;br /&gt;
You can create the file yourself or use the GUI in the IIS Manager.&lt;br /&gt;
 &lt;br /&gt;
Apache .htaccess rules can be converted to the web.config format. You can import .htaccess rules using the GUI/wizard. For more information on converting .htaccess to web.config see http://learn.iis.net/page.aspx/557/translate-htaccess-content-to-iis-webconfig/&lt;br /&gt;
&lt;br /&gt;
==How set up IIS URL Rewriting==&lt;br /&gt;
&lt;br /&gt;
1) Make sure you are running on a version of IIS supported by your version of Joomla e.g. for Joomla 1.6 at least IIS7&lt;br /&gt;
&lt;br /&gt;
2) Click on Site --&amp;gt; Global Configuration menu to configure SEO Settings: &lt;br /&gt;
&amp;quot;Search Engine Friendly URLs&amp;quot; to &amp;quot;Yes&amp;quot; and&lt;br /&gt;
&amp;quot;Use Apache Mod Rewrite&amp;quot; to &amp;quot;Yes&amp;quot;&lt;br /&gt;
[[Image:IIS_SEO_Settings.png]]&lt;br /&gt;
&lt;br /&gt;
3) In IIS Manager check whether URL Rewrite is already installed&lt;br /&gt;
[[Image:IIS_URL_Rewrite.png]]&lt;br /&gt;
&lt;br /&gt;
4) If it is not then from http://www.iis.net/download/URLRewrite either&lt;br /&gt;
a) Use the Microsoft Web Platform Installer to install IIS7 Recommended Configuration&lt;br /&gt;
or &lt;br /&gt;
b) Download URL Rewrite from the &amp;quot;x86&amp;quot; (if your Windows is 32 bit) or &amp;quot;x64&amp;quot; links and install.&lt;br /&gt;
&lt;br /&gt;
5) Either &lt;br /&gt;
a) Use the IIS &amp;quot;URL Rewrite&amp;quot; pictured above to create your rules (regular expressions, wildcards or exact matches are all supported) e.g.&lt;br /&gt;
&lt;br /&gt;
Pattern field: &#039;&#039;&#039;^([^/]+)/?$&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Ignore case &#039;&#039;&#039;ON&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Action type: &#039;&#039;&#039;Rewrite&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Rewrite URL: &#039;&#039;&#039;index.php/&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
b) If it does not already exist; create and open a web.config file located in the C:\inetpub\wwwroot\joomla directory. Copy in the following code:   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;configuration&amp;gt;&lt;br /&gt;
    &amp;lt;system.webServer&amp;gt;&lt;br /&gt;
        &amp;lt;rewrite&amp;gt;&lt;br /&gt;
            &amp;lt;rules&amp;gt;&lt;br /&gt;
                &amp;lt;clear /&amp;gt;&lt;br /&gt;
                &amp;lt;rule name=&amp;quot;Common Exploit Blocking&amp;quot; stopProcessing=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;match url=&amp;quot;^(.*)$&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;conditions logicalGrouping=&amp;quot;MatchAny&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;mosConfig_[a-zA-Z_]{1,21}(=|\%3D)&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;base64_encode.*\(.*\)&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;(\&amp;amp;lt;|%3C).*script.*(\&amp;gt;|%3E)&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;GLOBALS(=|\[|\%[0-9A-Z]{0,2})&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;_REQUEST(=|\[|\%[0-9A-Z]{0,2})&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;/conditions&amp;gt;&lt;br /&gt;
                    &amp;lt;action type=&amp;quot;Redirect&amp;quot; url=&amp;quot;index.php&amp;quot; appendQueryString=&amp;quot;false&amp;quot; redirectType=&amp;quot;SeeOther&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/rule&amp;gt;&lt;br /&gt;
                &amp;lt;rule name=&amp;quot;Joomla Search Rule&amp;quot; stopProcessing=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;match url=&amp;quot;(.*)&amp;quot; ignoreCase=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;conditions logicalGrouping=&amp;quot;MatchAll&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{URL}&amp;quot; pattern=&amp;quot;^/search.php&amp;quot; ignoreCase=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;/conditions&amp;gt;&lt;br /&gt;
                    &amp;lt;action type=&amp;quot;Rewrite&amp;quot; url=&amp;quot;/index.php?option=com_content&amp;amp;amp;view=article&amp;amp;amp;id=4&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/rule&amp;gt;&lt;br /&gt;
                &amp;lt;rule name=&amp;quot;Joomla Main Rewrite Rule&amp;quot; stopProcessing=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;match url=&amp;quot;(.*)&amp;quot; ignoreCase=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;conditions logicalGrouping=&amp;quot;MatchAll&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{REQUEST_FILENAME}&amp;quot; matchType=&amp;quot;IsFile&amp;quot; negate=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{REQUEST_FILENAME}&amp;quot; matchType=&amp;quot;IsDirectory&amp;quot; negate=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{URL}&amp;quot; pattern=&amp;quot;(/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;/conditions&amp;gt;&lt;br /&gt;
                    &amp;lt;action type=&amp;quot;Rewrite&amp;quot; url=&amp;quot;index.php/&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/rule&amp;gt;&lt;br /&gt;
            &amp;lt;/rules&amp;gt;&lt;br /&gt;
        &amp;lt;/rewrite&amp;gt;&lt;br /&gt;
        &amp;lt;caching&amp;gt;&lt;br /&gt;
            &amp;lt;profiles&amp;gt;&lt;br /&gt;
                &amp;lt;add extension=&amp;quot;.php&amp;quot; policy=&amp;quot;DisableCache&amp;quot; kernelCachePolicy=&amp;quot;DisableCache&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;/profiles&amp;gt;&lt;br /&gt;
        &amp;lt;/caching&amp;gt;&lt;br /&gt;
    &amp;lt;/system.webServer&amp;gt;&lt;br /&gt;
&amp;lt;/configuration&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=File:IIS_SEO_Settings.png&amp;diff=37288</id>
		<title>File:IIS SEO Settings.png</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=File:IIS_SEO_Settings.png&amp;diff=37288"/>
		<updated>2011-02-14T16:35:38Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: Screeenshot showing the settings to turn on SEF when using IIS.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screeenshot showing the settings to turn on SEF when using IIS.&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=File:IIS_URL_Rewrite.png&amp;diff=37287</id>
		<title>File:IIS URL Rewrite.png</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=File:IIS_URL_Rewrite.png&amp;diff=37287"/>
		<updated>2011-02-14T16:33:21Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: Screenshot showing the location of the URL Rewrite icon in IIS Manager.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot showing the location of the URL Rewrite icon in IIS Manager.&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=Chunk:M16_Search_Engine_Friendly_Joomal_1_6_Article&amp;diff=37278</id>
		<title>Chunk:M16 Search Engine Friendly Joomal 1 6 Article</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=Chunk:M16_Search_Engine_Friendly_Joomal_1_6_Article&amp;diff=37278"/>
		<updated>2011-02-14T09:16:52Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: /* How set up IIS URL Rewriting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==IIS==&lt;br /&gt;
&lt;br /&gt;
(Note: this IIS documentation may not apply to Joomla versions prior to 1.6: so please use the alternative documents which are available if you are not on Joomla 1.6 or above) &lt;br /&gt;
&lt;br /&gt;
The IIS URL Rewrite module stores rules in a site&#039;s web.config file, expressed in XML format.&lt;br /&gt;
You can create the file yourself or use the GUI in the IIS Manager.&lt;br /&gt;
 &lt;br /&gt;
Apache .htaccess rules can be converted to the web.config format. You can import .htaccess rules using the GUI/wizard. For more information on converting .htaccess to web.config see http://learn.iis.net/page.aspx/557/translate-htaccess-content-to-iis-webconfig/&lt;br /&gt;
&lt;br /&gt;
==How set up IIS URL Rewriting==&lt;br /&gt;
&lt;br /&gt;
1) Make sure you are running on a version of IIS supported by your version of Joomla e.g. for Joomla 1.6 at least IIS7&lt;br /&gt;
&lt;br /&gt;
2) Click on Site --&amp;gt; Global Configuration menu to configure SEO Settings: &lt;br /&gt;
&amp;quot;Search Engine Friendly URLs&amp;quot; to &amp;quot;Yes&amp;quot; and&lt;br /&gt;
&amp;quot;Use Apache Mod Rewrite&amp;quot; to &amp;quot;Yes&amp;quot;&lt;br /&gt;
(screenshot to be added here)&lt;br /&gt;
&lt;br /&gt;
3) In IIS Manager check whether URL Rewrite is already installed&lt;br /&gt;
(screenshot to be added here)&lt;br /&gt;
&lt;br /&gt;
4) If it is not then from http://www.iis.net/download/URLRewrite either&lt;br /&gt;
  a) Use the Microsoft Web Platform Installer to install IIS7 Recommended Configuration&lt;br /&gt;
or &lt;br /&gt;
  b) Download URL Rewrite from the &amp;quot;x86&amp;quot; (if your Windows is 32 bit) or &amp;quot;x64&amp;quot; links and install.&lt;br /&gt;
&lt;br /&gt;
5) Either &lt;br /&gt;
  a) Use the IIS &amp;quot;URL Rewrite&amp;quot; pictured above to create your rules (regular expressions, wildcards or exact matches are all supported) e.g.&lt;br /&gt;
Pattern field: &#039;&#039;&#039;^([^/]+)/?$&#039;&#039;&#039;&lt;br /&gt;
Ignore case &#039;&#039;&#039;ON&#039;&#039;&#039;&lt;br /&gt;
Action type: &#039;&#039;&#039;Rewrite&#039;&#039;&#039;&lt;br /&gt;
Rewrite URL: &#039;&#039;&#039;index.php/&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
  b) If it does not already exist; create and open a web.config file located in the C:\inetpub\wwwroot\joomla directory. Copy in the following code:   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;configuration&amp;gt;&lt;br /&gt;
    &amp;lt;system.webServer&amp;gt;&lt;br /&gt;
        &amp;lt;rewrite&amp;gt;&lt;br /&gt;
            &amp;lt;rules&amp;gt;&lt;br /&gt;
                &amp;lt;clear /&amp;gt;&lt;br /&gt;
                &amp;lt;rule name=&amp;quot;Common Exploit Blocking&amp;quot; stopProcessing=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;match url=&amp;quot;^(.*)$&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;conditions logicalGrouping=&amp;quot;MatchAny&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;mosConfig_[a-zA-Z_]{1,21}(=|\%3D)&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;base64_encode.*\(.*\)&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;(\&amp;amp;lt;|%3C).*script.*(\&amp;gt;|%3E)&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;GLOBALS(=|\[|\%[0-9A-Z]{0,2})&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;_REQUEST(=|\[|\%[0-9A-Z]{0,2})&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;/conditions&amp;gt;&lt;br /&gt;
                    &amp;lt;action type=&amp;quot;Redirect&amp;quot; url=&amp;quot;index.php&amp;quot; appendQueryString=&amp;quot;false&amp;quot; redirectType=&amp;quot;SeeOther&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/rule&amp;gt;&lt;br /&gt;
                &amp;lt;rule name=&amp;quot;Joomla Search Rule&amp;quot; stopProcessing=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;match url=&amp;quot;(.*)&amp;quot; ignoreCase=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;conditions logicalGrouping=&amp;quot;MatchAll&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{URL}&amp;quot; pattern=&amp;quot;^/search.php&amp;quot; ignoreCase=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;/conditions&amp;gt;&lt;br /&gt;
                    &amp;lt;action type=&amp;quot;Rewrite&amp;quot; url=&amp;quot;/index.php?option=com_content&amp;amp;amp;view=article&amp;amp;amp;id=4&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/rule&amp;gt;&lt;br /&gt;
                &amp;lt;rule name=&amp;quot;Joomla Main Rewrite Rule&amp;quot; stopProcessing=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;match url=&amp;quot;(.*)&amp;quot; ignoreCase=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;conditions logicalGrouping=&amp;quot;MatchAll&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{REQUEST_FILENAME}&amp;quot; matchType=&amp;quot;IsFile&amp;quot; negate=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{REQUEST_FILENAME}&amp;quot; matchType=&amp;quot;IsDirectory&amp;quot; negate=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{URL}&amp;quot; pattern=&amp;quot;(/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;/conditions&amp;gt;&lt;br /&gt;
                    &amp;lt;action type=&amp;quot;Rewrite&amp;quot; url=&amp;quot;index.php/&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/rule&amp;gt;&lt;br /&gt;
            &amp;lt;/rules&amp;gt;&lt;br /&gt;
        &amp;lt;/rewrite&amp;gt;&lt;br /&gt;
        &amp;lt;caching&amp;gt;&lt;br /&gt;
            &amp;lt;profiles&amp;gt;&lt;br /&gt;
                &amp;lt;add extension=&amp;quot;.php&amp;quot; policy=&amp;quot;DisableCache&amp;quot; kernelCachePolicy=&amp;quot;DisableCache&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;/profiles&amp;gt;&lt;br /&gt;
        &amp;lt;/caching&amp;gt;&lt;br /&gt;
    &amp;lt;/system.webServer&amp;gt;&lt;br /&gt;
&amp;lt;/configuration&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=Chunk:M16_Search_Engine_Friendly_Joomal_1_6_Article&amp;diff=37277</id>
		<title>Chunk:M16 Search Engine Friendly Joomal 1 6 Article</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=Chunk:M16_Search_Engine_Friendly_Joomal_1_6_Article&amp;diff=37277"/>
		<updated>2011-02-14T09:16:12Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: /* How set up IIS URL Rewriting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==IIS==&lt;br /&gt;
&lt;br /&gt;
(Note: this IIS documentation may not apply to Joomla versions prior to 1.6: so please use the alternative documents which are available if you are not on Joomla 1.6 or above) &lt;br /&gt;
&lt;br /&gt;
The IIS URL Rewrite module stores rules in a site&#039;s web.config file, expressed in XML format.&lt;br /&gt;
You can create the file yourself or use the GUI in the IIS Manager.&lt;br /&gt;
 &lt;br /&gt;
Apache .htaccess rules can be converted to the web.config format. You can import .htaccess rules using the GUI/wizard. For more information on converting .htaccess to web.config see http://learn.iis.net/page.aspx/557/translate-htaccess-content-to-iis-webconfig/&lt;br /&gt;
&lt;br /&gt;
==How set up IIS URL Rewriting==&lt;br /&gt;
&lt;br /&gt;
1) Make sure you are running on a version of IIS supported by your version of Joomla e.g. for Joomla 1.6 at least IIS7&lt;br /&gt;
&lt;br /&gt;
2) Click on Site --&amp;gt; Global Configuration menu to configure SEO Settings: &lt;br /&gt;
&amp;quot;Search Engine Friendly URLs&amp;quot; to &amp;quot;Yes&amp;quot;&lt;br /&gt;
&amp;quot;Use Apache Mod Rewrite&amp;quot; to &amp;quot;Yes&amp;quot;&lt;br /&gt;
(screenshot to be added here)&lt;br /&gt;
&lt;br /&gt;
3) In IIS Manager check whether URL Rewrite is already installed&lt;br /&gt;
(screenshot to be added here)&lt;br /&gt;
&lt;br /&gt;
4) If it is not then from http://www.iis.net/download/URLRewrite either&lt;br /&gt;
  a) Use the Microsoft Web Platform Installer to install IIS7 Recommended Configuration&lt;br /&gt;
or &lt;br /&gt;
  b) Download URL Rewrite from the &amp;quot;x86&amp;quot; (if your Windows is 32 bit) or &amp;quot;x64&amp;quot; links and install.&lt;br /&gt;
&lt;br /&gt;
5) Either &lt;br /&gt;
  a) Use the IIS &amp;quot;URL Rewrite&amp;quot; pictured above to create your rules (regular expressions, wildcards or exact matches are all supported) e.g.&lt;br /&gt;
Pattern field: &#039;&#039;&#039;^([^/]+)/?$&#039;&#039;&#039;&lt;br /&gt;
Ignore case &#039;&#039;&#039;ON&#039;&#039;&#039;&lt;br /&gt;
Action type: &#039;&#039;&#039;Rewrite&#039;&#039;&#039;&lt;br /&gt;
Rewrite URL: &#039;&#039;&#039;index.php/&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
  b) If it does not already exist; create and open a web.config file located in the C:\inetpub\wwwroot\joomla directory. Copy in the following code:   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;configuration&amp;gt;&lt;br /&gt;
    &amp;lt;system.webServer&amp;gt;&lt;br /&gt;
        &amp;lt;rewrite&amp;gt;&lt;br /&gt;
            &amp;lt;rules&amp;gt;&lt;br /&gt;
                &amp;lt;clear /&amp;gt;&lt;br /&gt;
                &amp;lt;rule name=&amp;quot;Common Exploit Blocking&amp;quot; stopProcessing=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;match url=&amp;quot;^(.*)$&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;conditions logicalGrouping=&amp;quot;MatchAny&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;mosConfig_[a-zA-Z_]{1,21}(=|\%3D)&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;base64_encode.*\(.*\)&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;(\&amp;amp;lt;|%3C).*script.*(\&amp;gt;|%3E)&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;GLOBALS(=|\[|\%[0-9A-Z]{0,2})&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;_REQUEST(=|\[|\%[0-9A-Z]{0,2})&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;/conditions&amp;gt;&lt;br /&gt;
                    &amp;lt;action type=&amp;quot;Redirect&amp;quot; url=&amp;quot;index.php&amp;quot; appendQueryString=&amp;quot;false&amp;quot; redirectType=&amp;quot;SeeOther&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/rule&amp;gt;&lt;br /&gt;
                &amp;lt;rule name=&amp;quot;Joomla Search Rule&amp;quot; stopProcessing=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;match url=&amp;quot;(.*)&amp;quot; ignoreCase=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;conditions logicalGrouping=&amp;quot;MatchAll&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{URL}&amp;quot; pattern=&amp;quot;^/search.php&amp;quot; ignoreCase=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;/conditions&amp;gt;&lt;br /&gt;
                    &amp;lt;action type=&amp;quot;Rewrite&amp;quot; url=&amp;quot;/index.php?option=com_content&amp;amp;amp;view=article&amp;amp;amp;id=4&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/rule&amp;gt;&lt;br /&gt;
                &amp;lt;rule name=&amp;quot;Joomla Main Rewrite Rule&amp;quot; stopProcessing=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;match url=&amp;quot;(.*)&amp;quot; ignoreCase=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;conditions logicalGrouping=&amp;quot;MatchAll&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{REQUEST_FILENAME}&amp;quot; matchType=&amp;quot;IsFile&amp;quot; negate=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{REQUEST_FILENAME}&amp;quot; matchType=&amp;quot;IsDirectory&amp;quot; negate=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{URL}&amp;quot; pattern=&amp;quot;(/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;/conditions&amp;gt;&lt;br /&gt;
                    &amp;lt;action type=&amp;quot;Rewrite&amp;quot; url=&amp;quot;index.php/&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/rule&amp;gt;&lt;br /&gt;
            &amp;lt;/rules&amp;gt;&lt;br /&gt;
        &amp;lt;/rewrite&amp;gt;&lt;br /&gt;
        &amp;lt;caching&amp;gt;&lt;br /&gt;
            &amp;lt;profiles&amp;gt;&lt;br /&gt;
                &amp;lt;add extension=&amp;quot;.php&amp;quot; policy=&amp;quot;DisableCache&amp;quot; kernelCachePolicy=&amp;quot;DisableCache&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;/profiles&amp;gt;&lt;br /&gt;
        &amp;lt;/caching&amp;gt;&lt;br /&gt;
    &amp;lt;/system.webServer&amp;gt;&lt;br /&gt;
&amp;lt;/configuration&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=Chunk:M16_Search_Engine_Friendly_Joomal_1_6_Article&amp;diff=37276</id>
		<title>Chunk:M16 Search Engine Friendly Joomal 1 6 Article</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=Chunk:M16_Search_Engine_Friendly_Joomal_1_6_Article&amp;diff=37276"/>
		<updated>2011-02-14T09:15:41Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: /* How set up IIS URL Rewriting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==IIS==&lt;br /&gt;
&lt;br /&gt;
(Note: this IIS documentation may not apply to Joomla versions prior to 1.6: so please use the alternative documents which are available if you are not on Joomla 1.6 or above) &lt;br /&gt;
&lt;br /&gt;
The IIS URL Rewrite module stores rules in a site&#039;s web.config file, expressed in XML format.&lt;br /&gt;
You can create the file yourself or use the GUI in the IIS Manager.&lt;br /&gt;
 &lt;br /&gt;
Apache .htaccess rules can be converted to the web.config format. You can import .htaccess rules using the GUI/wizard. For more information on converting .htaccess to web.config see http://learn.iis.net/page.aspx/557/translate-htaccess-content-to-iis-webconfig/&lt;br /&gt;
&lt;br /&gt;
==How set up IIS URL Rewriting==&lt;br /&gt;
&lt;br /&gt;
1) Make sure you are running on a version of IIS supported by your version of Joomla e.g. for Joomla 1.6 at least IIS7&lt;br /&gt;
&lt;br /&gt;
2) Click on Site --&amp;gt; Global Configuration menu to configure SEO Settings: &lt;br /&gt;
&amp;quot;Search Engine Friendly URLs&amp;quot; to &amp;quot;Yes&amp;quot;&lt;br /&gt;
éUse Apache Mod Rewrite&amp;quot; to &amp;quot;Yes&amp;quot;&lt;br /&gt;
(screenshot to be added here)&lt;br /&gt;
&lt;br /&gt;
3) In IIS Manager check whether URL Rewrite is already installed&lt;br /&gt;
(screenshot to be added here)&lt;br /&gt;
&lt;br /&gt;
4) If it is not then from http://www.iis.net/download/URLRewrite either&lt;br /&gt;
  a) Use the Microsoft Web Platform Installer to install IIS7 Recommended Configuration&lt;br /&gt;
or &lt;br /&gt;
  b) Download URL Rewrite from the &amp;quot;x86&amp;quot; (if your Windows is 32 bit) or &amp;quot;x64&amp;quot; links and install.&lt;br /&gt;
&lt;br /&gt;
5) Either &lt;br /&gt;
  a) Use the IIS &amp;quot;URL Rewrite&amp;quot; pictured above to create your rules (regular expressions, wildcards or exact matches are all supported) e.g.&lt;br /&gt;
Pattern field: &#039;&#039;&#039;^([^/]+)/?$&#039;&#039;&#039;&lt;br /&gt;
Ignore case &#039;&#039;&#039;ON&#039;&#039;&#039;&lt;br /&gt;
Action type: &#039;&#039;&#039;Rewrite&#039;&#039;&#039;&lt;br /&gt;
Rewrite URL: &#039;&#039;&#039;index.php/&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
  b) If it does not already exist; create and open a web.config file located in the C:\inetpub\wwwroot\joomla directory. Copy in the following code:   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;configuration&amp;gt;&lt;br /&gt;
    &amp;lt;system.webServer&amp;gt;&lt;br /&gt;
        &amp;lt;rewrite&amp;gt;&lt;br /&gt;
            &amp;lt;rules&amp;gt;&lt;br /&gt;
                &amp;lt;clear /&amp;gt;&lt;br /&gt;
                &amp;lt;rule name=&amp;quot;Common Exploit Blocking&amp;quot; stopProcessing=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;match url=&amp;quot;^(.*)$&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;conditions logicalGrouping=&amp;quot;MatchAny&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;mosConfig_[a-zA-Z_]{1,21}(=|\%3D)&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;base64_encode.*\(.*\)&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;(\&amp;amp;lt;|%3C).*script.*(\&amp;gt;|%3E)&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;GLOBALS(=|\[|\%[0-9A-Z]{0,2})&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;_REQUEST(=|\[|\%[0-9A-Z]{0,2})&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;/conditions&amp;gt;&lt;br /&gt;
                    &amp;lt;action type=&amp;quot;Redirect&amp;quot; url=&amp;quot;index.php&amp;quot; appendQueryString=&amp;quot;false&amp;quot; redirectType=&amp;quot;SeeOther&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/rule&amp;gt;&lt;br /&gt;
                &amp;lt;rule name=&amp;quot;Joomla Search Rule&amp;quot; stopProcessing=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;match url=&amp;quot;(.*)&amp;quot; ignoreCase=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;conditions logicalGrouping=&amp;quot;MatchAll&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{URL}&amp;quot; pattern=&amp;quot;^/search.php&amp;quot; ignoreCase=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;/conditions&amp;gt;&lt;br /&gt;
                    &amp;lt;action type=&amp;quot;Rewrite&amp;quot; url=&amp;quot;/index.php?option=com_content&amp;amp;amp;view=article&amp;amp;amp;id=4&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/rule&amp;gt;&lt;br /&gt;
                &amp;lt;rule name=&amp;quot;Joomla Main Rewrite Rule&amp;quot; stopProcessing=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;match url=&amp;quot;(.*)&amp;quot; ignoreCase=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;conditions logicalGrouping=&amp;quot;MatchAll&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{REQUEST_FILENAME}&amp;quot; matchType=&amp;quot;IsFile&amp;quot; negate=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{REQUEST_FILENAME}&amp;quot; matchType=&amp;quot;IsDirectory&amp;quot; negate=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{URL}&amp;quot; pattern=&amp;quot;(/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;/conditions&amp;gt;&lt;br /&gt;
                    &amp;lt;action type=&amp;quot;Rewrite&amp;quot; url=&amp;quot;index.php/&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/rule&amp;gt;&lt;br /&gt;
            &amp;lt;/rules&amp;gt;&lt;br /&gt;
        &amp;lt;/rewrite&amp;gt;&lt;br /&gt;
        &amp;lt;caching&amp;gt;&lt;br /&gt;
            &amp;lt;profiles&amp;gt;&lt;br /&gt;
                &amp;lt;add extension=&amp;quot;.php&amp;quot; policy=&amp;quot;DisableCache&amp;quot; kernelCachePolicy=&amp;quot;DisableCache&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;/profiles&amp;gt;&lt;br /&gt;
        &amp;lt;/caching&amp;gt;&lt;br /&gt;
    &amp;lt;/system.webServer&amp;gt;&lt;br /&gt;
&amp;lt;/configuration&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=Chunk:M16_Search_Engine_Friendly_Joomal_1_6_Article&amp;diff=37274</id>
		<title>Chunk:M16 Search Engine Friendly Joomal 1 6 Article</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=Chunk:M16_Search_Engine_Friendly_Joomal_1_6_Article&amp;diff=37274"/>
		<updated>2011-02-14T09:01:52Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: /* How set up IIS URL Rewriting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==IIS==&lt;br /&gt;
&lt;br /&gt;
(Note: this IIS documentation may not apply to Joomla versions prior to 1.6: so please use the alternative documents which are available if you are not on Joomla 1.6 or above) &lt;br /&gt;
&lt;br /&gt;
The IIS URL Rewrite module stores rules in a site&#039;s web.config file, expressed in XML format.&lt;br /&gt;
You can create the file yourself or use the GUI in the IIS Manager.&lt;br /&gt;
 &lt;br /&gt;
Apache .htaccess rules can be converted to the web.config format. You can import .htaccess rules using the GUI/wizard. For more information on converting .htaccess to web.config see http://learn.iis.net/page.aspx/557/translate-htaccess-content-to-iis-webconfig/&lt;br /&gt;
&lt;br /&gt;
==How set up IIS URL Rewriting==&lt;br /&gt;
&lt;br /&gt;
1) Make sure you are running on a version of IIS supported by your version of Joomla e.g. for Joomla 1.6 at least IIS7&lt;br /&gt;
&lt;br /&gt;
2) Click on Site --&amp;gt; Global Configuration menu to configure SEO Settings: &amp;quot;Search Engine Friendly URLs&amp;quot; to &amp;quot;Yes&amp;quot;&lt;br /&gt;
(screenshot to be added here)&lt;br /&gt;
&lt;br /&gt;
3) In IIS Manager check whether URL Rewrite is already installed&lt;br /&gt;
(screenshot to be added here)&lt;br /&gt;
&lt;br /&gt;
4) If it is not then from http://www.iis.net/download/URLRewrite either&lt;br /&gt;
  a) Use the Microsoft Web Platform Installer to install IIS7 Recommended Configuration&lt;br /&gt;
or &lt;br /&gt;
  b) Download URL Rewrite from the &amp;quot;x86&amp;quot; (if your Windows is 32 bit) or &amp;quot;x64&amp;quot; links and install.&lt;br /&gt;
&lt;br /&gt;
5) Either &lt;br /&gt;
  a) Use the IIS &amp;quot;URL Rewrite&amp;quot; pictured above to create your rules (regular expressions, wildcards or exact matches are all supported) e.g.&lt;br /&gt;
Pattern field: &#039;&#039;&#039;^([^/]+)/?$&#039;&#039;&#039;&lt;br /&gt;
Ignore case &#039;&#039;&#039;ON&#039;&#039;&#039;&lt;br /&gt;
Action type: &#039;&#039;&#039;Rewrite&#039;&#039;&#039;&lt;br /&gt;
Rewrite URL: &#039;&#039;&#039;index.php/&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
  b) If it does not already exist; create and open a web.config file located in the C:\inetpub\wwwroot\joomla directory. Copy in the following code:   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;configuration&amp;gt;&lt;br /&gt;
    &amp;lt;system.webServer&amp;gt;&lt;br /&gt;
        &amp;lt;rewrite&amp;gt;&lt;br /&gt;
            &amp;lt;rules&amp;gt;&lt;br /&gt;
                &amp;lt;clear /&amp;gt;&lt;br /&gt;
                &amp;lt;rule name=&amp;quot;Common Exploit Blocking&amp;quot; stopProcessing=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;match url=&amp;quot;^(.*)$&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;conditions logicalGrouping=&amp;quot;MatchAny&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;mosConfig_[a-zA-Z_]{1,21}(=|\%3D)&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;base64_encode.*\(.*\)&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;(\&amp;amp;lt;|%3C).*script.*(\&amp;gt;|%3E)&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;GLOBALS(=|\[|\%[0-9A-Z]{0,2})&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;_REQUEST(=|\[|\%[0-9A-Z]{0,2})&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;/conditions&amp;gt;&lt;br /&gt;
                    &amp;lt;action type=&amp;quot;Redirect&amp;quot; url=&amp;quot;index.php&amp;quot; appendQueryString=&amp;quot;false&amp;quot; redirectType=&amp;quot;SeeOther&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/rule&amp;gt;&lt;br /&gt;
                &amp;lt;rule name=&amp;quot;Joomla Search Rule&amp;quot; stopProcessing=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;match url=&amp;quot;(.*)&amp;quot; ignoreCase=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;conditions logicalGrouping=&amp;quot;MatchAll&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{URL}&amp;quot; pattern=&amp;quot;^/search.php&amp;quot; ignoreCase=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;/conditions&amp;gt;&lt;br /&gt;
                    &amp;lt;action type=&amp;quot;Rewrite&amp;quot; url=&amp;quot;/index.php?option=com_content&amp;amp;amp;view=article&amp;amp;amp;id=4&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/rule&amp;gt;&lt;br /&gt;
                &amp;lt;rule name=&amp;quot;Joomla Main Rewrite Rule&amp;quot; stopProcessing=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;match url=&amp;quot;(.*)&amp;quot; ignoreCase=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;conditions logicalGrouping=&amp;quot;MatchAll&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{REQUEST_FILENAME}&amp;quot; matchType=&amp;quot;IsFile&amp;quot; negate=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{REQUEST_FILENAME}&amp;quot; matchType=&amp;quot;IsDirectory&amp;quot; negate=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{URL}&amp;quot; pattern=&amp;quot;(/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;/conditions&amp;gt;&lt;br /&gt;
                    &amp;lt;action type=&amp;quot;Rewrite&amp;quot; url=&amp;quot;index.php/&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/rule&amp;gt;&lt;br /&gt;
            &amp;lt;/rules&amp;gt;&lt;br /&gt;
        &amp;lt;/rewrite&amp;gt;&lt;br /&gt;
        &amp;lt;caching&amp;gt;&lt;br /&gt;
            &amp;lt;profiles&amp;gt;&lt;br /&gt;
                &amp;lt;add extension=&amp;quot;.php&amp;quot; policy=&amp;quot;DisableCache&amp;quot; kernelCachePolicy=&amp;quot;DisableCache&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;/profiles&amp;gt;&lt;br /&gt;
        &amp;lt;/caching&amp;gt;&lt;br /&gt;
    &amp;lt;/system.webServer&amp;gt;&lt;br /&gt;
&amp;lt;/configuration&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=Chunk:M16_Search_Engine_Friendly_Joomal_1_6_Article&amp;diff=37272</id>
		<title>Chunk:M16 Search Engine Friendly Joomal 1 6 Article</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=Chunk:M16_Search_Engine_Friendly_Joomal_1_6_Article&amp;diff=37272"/>
		<updated>2011-02-14T08:48:44Z</updated>

		<summary type="html">&lt;p&gt;Jzlcdh: IIS SEO&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==IIS==&lt;br /&gt;
&lt;br /&gt;
(Note: this IIS documentation may not apply to Joomla versions prior to 1.6: so please use the alternative documents which are available if you are not on Joomla 1.6 or above) &lt;br /&gt;
&lt;br /&gt;
The IIS URL Rewrite module stores rules in a site&#039;s web.config file, expressed in XML format.&lt;br /&gt;
You can create the file yourself or use the GUI in the IIS Manager.&lt;br /&gt;
 &lt;br /&gt;
Apache .htaccess rules can be converted to the web.config format. You can import .htaccess rules using the GUI/wizard. For more information on converting .htaccess to web.config see http://learn.iis.net/page.aspx/557/translate-htaccess-content-to-iis-webconfig/&lt;br /&gt;
&lt;br /&gt;
==How set up IIS URL Rewriting==&lt;br /&gt;
&lt;br /&gt;
1) Make sure you are running on a version of IIS supported by your version of Joomla e.g. for Joomla 1.6 at least IIS7&lt;br /&gt;
&lt;br /&gt;
2) Click on Site --&amp;gt; Global Configuration menu to configure SEO Settings: &amp;quot;Search Engine Friendly URLs&amp;quot; to &amp;quot;Yes&amp;quot;&lt;br /&gt;
&lt;br /&gt;
3) In IIS Manager check whether URL Rewrite is already installed&lt;br /&gt;
&lt;br /&gt;
4) If it is not then from http://www.iis.net/download/URLRewrite either&lt;br /&gt;
  a) Use the Microsoft Web Platform Installer to install IIS7 Recommended Configuration&lt;br /&gt;
or &lt;br /&gt;
  b) Download URL Rewrite from the &amp;quot;x86&amp;quot; (if your Windows is 32 bit) or &amp;quot;x64&amp;quot; links and install.&lt;br /&gt;
&lt;br /&gt;
5) Either &lt;br /&gt;
  a) Use the IIS &amp;quot;URL Rewrite&amp;quot; pictured above to create your rules (regular expressions, wildcards or exact matches are all supported) e.g.&lt;br /&gt;
Pattern field: &#039;&#039;&#039;^([^/]+)/?$&#039;&#039;&#039;&lt;br /&gt;
Ignore case &#039;&#039;&#039;ON&#039;&#039;&#039;&lt;br /&gt;
Action type: &#039;&#039;&#039;Rewrite&#039;&#039;&#039;&lt;br /&gt;
Rewrite URL: &#039;&#039;&#039;index.php/&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
  b) If it does not already exist; create and open a web.config file located in the C:\inetpub\wwwroot\joomla directory. Copy in the following code:   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;configuration&amp;gt;&lt;br /&gt;
    &amp;lt;system.webServer&amp;gt;&lt;br /&gt;
        &amp;lt;rewrite&amp;gt;&lt;br /&gt;
            &amp;lt;rules&amp;gt;&lt;br /&gt;
                &amp;lt;clear /&amp;gt;&lt;br /&gt;
                &amp;lt;rule name=&amp;quot;Common Exploit Blocking&amp;quot; stopProcessing=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;match url=&amp;quot;^(.*)$&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;conditions logicalGrouping=&amp;quot;MatchAny&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;mosConfig_[a-zA-Z_]{1,21}(=|\%3D)&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;base64_encode.*\(.*\)&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;(\&amp;amp;lt;|%3C).*script.*(\&amp;gt;|%3E)&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;GLOBALS(=|\[|\%[0-9A-Z]{0,2})&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{QUERY_STRING}&amp;quot; pattern=&amp;quot;_REQUEST(=|\[|\%[0-9A-Z]{0,2})&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;/conditions&amp;gt;&lt;br /&gt;
                    &amp;lt;action type=&amp;quot;Redirect&amp;quot; url=&amp;quot;index.php&amp;quot; appendQueryString=&amp;quot;false&amp;quot; redirectType=&amp;quot;SeeOther&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/rule&amp;gt;&lt;br /&gt;
                &amp;lt;rule name=&amp;quot;Joomla Search Rule&amp;quot; stopProcessing=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;match url=&amp;quot;(.*)&amp;quot; ignoreCase=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;conditions logicalGrouping=&amp;quot;MatchAll&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{URL}&amp;quot; pattern=&amp;quot;^/search.php&amp;quot; ignoreCase=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;/conditions&amp;gt;&lt;br /&gt;
                    &amp;lt;action type=&amp;quot;Rewrite&amp;quot; url=&amp;quot;/index.php?option=com_content&amp;amp;amp;view=article&amp;amp;amp;id=4&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/rule&amp;gt;&lt;br /&gt;
                &amp;lt;rule name=&amp;quot;Joomla Main Rewrite Rule&amp;quot; stopProcessing=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;match url=&amp;quot;(.*)&amp;quot; ignoreCase=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;conditions logicalGrouping=&amp;quot;MatchAll&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{REQUEST_FILENAME}&amp;quot; matchType=&amp;quot;IsFile&amp;quot; negate=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{REQUEST_FILENAME}&amp;quot; matchType=&amp;quot;IsDirectory&amp;quot; negate=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
                        &amp;lt;add input=&amp;quot;{URL}&amp;quot; pattern=&amp;quot;(/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;/conditions&amp;gt;&lt;br /&gt;
                    &amp;lt;action type=&amp;quot;Rewrite&amp;quot; url=&amp;quot;index.php/&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/rule&amp;gt;&lt;br /&gt;
            &amp;lt;/rules&amp;gt;&lt;br /&gt;
        &amp;lt;/rewrite&amp;gt;&lt;br /&gt;
        &amp;lt;caching&amp;gt;&lt;br /&gt;
            &amp;lt;profiles&amp;gt;&lt;br /&gt;
                &amp;lt;add extension=&amp;quot;.php&amp;quot; policy=&amp;quot;DisableCache&amp;quot; kernelCachePolicy=&amp;quot;DisableCache&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;/profiles&amp;gt;&lt;br /&gt;
        &amp;lt;/caching&amp;gt;&lt;br /&gt;
    &amp;lt;/system.webServer&amp;gt;&lt;br /&gt;
&amp;lt;/configuration&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jzlcdh</name></author>
	</entry>
</feed>