magento php mysql,安装lnmp nginx php mysql环境 -magento

1.首先更新环境

yum update

2.安装

yum install ntp vim-enhanced gcc gcc-c++ gcc-g77 flex bison autoconf automake glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel libtool* zlib-devel libxml2-devel libjpeg-devel libpng-devel libtiff-devel fontconfig-devel freetype-devel libXpm-devel gettext-devel curl curl-devel pam-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers gzip make bzip2bzip2-devel pcre-devel wget ncurses-devel cmake make perl

3.安装mysql

sudo yum install mysql mysql-server

sudo /etc/init.d/mysqld restart

配置mysql:

sudo /usr/bin/mysql_secure_installation

会出现:

Enter current password for root (enter for none):

OK, successfully used password, moving on...

因为没有密码,所有直接按回车

下面的设置基本都是y

4

安装nginx

我的是CentOS 6,先执行:

rpm-ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm

如果是CentOS 5,就用下面的源:

rpm-ivh http://nginx.org/packages/centos/5/noarch/RPMS/nginx-release-centos-5-0.el5.ngx.noarch.rpm

如果是Red Hat Enterprise Linux 6:

rpm -ivhhttp://nginx.org/packages/rhel/6/noarch/RPMS/nginx-release-rhel-6-0.el6.ngx.noarch.rpm

如果是Red Hat Enterprise Linux 5:

rpm -ivhhttp://nginx.org/packages/rhel/5/noarch/RPMS/nginx-release-rhel-5-0.el5.ngx.noarch.rpm

yum install nginx

service nginx start

查看内网ip地址命令:

ifconfig eth0 | grep inet | awk '{ print $2 }'

5

安装php

sudo yum install php-fpm php-mysql

配置php:

sudo vi /etc/php.ini

设置:cgi.fix_pathinfo=0

设置的原因为:If this number is kept as a 1, the php interpreter will do its best to process the file that is as near to the requested file as possible. This is a possible security risk. If this number is set to 0, conversely, the interpreter will only process the exact file path—a much safer alternative. Save and Exit.

6

配置nginx

sudo vi /etc/nginx/nginx.conf

打开后会发现:包含文件:/etc/nginx/conf.d/default.conf

然后:

sudo vi /etc/nginx/conf.d/default.conf

复制下面到文件:

server {

listen 80;

server_name example.com;

location / {

root /usr/share/nginx/html;

index index.php index.html index.htm;

}

error_page 404 /404.html;

location = /404.html {

root /usr/share/nginx/html;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root /usr/share/nginx/html;

}

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

#

location ~ \.php$ {

root /usr/share/nginx/html;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

include fastcgi_params;

}

}

把上面的:example.com换成IP或者网址,在目录/usr/share/nginx/html下增加index.php文件,里面添加内容,可以填写phpinfo查看参数

7

sudo vi /etc/php-fpm.d/www.conf

[...]

; Unix user/group of processes

; Note: The user is mandatory. If the group is not set, the default user's group

;will be used.

; RPM: apache Choosed to be able to access some dir as httpd

user = nginx

; RPM: Keep a group allowed to write in log dir.

group = nginx

[...]

把上面出现的apache换成nginx

重启php-fpm

sudo service php-fpm restart

然后重启nginx

sudo service nginx restart

8

设置开机启动:

sudo chkconfig --levels 235 mysqld on

sudo chkconfig --levels 235 nginx on

sudo chkconfig --levels 235 php-fpm on

9

检测环境会发现:

You are missing the dom extension

You are missing the gd extension

You are missing the mcrypt extension

1

安装dom

sudo yum install php-xml

service php-fpm restart

2

安装gd

yum install php-gd3

安装mcrypt

i386

rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

x86_64

rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

yum install php-mcrypt

10

修改配置文件:

1.

/etc/nginx/conf.d/default.conf

1.1修改

server_name 121.199.39.177 //ip

1.2

access_log /www/web_logs/access.log wwwlogs;

error_log /www/web_logs/error.log notice;

新建对应的文件,设置文件可写

1.3

把文件覆盖到/etc/nginx

打包下载地址:

http://download.csdn.net/download/terry_water/6966473

/etc/nginx/fcgi.conf

# nginx conf conf/fcgi.conf

# Created by http://www.wdlinux.cn

# Last Updated 2010.06.01

if ($request_filename ~* (.*)\.php) {

set $php_url $1;

}

if (!-e $php_url.php) {

#return 403;

}

fastcgi_param GATEWAY_INTERFACE CGI/1.1;

fastcgi_param SERVER_SOFTWARE nginx;

fastcgi_param QUERY_STRING $query_string;

fastcgi_param REQUEST_METHOD $request_method;

fastcgi_param CONTENT_TYPE $content_type;

fastcgi_param CONTENT_LENGTH $content_length;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

fastcgi_param SCRIPT_NAME $fastcgi_script_name;

fastcgi_param REQUEST_URI $request_uri;

fastcgi_param DOCUMENT_URI $document_uri;

fastcgi_param DOCUMENT_ROOT $document_root;

fastcgi_param SERVER_PROTOCOL $server_protocol;

fastcgi_param REMOTE_ADDR $remote_addr;

fastcgi_param REMOTE_PORT $remote_port;

fastcgi_param SERVER_ADDR $server_addr;

fastcgi_param SERVER_PORT $server_port;

fastcgi_param SERVER_NAME $server_name;

# PHP only, required if PHP was built with --enable-force-cgi-redirect

fastcgi_param REDIRECT_STATUS 200;

/etc/nginx/conf.d/default.conf

server {

listen 80;

server_name 121.199.39.177;

root /usr/share/nginx/html;

server_tokens off;

include none.conf;

index index.php index.html index.htm;

access_log /www/web_logs/access.log wwwlogs;

error_log /www/web_logs/error.log notice;

location ~ \.php$ {

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

include fcgi.conf;

}

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {

expires 30d;

}

location ~ .*\.(js|css)?$ {

expires 12h;

}

}

/etc/nginx/nginx.conf

user nginx nginx;

worker_processes 1;

error_log /var/log/nginx/error.log warn;

pid /var/run/nginx.pid;

worker_rlimit_nofile 5120;

events {

use epoll;

worker_connections 5120;

}

http {

include /etc/nginx/mime.types;

default_type application/octet-stream;

server_names_hash_bucket_size 128;

client_header_buffer_size 32k;

large_client_header_buffers 4 32k;

client_max_body_size 8m;

# limit_conn_zone $binary_remote_addr zone=one:32k;

sendfile on;

tcp_nopush on;

keepalive_timeout 60;

tcp_nodelay on;

fastcgi_buffers 8 128k;

fastcgi_connect_timeout 9900s;

fastcgi_send_timeout 9900s;

fastcgi_read_timeout 9900s;

gzip on;

gzip_min_length 1k;

gzip_buffers 4 16k;

gzip_http_version 1.0;

gzip_comp_level 2;

gzip_types text/plain application/x-javascript text/css application/xml;

gzip_vary on;

log_format wwwlogs '$remote_addr - $remote_user [$time_local] $request $status $body_bytes_sent $http_referer $http_user_agent $http_x_forwarded_for';

include /etc/nginx/conf.d/*.conf;

}

/etc/nginx/none.conf

location / {

index index.html index.php; ## Allow a 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/email/ {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;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值