Showing posts with label seo. Show all posts
Showing posts with label seo. Show all posts

Friday, December 22, 2017

C# SEO Tools for Google PageSpeed

PageSpeed is very important for ranking of your website on Google as also as it will get better experience for your customers when surfing your website. So Google provides its PageSpeed Insights tool which will give advices for optimizing your website. When you optimize your website meeting Google's requirements, you website will have higher score and may be your ranking will be higher. The acceptable score should be from 80 points (80 / 100).

There are many things which you need to do for meeting Google's requirements. However 2 things which impacts to your score most are image optimization and minifying JavaScript + CSS.

In this article, I'll introduce my SEO Tools (written by C#) for solving above matters. You can checkout the source code here: https://github.com/vnheros/c-seotools

The tool uses the following tools:
Below is the guideline for using this SEO Tools.

1. File XML configuration
Below is an example:
BackupSuffix is for copying the original .CSS or . JS file. For example: E:\test\big.js after optimizing ==> E:\test\big_Copy.js (containing original source code) and E:\test\big.js (minified code).
BackupOverwrite = 0 means every time running this tool, it will check and create a backup file with different suffix starting from _Copy1 to _Copy999; = 1 means all times running this tool, it only creates a backup file with suffix _Copy and overwrites it if existing.
DefaultOutPath is for out put folder (containing optimized images) in terms of you don't specify output folder in command.

2. Optimize only files listed in input file
You can use the following command:
SEOTools.exe -i input_file
For example: input_file is E:\test\files.txt. Output to a folder (e.g. E:\test\output), let use:
SEOTools.exe -i input_file -s subfolder -o output_folder
Subfolder is the folder containing image files for compressing, it is used for creating subfolders in backup folder.

3. Optimize all files in input folder (recursively)
You can use the command:
SEOTools.exe -i input_folder -t I -m FO
By default the tool will use Caesium, you can change to use ImageMagick by option -t I. As my experience Caesium gives smaller file size vs. ImageMagick, however ImageMagick runs faster than Caesium. Both also meets Google PageSpeed Insights.
With this tool, you can run after uploading images to your website or modifying CSS file / JavaScript file. Any comment is welcome.
Merry Christmas and Happy New Year!

Thursday, March 20, 2014

Detect and remove SPAM SEO (BlackHat SEO)

Today using SPAM SEO (Black Hat SEO) is a stupid way to get higher ranking in Google. The website uses SPAM SEO is detected easily by Google and Google will shoot penalty the website if it detects many SPAM SEO for the website.

However this is the best way to knock out a competitor. The competitor will take much time to work with Google and remove / disavow these SPAM SEO links. It is not an easy work.

So your website may become a victim of bad guy for his cruel purpose.

1. How to know if my website gets Malware Spam SEO (MW:SPAM:SEO)
You can do one of the following way:
-Install an antivirus like Avas, AVG, etc. on a computer, then browse your website. It will alert if your website infects MW:SPAM:SEO.
-Scan your website via sitecheck2.sucuri.net. It will alert and point out where MW:SPAM:SEO appears on your website. Although it just makes highlights the MW:SPAM:SEO on HTML code, but it will help you to find out where the Malware comes in the source code of your website. I recommend this tool.

2. How to know where MW:SPAM:SEO stays in the source code
2.1 Use antivirus software to scan your source code files. Normally, some antivirus software can detect infected / compromised files. This is fastest way to remove the Malware if its code pattern is in a database of an antivirus.

2.2 Sort files by created / modified date to limit files or make priorities on files for exploring.

2.3 Check & sort by date your web server log on POST requests if you have configured the log. It will help a lot to limit files or make priorities on files for exploring the Malware manually.

2.4 Based on scanning result of sitecheck2.sucuri.net, you can know which page then guess which file can be infected.

2.5 Search special phrases
-Some popular malwares can have a special phrases to find out. e.g. Clickjack will have function dnnViewState or function xViewState. So just do a search on these famous phrases and see if you are lucky.
-After doing above steps, and you still cannot find where the Malware stays. It's time to do some hard works. It will take your time depending on your experiences. If your source code is written by PHP, search special functions of PHP such as: eval, base64_decode, gzinflate, str_rot13, hexdec, file_get_contents, mail, fsockopen, pfsockopen, stream_socket_client, exec, system, passthru. For example, if your server is Linux you can use below command to find all files containing eval or base64_decode function then export these file names to forexploring.txt file:
find . -type f -name '*.php' | xargs egrep -i "(eval|base64_decode) *\(" > forexploring.txt

In my real case, I have 2 websites infected MW:SPAM:SEO. One website infect Clickjack, then I remove it easily by searching function dnnViewState mentioned in step 2.5 above. Another website I tried to scan with some antivirus as also as searching keywords of popular malwares but not found. Then I use step 2.4 above, then I guess that it can be in a free module which I installed in my Joomla website. The module is mod_InowSlideShow. After that I search special functions of PHP in the source files of this module, and I found the file modules\mod_InowSlideShow\tmpl\default.php use function file_get_contents to insert a HTML code to my site. I removed it, then didn't get any warning after doing step 1 again.

