A-A+

magento运行环境–LNMP搭建全过程

2012年08月24日 灵犀一指 magento运行环境–LNMP搭建全过程已关闭评论 阅读 1,107 人 次

在将Magento发布到正式环境之前,一般需要在本地测试,那么下面我们就开始讲解如何在本地搭建模拟环境,用来测试Magento。

1.下载vmware虚拟机并安装;
2.下载centos:
http://download.chinaunix.net/download/0013000/12271.shtml
3.新建虚拟机:注意使用自定义配置,使用桥接网络并且硬盘采用IDE格式,在CD-ROM中使用你下载的centos的ISO镜像文件;
4.安装centos:安装过程中注意,根口令为你的root帐户的口令,要记住;设置好根口令之后,注意要选择“现在定制”选项,以选择安装PHP,MYSQL,VSFTP等;之后在服务器选项中勾选FTP服务器、MYSQL数据库、万维网服务器(最好勾选php-mysql及php-odbc可选软件包)、邮件服务器(如有必要可安装桌面环境)、网络服务器;并且在系统reboot之后注意网络设置(最好使用DHCP)、防火墙设置及系统开机启动服务设置(当然也可以使用chkconfig xxx on进行设置),设置之后重启(init 6)生效,使用setup命令可以重新设置;
如碰到ping: unknown host问题,则运行以下命令:
vi /etc/resolv.conf(没有则新建)
insert
search localdomain
nameserver 222.222.222.222
nameserver 208.67.220.220
ESC
wq
service network restart
5.之后使用root用户登录系统,设置vsftpd使得root用户可以访问,以便后面安装上传文件;
annoymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=YES
anon_world_readable_only=NO
anon_other_write_enable=YES
chown_upload=YES
ascii_upload_enable=YES
ascii_download_enable=YES
userlist_enable=YES
将/etc/vsftpd/ftpusers及/etc/vsftpd/user_list两个文件中的root一行注释
6.安装nginx
rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm(注意该链接是否更新,如果碰到urlopen error说明你的网络设置有问题)
rpm install -y nginx
service httpd stop(注意先停止httpd,因为二者端口冲突)
service nginx start
chkconfig nginx on
7.安装spawn-fcgi,配置虚拟机:
依次输入以下命令:
# yum install spawn-fcgi
# wget http://bash.cyberciti.biz/dl/419.sh.zip
# unzip 419.sh.zip
# mv 419.sh /etc/init.d/php_cgi
# chmod +x /etc/init.d/php_cgi
# /etc/init.d/php_cgi start
# chkconfig php_cgi on
# netstat -tulpn | grep :9000
输出如下:

tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 14294/php-cgi

# vi /etc/nginx/nginx.conf
添加以下代码或将原有的注释去掉:

location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
8.安装webmin:
#wget http://downloads.sourceforge.net/project/webadmin/webmin/1.490/webmin-1.490-1.noarch.rpm?use_mirror=nchc(或者直接下载上传到服务器)
#rpm -ivh webmin-1.490-1.noarch.rpm
安装后,默认使用HTTPS协议登录(https://你的ip:10000),登录后可进入webmin-webmin configuration-SSL Encryption中设置不是用SSL,可进入webmin-change language and theme中设置语言;
9.安装magento:
由于安装的是magento1.4.1,需要PHP5.2以上版本,而若你的php版本过低就需要升级php,方法如下:
下载升级的rpm包:http://download1.4psa.com/php_rpms/rhel5/i386/
可使用yum update php查看哪些包需要更新;
然后使用以下命令卸载老的PHP:
# yum -e php php-cli php-ldap php-mysql php-odbc php-pdo php-common
然后使用yum -i *(*为软件包名称)安装新PHP及其附带软件包,
安装后重启php_cgi服务即可生效;
之后需要配置nginx.conf文件,在

[php]
location / {
root /var/www/vhost;
index index.html index.htm index.php;
}

[/php]

后面添加magento rewrite规则:

[php]
## magento rewrite start
location /minify/ { ## Needed for Fooman Speedster
rewrite ^/minify/([0-9]+)(/.*.(js|css))$ /lib/minify/m.php?f=$2&d=$1 last;
}
#
### These locations would be hidden by .htaccess normally
location /app/ { deny all; }
location /includes/ { deny all; }
location /lib/ { deny all; }
location /lib/minify/ { allow all; } ## Deny is applied after rewrites so must specifically allow minify
location /media/downloadable/ { deny all; }
location /pkginfo/ { deny all; }
location /report/config.xml { deny all; }
location /var/ { deny all; }
#location /blog/ { allow 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 a common front handler
rewrite / /index.php;
}

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

[/php]

之后就可以安装magento了,安装过程若碰到需注意修改文件及文件夹权限、php配置(/etc/php.ini)以及MySQL配置(/etc/my.cnf)(对于centos5.2需要额外安装php-mcrypt、php-gd、php-xml的PHP扩展,且需要MySQL innodb引擎支持)。

标签:

评论已关闭!