您的位置:首页 > 运维架构 > Nginx

Linux下Nginx、MySQL、PHP5、phpMyAdmin安装与配置

2016-12-03 19:04 591 查看
以前在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的部分):

修改前:(配置文件默认的,找找就有了)

#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;
#}
修改为:(修改后,与上面对比吧,去了哪个#号,自己看看)

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;
}
注意:千万不要忘了取消掉前后大括号所在行的注释!我就是在这里耽误了很久时间的。

此外,要注意fastcgi是使用的9000端口,还是sock的形式。网上很多教程都是用的9000端口那行,而在我的实际操作中发现netstat -nat | grep php得到的是sock这种。我这里安装的PHP版本是5.4的,不知其他版本情况。
4.删除如下一段的注释(下面为删除后的代码):

# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
location ~ /\.ht {
deny all;
}


6.测试Nginx与PHP

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

<?php phpinfo(); ?>

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

7.phpMyAdmin的安装

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

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

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

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

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

原文地址:Linux下Nginx、MySQL、PHP5、phpMyAdmin安装与配置
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: