加载中…
个人资料
LEDLampShop
LEDLampShop
  • 博客等级:
  • 博客积分:0
  • 博客访问:1,117
  • 关注人气:0
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

Nginx Magento Multiple Domain One Installation Tutorial

(2014-02-19 21:53:07)

Nginx Magento Multiple Domain One Installation

 

We know that Magento installed on Nginx server can get better performance. But how to 

configure magento with multiple domains multiple store just in one installation on Nginx 

server? 

 

searched one google, yahoo,and bing, and Magento official websites. read many posts, 

but none of these posts can provide complete tutorial for us. Most of these posts are for 

multiple magento stores with Apache server. 

It did not help much. So had to try by myself. And finally it works out.

 

 

So now Iexciting to share my experience with those who are still searching for an answer on mutliple domains magento store with one installation on Nginx Server.

 

My testing environment is Linux (Centos 6.5) with Nginx 1.4.5 and PHP-fpm 5.5.8 and MySQL 6.14

 

had setup my network with the following IP address

192.168.1.10 for domain lampk.com

192.168.1.11 for domain ledlightshopping.com

192.168.1.12 for domain ledlampwholesale.com 
 
 =============================================================
 The following is method how to setup multiple IP in one network card
 cd /etc/sysconfig/network-scripts #
 cp ifcfg-eth0 ifcfg-eth0:2 #

 vi ifcfg-eth0:2 

Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

DEVICE=eth0:2 # This should be the same as the new network interface name

ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.1.12 # 
NETMASK=255.255.255.0

Then use command :wq to save and exit

 

After that use service network restart to restart the network
Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

 

 

Use ifconfig command to check the active IP in our networks
Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

After go through above steps, we got 

192.168.1.9 This IP is the first IP when start network after Centos Installation 

192.168.1.10

192.168.1.10

192.168.1.10
===========================================================


Now will show you how to setup multiple Magento stores

First Login to backend of your magento store,
Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

After login, we will the admin control panel as below picture.


Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

 

Click  the  Catalog -> Manage Categories Menu, we got below picture



Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

Click the  Add Root Category Yellow Button,

Fill Name with Wholesale

Select Yes from the pulldown button

 

Click  System -> Manage Storeswe arrived at the following place as the picture below

Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

Click the First Yellow Button Create Website as show in below picture

Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

 

And we get into New Website Interface,

Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial



Fill the blank place right of Name with wholesale
Fill the blank place right of Code with wholesale too

And then press the [Save Website] yellow button to save and exit

Now were going to make new Store by press the [Create Store] yellow button in the middle of 

picture below

Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

And we arrive at the New Store interface

Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

From the pulldown menu of Website* we select wholesale website just now we made

Fill wholesale in the blank in the right of Name*

Select Wholesale from pulldown menu right from the Root Category, which we got from the first step of Add Root Category.

Click [Save Store] yellow button to save and exit

 

Next we are going to make new Store View, by clicking the [Create Store View] yellow button as picture below


Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

 

And we get into the New Store View interface as picture below

Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

 

Select wholesale from the pulldown menu right from Store*

Fill English in the blank right from Name*, #note we can add other language store view later,

so here we write it English

Fill wholesale in the blank right from Code* note this is the store code we will use 

in NginxConfig file of Virtual Host fastcgi_param MAGE_RUN_CODE wholesale
Select Enable from the pulldown menu of Status* ,and click [Save Store View] yellow button to save and exit.

Next wer are going to configure the store we just now made from above steps.

Click System -> Configurationand we get the following picture


Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

 

Find the Current Configuration Scopeas below picture

Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

Select English from the pulldown menu under Current Configuration Scope

Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

 

After select the English Store View of Wholesale website, 

and click Web menu under Configuration, we arrive at the interface below

 

Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

We can see the Base URL of Unsecure Secure  is 192.168.1.10and marked with ticklewe need to remove the tickle by clicking it and then we can edit itWe change the ip to 192.168.1.12as below picture

Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

Note Base URL could be IP address or domain name,for example we change IP to 

 http://www.ledlightshopping.com ,as below picture

Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial


After we get this step finished, the setup of new magento store had finished.

 

 

 

 

====================================================================

Next we are going to setup Nginx Virtual Host to achieve One Magento Installation
for multiple domains (or IP)

 

Now we change working directory to nginx virtual host folder by use command cd, 

showing as below picture

Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

 

Before we already have virtual host config file magento.conf, we copy it by using command 

cp magento.conf wholesale.conf

And edit it using vi command
vi wholesale.conf

Below is the picture of the wholesale.conf file


Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

Below is the code of wholesale.conf, you can copy and paste for your own use.

==========================================
 server {
       listen 80;
       server_name 192.168.1.12; 

       root /var/www/magento;

       location {
           index index.html index.php; ## Allow static html file to be shown first
           try_files $uri $uri/ @handler; ## If missing pass the URI to Magento's front handler
           expires 30d; ## Assume all files are cachable
       }

       ## These locations would be hidden by .htaccess normally
       location ^~ /app/               deny all; }
       location ^~ /includes/          deny all; }
       location ^~ /lib/               deny all; }
       location ^~ /media/downloadable/ deny all; }
       location ^~ /pkginfo/           deny all; }
       location ^~ /report/config.xml  deny all; }
       location ^~ /var/               deny all; }

       location /var/export/ ## Allow admins only to view export folder
           auth_basic          "Restricted"; ## Message shown in login window
           auth_basic_user_file htpasswd; ## See /etc/nginx/htpassword
           autoindex           on;
       }

       location /. ## Disable .htaccess and other hidden files
           return 404;
       }

       location @handler ## Magento uses common front handler
           rewrite /index.php;
       }

       location .php/ ## Forward paths like /js/index.php/x.js to relevant handler
           rewrite ^(.*.php)/ $1 last;
       }

       location .php$ ## Execute PHP scripts
           if (!-e $request_filename) rewrite /index.php last; ## Catch 404s that try_files miss

           expires       off; ## Do not cache dynamic content
           fastcgi_pass  127.0.0.1:9000;
           #fastcgi_param HTTPS $fastcgi_https;
           fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
           fastcgi_param MAGE_RUN_CODE wholesale; ## Store code is defined in administration Configuration Manage Stores
           fastcgi_param MAGE_RUN_TYPE store;
           include       fastcgi_params; ## See /etc/nginx/fastcgi_params
       }
   }
====================================

There are key place to note
1. server_name change to the IP or domain you want to use,here use 192.168.1.12;
2. root /var/www/magento; Root directory should keep the same as your magento installation;
3. fastcgi_param MAGE_RUN_CODE wholesale; In the magento.conf file, this line is fastcgi_param MAGE_RUN_CODE default; Here had changed to wholesale (the store code)

After save editing and saving the nginx virtual host configuration file, the command service nginx reload to reload the nginx server.

By now you the new store with ip 192.168.1.12 should be working.

For your refence, list the magento.conf Virtual Host configuration file below, which is the configuration file of first installation of magento
======================
 server {
       listen 80;
       server_name 192.168.1.10; 

       root /var/www/magento;

       location {
           index index.html index.php; ## Allow static html file to be shown first
           try_files $uri $uri/ @handler; ## If missing pass the URI to Magento's front handler
           expires 30d; ## Assume all files are cachable
       }

       ## These locations would be hidden by .htaccess normally
       location ^~ /app/               deny all; }
       location ^~ /includes/          deny all; }
       location ^~ /lib/               deny all; }
       location ^~ /media/downloadable/ deny all; }
       location ^~ /pkginfo/           deny all; }
       location ^~ /report/config.xml  deny all; }
       location ^~ /var/               deny all; }

       location /var/export/ ## Allow admins only to view export folder
           auth_basic          "Restricted"; ## Message shown in login window
           auth_basic_user_file htpasswd; ## See /etc/nginx/htpassword
           autoindex           on;
       }

       location /. ## Disable .htaccess and other hidden files
           return 404;
       }

       location @handler ## Magento uses common front handler
           rewrite /index.php;
       }

       location .php/ ## Forward paths like /js/index.php/x.js to relevant handler
           rewrite ^(.*.php)/ $1 last;
       }

       location .php$ ## Execute PHP scripts
           if (!-e $request_filename) rewrite /index.php last; ## Catch 404s that try_files miss

           expires       off; ## Do not cache dynamic content
           fastcgi_pass  127.0.0.1:9000;
           #fastcgi_param HTTPS $fastcgi_https;
           fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
           fastcgi_param MAGE_RUN_CODE default; ## Store code is defined in administration Configuration Manage Stores
           fastcgi_param MAGE_RUN_TYPE store;
           include       fastcgi_params; ## See /etc/nginx/fastcgi_params
       }
   }


================================

Now let type 192.168.1.12 in our web browser, we should get the following picture, 

please note the IP address and the Logo LEDLampWholesale.com

Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

 

 

Furthermore, had bond 192.168.1.11 for domain www.LEDlightshopping.com ,

please note the IP address and the Logo LEDLightShopping.com

Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial



 

And had 192.168.1.1for domain http://www.lampk.com   ,

please note the IP address and the Logo Lampk.com 


Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial

 

 

==========================

How to change the logo, below is the method. It is quite simple, use photoshop to make logo, 

background we make it transparent, the Letters we make it white, and then save it as gif format. 

Letname the new logo as logo1.gif  And then we should upload the new logo to the following 

folder /var/www/magento/skin/frontend/default/default/images,I use the default theme of magento, 

so the folder is magento/skin/frontend/default/default/images.

After upload the new logo, we go to magento  backend admin control panel,

Click System -> Configuration -> Design  
Header Logo Image Src we change images/logo.gif to images/logo1.gif and save config


Nginx <wbr>Magento <wbr>Multiple <wbr>Domain <wbr>One <wbr>Installation <wbr>Tutorial



0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有