LNMP安装实践
来源:互联网 发布:网络攻击 论文 编辑:程序博客网 时间:2024/06/05 13:06
内核版本 : uname -a ... 3.5.0-17-generic
首先了解nginx安装之后的文件结构,大致为:
所有的配置文件都在/etc/nginx下,并且每个虚拟主机已经安排在了/etc/nginx/sites-available/defualt下
程序文件在/usr/sbin/nginx
日志放在了/var/log/nginx中
并已经在/etc/init.d/下创建了启动脚本nginx
默认的虚拟主机的目录设置在了/var/www/nginx-default (有的版本 默认的虚拟主机的目录设置在了/var/www, 请参考/etc/nginx/sites-available里的配置)
1 安装nginx
sudo apt-get install nginx
安装 nginx 成功以后 , 启用 nginx,sudo /etc/init.d/nginx start启动成功 , 会显示 : starting nginx:nginx
( 也可以用 startx 命令 , 进入 Ubuntu 的桌面窗口 , 用火狐浏览器访问 127.0.0.1 , 会显示 Welcome to nginx , 可手动修改 nginx 的端口号信息 ,
打开 /etc/nginx/sites-available/default 文件 , 要对这个文件进行修改 , 我用的不是 root 账号 , 所以要提前用命令获取对 /etc/nginx/sites-available/ 文件夹的 写权限 , 命令为 : sudo chmod -R 777 /etc/nginx/sites-available
取得权限以后 , 进行修改 , 具体的修改 server{ } 里的内容
去掉 listen 前面的 # 号 , # 号在该文件里是注释的意思 , 并且把 listen 后面的 80 端口号改为 8001
root /usr/share/nginx/www 这句的意思是指明了 nginx 的默认站点文件夹 ,我把这行前面加了个 # 号 , 也就是给注释掉 , 重新写了一行 root /var/www/nginx , 因为 apache 的默认站点文件夹是 /var/www , 我就在 www 里见了一个 nginx 文件夹 , 专门放 nginx 的站点 , 要在 var/www 目录下操作 , 注意权限问题 .
修改了 nginx 的端口号以后 , 访问 nginx 的站点必须加上端口号 8001 : http://127.0.0.1:8001)
2 安装 PHP
sudo apt-get install php5-cli php5-cgi mysql-server php5-mysql php5-fpm
配置php-fpm
sudo vim /etc/php5/fpm/php.ini
找到
;cgi.fix_pathinfo=1
选项, 修改为:
cgi.fix_pathinfo=1
启动 nginx 和 php-fpm
sudo service nginx starts
sudo service php5-fpm start
3 安装 mysql
sudo apt-get install mysql-server
安装过程中输入root密码
4 安装 FastCgi (spawn-fcgi)
/usr/bin/spawn-fcgi这个文件来管理 FastCgi,它原属于lighttpd这个包里面,但 9.10 后,spawn-fcgi 被分离出来单独成包:
sudo apt-get install spawn-fcgi
5 所有的 安装 已经完成了 , 接下来配置 nginx 对 php 的支持
打开 /etc/nginx/sites-available/default 文件 , 找到 server{} 里的 location ~\.php${} , 把整段代码前面的 # 号给去掉 , 并修改为如下
location ~\.php${
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/nginx$fastcgi_script_name; #此处路径为 nginx 的站点文件夹
include /etc/nginx/fastcgi_params;
}
至此 , 基本配置已经完成 , 但是如果 Ubuntu 重启 , 那么 fastcgi 不会自动启用 , 切换到命令窗口 , 用命令
重启 nginx 和 fastcgi php
sudo /etc/init.d/nginx restart
spawn-fcgi -a 127.0.0.1 -p 9000 -C 10 -u www-data -f /usr/bin/php-cgi
php-fpm的启动、停止和重启:
/etc/init.d/php-fpm start
/etc/init.d/php-fpm stop
/etc/init.d/php-fpm reload
这样很累 , 需要每次重启 Ubuntu , 都要手动启用下 fastcgi ,
fastcgi 启动成功 , 会输出 spawn-fcgi : child spawned successfully : PID xxxx
5 测试php
建立一个测试页面:
sudo vi /usr/share/nginx/www/index.php
在测试页面index.php中加入以下代码:
<?php phpinfo();?>
重启nginx
sudo /etc/init.d/nginx restart
浏览器输入以下地址,看看有没有安装成功!
http://localhost/test.php
6 测试php与mysql的连接
建立测试页面
sudo vi /usr/share/nginx/www/testmysql.php
在测试页面index.php中加入以下代码:
<?php
$link = mysql_connect('localhost','root','root');
if(!$link) echo mysql_error();
else echo "ok!";
mysql_close();
?>
重启nginx
sudo /etc/init.d/nginx restart
浏览器输入以下地址,看看有没有安装成功!
http://localhost/testmysql.php
注:
pgrep mysqld查看mysql是否开启,返回进程id
当出现此问题:当提示Host '192.168.83.84 is not allowed to connect to this MySQL server
解决办法:
mysql -uroot -p -h localhost #进入mysql -u root -p
use mysql
select host,user,password from user;
#查看表中用户,是否与测试文件匹配。我之前直接用的是ip地址,连接不成功,将ip换成localhost
sudo start mysql
#重新启动mysql ,连接成功
附加信息:
默认安装的mysql,其路径为/usr/share/mysql; 其配置文件:/etc/mysql/my.cnf ; 数据文件存放路径在 datadir 参数中,我的机器为datadir = /var/lib/mysql
如果你创建了一个名为 test 的数据库,那么这个数据库的数据会存放到 /var/lib/mysql/test 目录下。
- LNMP安装实践
- LNMP安装实践
- 腾讯云centos7 安装lnmp实践
- 实践centos6.5编译安装LNMP架构web环境
- 实践centos6.5编译安装LNMP架构web环境
- 实践centos6.5编译安装LNMP架构web环境
- 安装lnmp
- LNMP安装
- 安装 lnmp
- LNMP安装
- lnmp安装
- LNMP安装
- lnmp安装
- LNMP 安装
- 安装lnmp
- lnmp安装
- lnmp安装
- 简单LNMP安装脚本
- YII 框架 第六天(3) 注册单 验证 + jquery 前端
- struts拦截器
- Sencha 公开视频汇总
- 获得Erlang的home路径的方法
- 【LeetCode】Reverse Integer解题笔记
- LNMP安装实践
- opencv的分水岭分割
- 关于精简JRE文件之精简rt.jar包
- 教你如何成为数据科学家(三)
- AMD平台 安装完Oracle grid运行root.sh出错 故障解决
- __FILE__,__LINE__,__DATE__,__TIME__,__FUNCTION__
- 业内首套UCGUI的视频教程
- 详细解说 STL 排序(Sort)
- VC/MFC 通过结构体传递参数给线程