Bysoft China's Blog > Your Resource To Keep Up With the Web!

Share Our Knowledge, Share Our Passion
  • rss
  • Home
  • About Us
  • SERVICES
  • WORKS
  • START ECOMMERCE WEBSITE
  • START CMS WEBSITE
  • CONTACT US

PHP usage expanding in the Web construction

Lucas Liang | July 15, 2011

PHP is a scripting language run on website servers, originally designed to produce dynamic web pages. Like ASP and Java, PHP is used in a variety of domains and can run on most of the operation systems such as Windows and Linux. Now, it is usually used alongside with the Open Source web service application Apache and database system MySQL under the operation system Linux (LAMP platform). Its most prominent feature is its ease of use and strong flexibility build complex applications. In the domain of web application development, PHP is the most adopted technology by the developers around the world.

Nearly 60% of the websites are developed using PHPCurrently among the over 50 million websites, nearly 60% of them use PHP language. In China, over 80% of the dynamic websites are developed using PHP. By the rise of a variety of web applications (including Web 2.0 applications, email services, intranet applications etc.), the need of the PHP development is rising as well. A great number of the Open Source website building systems are using PHP as the development language for managing dynamic web pages: Joomla!, Drupal and eZ Publish for content management systems; WordPress for blogs, Magento, osCommerce, PrestaShop and Zen Cart for e-commerce systems; Chinese famous bulletin system Discuz! and e-commerce system ECShop etc…

These pre-defined, ready-to-use systems may not perfectly answer to what is needed by the customers for their specific website, for example an internal human resource management system managing leaves and salaries for the employees, or a company that has a specific business process and wishes to change it to information management system… Using PHP + MySQL database solution can perfectly satisfy this kind of customers, by providing them with a totally customized development according to their specific needs. Using PHP can also assure that after the development of the first version, it will be very easy to maintain and upgrade.

For this reason, we witness a growing need of the PHP developers by the companies who plan to build websites or web applications. This results to the fact that PHP developers are now more difficult to hire in China. In order to answer this kind of needs, many technical solution companies start to offer services such as PHP project outsourcing, PHP onsite development… This provides for the companies, needing PHP resource, a convenient and practical option.

Comments
No Comments »
Categories
News
Tags
PHP, php engineer, web application, Zend PHP 5
Comments rss Comments rss
Trackback Trackback

Configuration load order in eZ Publish

Jerry Wang | January 25, 2011

Firstly, please check the technical manual if you are not familiar with the configuration concept in eZ Publish.

In this article I will provide a short article about reading order of configuration file. I assume that you have already used eZ Publish in real projects and have idea about configuration (ini) in eZ Publish.

What is configuration’s order? When a siteaccess is used, eZ Publish reads the configuration files using the following sequence:

