网络技术
当前位置 :首页信息技术网络技术

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

来源: 作者: 时间:2010-11-03 点击:

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文件,在
        location / {
            root   /var/www/vhost;
            index  index.html index.htm index.php;
        }

后面添加magento rewrite规则:
## 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

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

最新评论共有 位网友发表了评论
发表评论
用户名: 密码: 游客发言不需要密码