nginx php mysql安装,Linux下Nginx、MySQL、PHP5、phpMyAdmin安装与配置

更多

以前在Linux下,只配过LAMP,没尝试过Nginx,这次换个口味尝试一下,中间遇到了一个比较无语的小错误浪费了很长时间(下面会说到)。总体来说还算比较顺利吧,不过安装PHP的目的只是为了用phpMyAdmin,所以对PHP的版本等方面都没有要求,如果要求PHP版本是5.2的还需要额外操作。配置好之后,安装了Discuz! X2.5,简单看了下没有什么问题。

1.环境

OS:Ubuntu 13.04 64bits

2.安装Nginx

sudo apt-get install nginx

配置文件在/etc/nginx下

程序文件在/usr/sbin/nginx下

日志文件在/var/log/nginx下

网站目录在/usr/share/nginx/html下,注意:需要为目录树加写权限:sudo chmod -R 777 /usr/share/nginx/html

并已经在/etc/init.d/下创建了启动脚本nginx

启动nginx的命令:sudo /etc/init.d/nginx start

然后就可以访问通过http://localhost/访问了。如果看到Welcome to nginx!,下面一大片英文,则代表安装成功。否则,请到日志文件查看错误原因。

3.安装MySQL

sudo apt-get install mysql-server mysql-client

安装过程中,会要求输入两次root的密码。

此外,需要执行以下操作,才能解除只有本地可以访问的限制:

在/etc/mysql/my.cnf找到:bind-address 127.0.0.1,在这一行前加#注释掉。

4.安装PHP5

这里安装了很多组件,其中php5-fpm是FastCGI Process Manager,是Nginx配合PHP所必须使用的。php5-mcrypt是phpMyAdmin需要使用到的。

sudo apt-get install php5-cli php5-cgi php5-fpm php5-mcrypt php5-mysql php5-gd php-apc php5-common

5.配置Nginx使配合PHP5

5.1 /etc/nginx/nginx.conf

可以根据需要修改这两个变量的值:worker_processes,keepalive_timeout。

5.2 /etc/nginx/sites-available/default

1.找到index,添加index.php。

2.找到server_name,改为你所希望的域名(准确,正则,glob),当然也可以配置server里的其他属性,如监听端口号listen等。

3.找到如下一段(这是Nginx配合PHP的部分):

nginx配合php(修改前)

#location ~ \.php$ {

# fastcgi_split_path_info ^(.+\.php)(/.+)$;

# # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini

#

# # With php5-cgi alone:

# fastcgi_pass 127.0.0.1:9000;

# # With php5-fpm:

# fastcgi_pass unix:/var/run/php5-fpm.sock;

# fastcgi_index index.php;

# include fastcgi_params;

#}

1

2

3

4

5

6

7

8

9

10

11

#location ~ \.php$ {

#       fastcgi_split_path_info ^(.+\.php)(/.+)$;

#       # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini

#

#       # With php5-cgi alone:

#       fastcgi_pass 127.0.0.1:9000;

#       # With php5-fpm:

#        fastcgi_pass unix:/var/run/php5-fpm.sock;

#        fastcgi_index index.php;

#        include fastcgi_params;

#}

修改为:

nginx配合php(修改后)

location ~ \.php$ {

# fastcgi_split_path_info ^(.+\.php)(/.+)$;

# # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini

#

# # With php5-cgi alone:

# fastcgi_pass 127.0.0.1:9000;

# # With php5-fpm:

fastcgi_pass unix:/var/run/php5-fpm.sock;

fastcgi_index index.php;

include fastcgi_params;

}

1

2

3

4

5

6

7

8

9

10

11

location~\.php${

#       fastcgi_split_path_info ^(.+\.php)(/.+)$;

#       # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini

#

#       # With php5-cgi alone:

#       fastcgi_pass 127.0.0.1:9000;

#       # With php5-fpm:

fastcgi_passunix:/var/run/php5-fpm.sock;

fastcgi_indexindex.php;

includefastcgi_params;

}

注意:千万不要忘了取消掉前后大括号所在行的注释!我就是在这里耽误了很久时间的。

此外,要注意fastcgi是使用的9000端口,还是sock的形式。网上很多教程都是用的9000端口那行,而在我的实际操作中发现netstat -nat | grep php得到的是sock这种。我这里安装的PHP版本是5.4的,不知其他版本情况。

4.删除如下一段的注释(下面为删除后的代码):

location ~ /\.ht

# deny access to .htaccess files, if Apache's document root

# concurs with nginx's one

#

location ~ /\.ht {

deny all;

}

1

2

3

4

5

6

# deny access to .htaccess files, if Apache's document root

# concurs with nginx's one

#

location~/\.ht{

denyall;

}

6.测试Nginx与PHP

创建探针文件phpinfo.php,放到Nginx网站根目录下。

phpinfo.php

PHP

1

重启Nginx服务器:sudo /etc/init.d/nginx restart。

进入http://localhost/phpinfo.php,查看探针文件。

7.phpMyAdmin的安装

从phpMyAdmin的sf主页上下载最新版本的phpMyAdmin(点击进入)。

将得到的压缩文件放到/usr/share/nginx/html中,解压即可(可以根据自己的需要修改目录名字)。注意:phpMyAdmin目录需要权限为755,否则显示“配置文件权限错误,无法写入!”。

可以将phpMyAdmin根目录下的config.sample.inc.php复制一份并改名为config.inc.php,即可作为默认的配置文件。

可以通过配置文件对验证方式进行修改,这里就不多介绍了。需要注意的是,如果使用cookie验证方法,则必须在blowfish_secret后面填上任意字母作为短语密码,如果留空会在登陆后报错。

其他部分可以保持不变,也可以根据自己需求修改。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值