0 Default configuration settings – /settings/*.ini?

1 Active extension siteaccesses – /extension/my_extension/settings/siteaccess/my_site/*.ini.append.php

2 Siteaccesses                             - /settings/siteaccess/my_site/*.ini.append.php?

3 Active extensions                    – /extension/my_extension/settings/*.ini[.append.php]?

4 Global overrides                     – /settings/override/*.ini.append.php

In other words, eZ Publish will first read the default configuration settings. Secondly, it will read my_site/*.ini.append.php to find the siteaccesses for the active extensions during the installation. Then, it will determine which siteaccess to use according to the rules defined in the global override for “site.ini” (“/settings/override/site.ini.append.php”). When it knows which siteaccess to use, it will go into the directory of that siteaccess and read the configuration files belonging to that siteaccess. Lastly, it will go into the configuration file for the active extensions and read the configuration files for the active extensions. The settings of the siteaccess will override the default configuration settings.

But, if we have many extensions providing similar configuration information, which one we should use? That’s the issue about configuration override among extensions.

For example:

`– extension

|– ini_1

|   `– settings

|       `– test.ini.append.php

`– ini_2

`– settings

`– test.ini.append.php

And content of test.ini.append.php in ini_1 extension is:

[IniOrderTest]

CurrrentActiveName=ini_1

As you may guess, content of test.ini.append.php in ini_2 will be:

[IniOrderTest]

CurrrentActiveName=ini_2

So, if we want to read content of ‘CurrentActiveName’ in block ‘IniOrderTest’, which value should it be? The truth is: it depends on the load order of extensions.

For eZ Publish version less than 4.3, the load order is defined in ‘ActiveExtensions[]‘ under ‘ExtensionSettings’ block. For example:

[ExtensionSettings]

ActiveExtensions[]

ActiveExtensions[]=ini_1

ActiveExtensions[]=ini_2

Then the value for ‘CurrentActiveName’ in block ‘IniOrderTest’ should be ‘ini_1′, because eZ Publish uses prepending order to register extensions into configuration list during the activation of extensions. That means eZ Publish firstly activates extension ‘ini_1′ and register this extension into the list, then activates extension ‘ini_2′ and prepends ‘ini_2′ into the list. So, at the moment of reading configuration value, the order will firstly be ‘ini_2′, then ‘ini_1′.

The situation has changed since eZ Publish 4.4. This version introduces a new concept about extension dependency called ‘topology’. You can have a look at ‘extension.xml’ file in ezOE extension, which required ‘ezjscore’ extension as defined.

Let’s see how ‘extension.xml’ affects the result of configuration. We define dependency in ini_2 as following:

<dependencies>

<uses>

<extension name=”ini_1″ />

</uses>

</dependencies>

The word ‘extends’ define the ‘before’ relation, and words ‘required’ or ‘uses’ define the ‘after’ relation. The above example means that extension ‘ini_2’ uses extension ‘ini_1′, so the extension ‘ini_1’ should be firstly activated. Actually, this relation can be represented as:

[ExtensionSettings]

ActiveExtensions[]

ActiveExtensions[]=ini_1

ActiveExtensions[]=ini_2

As you know, configuration system will prepend ini_2 before ini_1. So, ini_1 configuration value can override the value from ini_2. When you want to read ‘CurrentActiveName’ in block ‘IniOrderTest’, you will get ‘ini_1′.

In conclusion, eZ Publish 4.4 has improved loading order of extension by introducing the ‘topology’. Keep in mind, the extension order is the reverse of the order of configuration list, since it uses prepending method when activates extensions.

Comments
15 Comments »
Categories
Content Management (CMS)
Tags
bysoft, Bysoftchina, CMS, easy publish, ez, eZ publish, PHP
Comments rss Comments rss
Trackback Trackback

Bysoft certified engineers

Jerry Wang | November 5, 2010

More and more Internet companies are emerging nowadays, it is essential for you to select a technically qualified company. The number of certified engineers becomes a significant figure for determining the company’s development strength.

Bysoft takes pride in announcing that more than 20 Zend PHP certified engineers, 4 eZ Publish certified engineers and a number of Flex, Zend Framework and My SQL certified engineers in our company. In October, we have 3 more certified colleagues:

JavaScript certification: Chris

Flex certification: Chad

Zend PHP certification: Eason

Bysoft makes itself stand out in the website construction market, because we rely on the professional services and excellent technical team. We thereafter introduce PHP talents dispatch services to our clients as our new practice.

Bysoft has been committed to providing our clients with better website construction service. If you have any suggestion, please contact us. We are honored to have your attention and help.

Comments
3 Comments »
Categories
Internet, News, PHP, Web Design, Web Development
Tags
eZ publish, open source, PHP, php engineer, programming, zend framework, Zend PHP 5
Comments rss Comments rss
Trackback Trackback

SEO for Joomla website

Jerry Wang | September 21, 2010
  • 1. Do not install the Joomla sample database

Do not install the sample database when you install Joomla, because these examples usually are not related to the theme of your website. If you have installed it, we suggest you to delete it and empty the recycle bin; otherwise it will contain duplicated data that is largely used by other sites, and this is not conductive to SEO.

  • 2. Your site name should be your domain

Some people like to fill in the Site Name with many keywords. In fact, this would not help you much. When users register on your site, they will receive an email saying” welcome to software   download database web source” which seems not very clear and also it is not your wish.

  • 3 Disable PDF links

The rank value of PDF files is usually higher than that of the average webpage. Because Google considers that the PDF files are filtered, collated and the content value is higher than ordinary webpage. However there is no menu in the PDF links page generated by Joomla. When users access to this page through search engine, they are unable to visit others pages of the website. Therefore you should disable this feature.

  • 4. Do not put too many social bookmarking links on the page

Users like the clean pages and so does search engine. Therefore we suggest you to put social bookmarking links in the valuable content pages, rather than leave around everywhere.

  • 5. Redirect www and non www domain name to the same page

It is very simple. Add the following code to .htaccess file and pay attention to replace MyDomain.com with your own domain name

## Can be commented out if causes errors.
Options FollowSymLinks
# mod_rewrite in use

RewriteEngine On
RewriteCond %{HTTP_HOST} ^MyDomain.com$ [NC]
RewriteRule ^(.*)$ http://www.MyDomain.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} !^.*MyDomain.com [NC]
RewriteRule (.*) http://www.MyDomain.com/$1 [R=301,L]

  • 6. Open the website cache

Search engines like to visit the fast speed website, open this option, and make your site the better performance.

  • 7.Fill in the complete description for each section and category.

It can help to improve the site’s page rank and optimize search engine visit.

  • 8. Simple is beautiful

Thousands of pages indexed by Google is not a good thing, especially some of  the pages have little value content .Google usually does not like it. Some of Joomla’s components will generate a lot of pages and some of them are useless for the website. You should enter site:mydomain.com in Google for checking. If the indexed pages contain no significant value, you can remove them from Joomla.

  • 9. Fill in metadata in Joomla’s Global Settings page

Complete the installation of Joomla, the default metadata is “Joomla! – The dynamic portal engine and content management system”. If you do not want it as the description of your site, change it.

  • 10.Confidence

Joomla designer takes into account the SEO problems. It is a great CMS and you should learn how Joomla works. You’ll find your site have a higher search rankings soon.

Comments
15 Comments »
Categories
Search Engine Optimization (SEO)
Tags
CMS, Ecommerce, ecommerce navigation, eZ publish, Google, Ja, Joomla website, Joomla!, PDF link, PHP, sem, seo, website cache
Comments rss Comments rss
Trackback Trackback

Zend Framework vs. Symfony

Florence SONG | October 8, 2008

Comments
12 Comments »
Categories
PHP, Web Development, Web Technologies
Tags
framework, PHP, programming, symfony, zend, zend framework
Comments rss Comments rss
Trackback Trackback

New version released: PHP 5.2.5

Florence SONG | November 23, 2007

The PHP development team would like to announce the immediate availability of PHP 5.2.5. This release focuses on improving the stability of the PHP 5.2.x branch with over 60 bug fixes, several of which are security related. All users of PHP are encouraged to upgrade to this release.

Further details about the PHP 5.2.5 release can be found in the release announcement for 5.2.5, the full list of changes is available in the ChangeLog for PHP 5.

Security Enhancements and Fixes in PHP 5.2.5:

Fixed dl() to only accept filenames. Reported by Laurent Gaffie.
Fixed dl() to limit argument size to MAXPATHLEN (CVE-2007-4887). Reported by Laurent Gaffie.
Fixed htmlentities/htmlspecialchars not to accept partial multibyte sequences. Reported by Rasmus Lerdorf
Fixed possible triggering of buffer overflows inside glibc implementations of the fnmatch(), setlocale() and glob() functions. Reported by Laurent Gaffie.
Fixed “mail.force_extra_parameters” php.ini directive not to be modifiable in .htaccess due to the security implications. Reported by SecurityReason.
Fixed bug #42869 (automatic session id insertion adds sessions id to non-local forms).
Fixed bug #41561 (Values set with php_admin_* in httpd.conf can be overwritten with ini_set()).
For users upgrading to PHP 5.2 from PHP 5.0 and PHP 5.1, an upgrade guide is available here, detailing the changes between those releases and PHP 5.2.5.

Comments
8 Comments »
Categories
PHP, Web Development
Tags
PHP, programming
Comments rss Comments rss
Trackback Trackback

Recent Posts

  • The confines of the Chinese Internet
  • The Chinese Delivery Methods
  • 5 simple development tricks for a faster web application
  • The Chinese Payment Modules
  • Synchronization
  • Always be releasable
  • Sina Weibo and the brands
  • The most influential Chinese e-commerce websites
  • X.commerce, New International Opportunities for E-Commerce Solution Providers
  • Case Study for Etam

Categories

  • Content Management (CMS)
  • Ecommerce
  • FAQ Shopmaker – Standard Ecommerce
  • Internet
  • Magento
  • News
  • PHP
  • References
  • Search Engine Marketing (SEM)
  • Search Engine Optimization (SEO)
  • Web Design
  • Web Development
  • Web Technologies
  • Webmarketing

Tags

api asia b2c Baidu business bysoft Bysoftchina c2c china CMS company cpc Design Ecommerce ecommerce navigation education ergonomics eZ publish Google integration interview japan Joomla! lecture Magento open source PHP php engineer ppc press programming sem seo shanghai shopmaker social media symfony tips tutorial web application Webmarketing website cache zend zend framework Zend PHP 5

Recent Comments

  • Frederic Iseman on Greetings from Bysoft for the Year of the Ox
  • Online sexy blackjack 2 on Case Study for Rio-Mints
  • Boyce Mettlen on The most influential Chinese e-commerce websites
  • Bysoft on Sina Weibo and the brands
  • Dustin Selissen on BysoftChina is now an Oracle Partner!

Pages

  • About Us

Archives

  • February 2012
  • January 2012
  • October 2011
  • September 2011
  • July 2011
  • June 2011
  • May 2011
  • April 2011
  • March 2011
  • February 2011
  • January 2011
  • November 2010
  • October 2010
  • September 2010
  • August 2010
  • July 2010
  • June 2010
  • May 2010
  • April 2010
  • June 2009
  • May 2009
  • February 2009
  • January 2009
  • October 2008
  • April 2008
  • March 2008
  • February 2008
  • December 2007
  • November 2007
  • August 2007

Bysoft China

  • Consulting
  • Content Management
  • E-Commerce
  • Graphic Design
  • Magento
  • Marketing Website
  • Programming
rss Comments rss valid xhtml 1.1 design by jide powered by Wordpress get firefox