3. Prevention is better than cure
-Update frequently security fixes for your server (OS, web server, DB server, PHP etc)
-Update frequently security fixes for your CMS (Joomla, WordPress etc)
-Set up an antivirus on your server, set up firewall on your server
-Set up logs for your server
-Change your passwords frequently and follow password name rule

Good luck to you!

Thursday, January 9, 2014

Joomla: control all types of redirection and http error codes with single component

Does your Joomla website has some links (URLs) needing to redirect? You can use Redirect core component of Joomla. However, it just does 1 type 301 redirection (Moved Permanently) and doesn't support to redirect URLs with Regular Expressions.

Luckily, we have a free component which allows you control almost types of redirection and http error codes. This below inforgraphic of SEOmoz can help you understand them and how they are important in SEO.


So what is the component? It's ReDJ component. You can check out it here. The following is its features:
+Manage redirection URLs, support macros & regular expressions for URLs
+Support to define 404 page quickly
+Support to statistic http error codes which are got and their visited URLs
+Support to statistic referrer URLs

And you can use it to:
+Solve SEO problems
+Create short URLs and use them with your domain (like they are created from bitly.com)

THE END ./.

Wednesday, August 1, 2012

Hangouts with SEO Webmaster

Some experiences with experts of SEO
http://googleandyourbusiness.blogspot.com/2012/07/help-desk-hangouts-seo-webmaster.html

Some of the questions we answered during the Hangout:
My site used to rank really well, but now it doesn’t. What happened?
There could be several reasons that your site is not be ranking in search the same way that it did in the past. Three common reasons why this may happen are that your site has a technical problem which is preventing Googlebot from accessing it, your site violates our quality guidelines, or your site is simply ranking differently due to changes to our algorithm, which is updated hundreds of times per year. The first thing we’d recommend to diagnose your issue is to check your site in Google Webmaster Tools, a free service that gives you information about how your site is performing in Google. If we’ve detected a problem with your site, we may have sent you a message there. For a more detailed checklist to help you diagnose a change in ranking, visit our Help Center.

I'd love to learn more about the Knowledge Graph and what, if anything we should be doing as SEOs & Webmasters.

The Knowledge Graph is a way for users to see additional relevant information on searches for certain people, places and things on the right hand side of the results page. This information helps users get to answers quickly; in many cases, they may find answers to questions they hadn’t even thought to ask. It also helps people discover more about the topic they’re interested in by showing people, places or things that are closely related to their searches. For example, if you search for an artist like Leonardo da Vinci, you’ll see a short biography, some of his most famous works, and other frequently searched-for artists. Currently, there isn’t any functionality in Webmaster Tools to be included in the Knowledge Graph. Right now this is not about individual businesses but rather about generally known facts about the world.

How do you rank item detail pages where there may be many websites which have the same item for sale (with a standard "technical description")? Who rises to the top when the content is basically static?

Great question! Many merchant and affiliate sites use product descriptions taken straight from the manufacturer or from the end merchant site. While sometimes this can be appropriate, we typically recommend looking for ways you can add your own value to that page - can you provide some original reviews or recommendations about the item? If you are adding value of your own you’ll be providing a better experience for users. If you are concerned about this, check out our material on duplicate content and watch this video about our Webmaster Guidelines.

Where can I go for more information, help, or to prove my own knowledge?

Our experts mentioned a bunch of incredible resources available to you. Here are a few links to get you started:



Tuesday, July 24, 2012

Joomla! 2.5: modify meta tag to guide robots


By default Joomla 2.5 does not add the robots meta tag in the header and you have no handy tool by default to do it in one place, unless you don't use some add-on which let you do this easily.

But what if you prefer to do it yourself, bare-handed, without seeing even some code? You might be surprised, but in fact in Joomla 2.5 it's very easy to set up meta tag robots for your home page and content articles.

Tweaking these settings might add you an edge over your competition in the race for better ranking in Google and Bing searches - to name only the biggest players. You can do this in two easy to follow steps:

Step 1. Go to Content >> Category Manager and open the category you need to change
Open the parameters tab "Metadata Options" and set the value of Robots for example to "noindex, follow" to prevent indexing of category blog pages, but invite search-engine bots to follow the links in the page to discover all content items linked to them.

Step 2. Go to Menus >> Menu Manager and open the menu containing the menu item to the category blog you need to change. Open the menu item, then open the parameters tab "Metadata Options" and set the value of Robots to "Index, Follow".

Done! The web bots now are properly instructed how to discover and index your site. Using these settings the category pages will have lower ranks/importance as the content pages, this way facilitating the "concentration" of Page Rank to your content pages - at least this is the SEO guys out there are claiming.

If you use still Joomla 1.5, to change the value of meta tag robots in Joomla! 1.5 for content category pages you have to add some code in your template.

// Set robots for category pages
$document =& JFactory::getDocument();
$view = JRequest::getVar('view');
if ($view == 'category') { $document->setMetaData('robots','noindex,follow'); }

Subscribe to RSS Feed Follow me on Twitter!