虚拟机之 LNMP
LNMP就是Linux nginx mysql php
一、mysql
下载安装mysql转至 LAMP (点击“LAMP”即可跳转)
也可以从快照跳转至mysql安装ok
二、php
下载同上,
1.安装
cd /usr/local/src/
tar zxvf php-5.6..tar.gz
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --with-fpm-user=php-fpm --with-fpm-group=php-fpm --with-mysql=/usr/local/mysql --with-mysql-sock=/tmp/mysql.sock --with-libxml-dir --with-gd--with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-ftp --enable-mbstring --enable-exif --enable-zend-multibyte --disable-ipv6 --with-pear --with-curl --with-openssl
把lamp的错误解决方法yum安装完之后,新的错误解决方法
错误1
configure: error: no acceptable C compiler found in $PATH
配置:错误:不接受C编译器中发现路径
解决
yum install gcc -y
错误2
configure: error: Please reinstall the libcurl distribution -
easy.h should be in <curl-dir>/include/curl/
配置:错误:请重新安装libcurl分布-
一件容易的事。在< curl-dir > / h应该包括/卷/
解决
yum -y install curl-devel
echo $?
make
echo $?
make install
echo $?
make install 之前,如果已经安装过在php,同样指定的目录位/usr/local/php,可以把原来的删掉,or,挪个位置。
2.配置文件,启动脚本
cp php.ini-production /usr/local/php/etc/php.ini
配置文件
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
启动脚本
chmod 755 !$
执行权限
chkconfig --add php-fpm
chkconfig php-fpm on
开机启动
cd /usr/local/php/etc/
mv php-fpm.conf.default php-fpm.conf
配置文件
useradd -s /sbin/nologin -M php-fpm
用户,编译的时候指定的user group
service php-fpm start
启动
拍摄快照:备注LNMP php安装ok
php安装成功
三、nginx
1.下载
cd /usr/local/src/
wget http://mirrors.sohu.com/nginx/nginx-1.9.8.tar.gz
2.安装
tar zxvf nginx-1.9..tar.gz
./configure --prefix=/usr/local/nginx --with-pcre
pcre 正则
错误1
./configure: error: the HTTP rewrite module requires the PCRE library.
。/配置:错误:HTTP重写模块需要PCRE库。
解决
yum -y install pcre-devel
echo $?
make
echo $?
make install
echo $?
3.启动
/usr/local/nginx/sbin/nginx
shell脚本安装
vim nginx_install.sh
#! /bin/bash
cd /usr/local/src/
yum install wget -y
wget http://mirrors.sohu.com/nginx/nginx-1.9.8.tar.gz
tar zxvf nginx-1.9..tar.gz
yum -y install pcre-devel
yum install -y zlib-devel
yum -y install gcc
cd nginx-1.9.
./configure --prefix=/usr/local/nginx --with-pcre
make && make install
nginx安装ok
四、关联php和nginx
php和nginx不能联系到一起,需要手动修改配置文件。
1.nginx
vim /usr/local/nginx/conf/nginx.conf
找到
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#}
改为
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
2.防火墙
vim /etc/selinux/config
找到
SELINUX=enforcing
改为
SELINUX=disabled
setenforce
iptables -F
service iptables save
详细说明见LAMP 四、php 8-9小节
3.浏览器访问
192.168.1.116
Welcome to nginx!
If you see this page, the nginx web server is successfully installed and working. Further configuration is required.
For online documentation and support please refer to nginx.org.
Commercial support is available at nginx.com.
Thank you for using nginx.
4.测试解析php
vim /usr/local/nginx/html/info.php
<?php
phpinfo();
?>
http://192.168.1.116/info.php
php解析ok
五、nginx启动脚本
nginx启动重启非常不方便,手动写一个nginx启动脚本。
1.启动脚本
vim /etc/init.d/nginx
#!/bin/bash
# chkconfig: -
# description: http service.
# Source Function Library
. /etc/init.d/functions
# Nginx Settings NGINX_SBIN="/usr/local/nginx/sbin/nginx"
NGINX_CONF="/usr/local/nginx/conf/nginx.conf"
NGINX_PID="/usr/local/nginx/logs/nginx.pid"
RETVAL=
prog="Nginx" start() {
echo -n $"Starting $prog: "
mkdir -p /dev/shm/nginx_temp
daemon $NGINX_SBIN -c $NGINX_CONF
RETVAL=$?
echo
return $RETVAL
} stop() {
echo -n $"Stopping $prog: "
killproc -p $NGINX_PID $NGINX_SBIN -TERM
rm -rf /dev/shm/nginx_temp
RETVAL=$?
echo
return $RETVAL
} reload(){
echo -n $"Reloading $prog: "
killproc -p $NGINX_PID $NGINX_SBIN -HUP
RETVAL=$?
echo
return $RETVAL
} restart(){
stop
start
} configtest(){
$NGINX_SBIN -c $NGINX_CONF -t
return
} case "$1" in
start)
start
;;
stop)
stop
;;
reload)
reload
;;
restart)
restart
;;
configtest)
configtest
;;
*)
echo $"Usage: $0 {start|stop|reload|restart|configtest}"
RETVAL=
esac exit $RETVAL
chmod !$
chkconfig --add nginx
chkconfig nginx on
2.配置文件
默认的配置文件不完美,手动写一个,
全局的配置,删掉原来的东西
vim /usr/local/nginx/conf/nginx.conf
user nobody nobody;
worker_processes ;
error_log /usr/local/nginx/logs/nginx_error.log crit;
pid /usr/local/nginx/logs/nginx.pid;
worker_rlimit_nofile ; events
{
use epoll;
worker_connections ;
} http
{
include mime.types;
default_type application/octet-stream;
server_names_hash_bucket_size ;
server_names_hash_max_size ;
log_format combined_realip '$remote_addr $http_x_forwarded_for [$time_local]'
'$host "$request_uri" $status'
'"$http_referer" "$http_user_agent"';
sendfile on;
tcp_nopush on;
keepalive_timeout ;
client_header_timeout 3m;
client_body_timeout 3m;
send_timeout 3m;
connection_pool_size ;
client_header_buffer_size 1k;
large_client_header_buffers 4k;
request_pool_size 4k;
output_buffers 32k;
postpone_output ;
client_max_body_size 10m;
client_body_buffer_size 256k;
client_body_temp_path /usr/local/nginx/client_body_temp;
proxy_temp_path /usr/local/nginx/proxy_temp;
fastcgi_temp_path /usr/local/nginx/fastcgi_temp;
fastcgi_intercept_errors on;
tcp_nodelay on;
gzip on;
gzip_min_length 1k;
gzip_buffers 8k;
gzip_comp_level ;
gzip_http_version 1.1;
gzip_types text/plain application/x-javascript text/css text/htm application/xml;
include vhosts/*.conf;
}
虚拟主机的配置
cd /usr/local/nginx/conf/
mkdir vhosts
cd vhosts/
server
{
listen default_server;
server_name localhost;
index index.html index.htm index.php;
root /tmp/; } ##不管主机访问什么域名都会走这个配置,限制访问403
mkdir /tmp/
/usr/local/nginx/sbin/nginx -t
检查配置文件
/etc/init.d/nginx reload
重新加载
curl -x127.0.0.: www.qq.com
测试默认虚拟主机配置,写什么域名都是
vim vhosts2.conf
server
{
listen ;
server_name .com;
index index.html index.htm index.php;
root /data/www; location ~ \.php$ {
include fastcgi_params;
# fastcgi_pass unix:/tmp/php-fcgi.sock;
fastcgi_pass 127.0.0.1:;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /data/www$fastcgi_script_name;
} }
server_name 111.com 指定域名
root /data/www root的目录
fastcgi_pass 127.0.0.1:9000;两种形式sockt和ip+端口。如果502,那就是因为这个socket文件的权限不能让nginx用户读到,办法是在php-fpm.conf配置文件中指定一下socket文件的权限: listen.mode=644
fastcgi_param SCRIPT_FILENAME /data/www$fastcgi_script_name; 也要指定路径
/usr/local/nginx/sbin/nginx -t
/etc/init.d/nginx reload
虚拟机之 LNMP的更多相关文章
- Win10 VirtualBox虚拟机搭建lnmp环境
之前用的是vagrant+VirtualBox搭建的环境,因为是windows系统动不动就报错,打不开环境,所以还是老老实实换了虚拟机哎.... 版本: VirtualBox 5.1.34 xsh ...
- VM虚拟机 Centos7 lnmp环境 配置域名问题 windows浏览器访问的问题
CentOS7 ip地址为 192.168.0.155 搭有 LNMP集成环境 执行 lnmp vhost add 配置服务器 指定目录的域名 mark.com 这时windows 机器的 浏览器想 ...
- 关于本地代码挂载到vm虚拟环境下运行
第一步: 首先你得装个 VM 虚拟机 然后新建一个Linux虚拟环境(建议CentOS镜像)(PS:至于安装此处就省略.....) 第二步:启动虚拟机配置 lnmp (这里我们可以使用 lnmp的 ...
- LNMP虚拟机开发环境配置--vagrant+virtualbox+ubuntu14.04
工作一直用的是别人打包好的虚拟机开发环境,感觉确实很酷.所以准备自己配个开发环境,为之后自己开发一些有趣的东西做准备. ok,开始~~~ 一.安装软件 vagrant和virtualbox 此处需注意 ...
- CentOS7 LNMP+phpmyadmin环境搭建(一、虚拟机及centos7安装)
前一阵子配公司的服务器的时候,发现网上好多教程杂乱无章,然后便根据网上已有资料自己整理了一个lnmp环境的安装教程.因为懒,已经好久没写过博客了.趁着这次公司招新人,把之前整理的文档又整理了一次,顺便 ...
- WIN10 vagrant和virtualbox虚拟机和一键搭建lnmp环境配置thinkphp虚拟主机
版本:win10系统 virtualbox:5.1.26 vagrant :1.9.7 centos 7.0 xshell/git 首先下载好对应版本的软件 配置vagrant和virtualbox ...
- lnmp手动新建虚拟机
1.在home/wwwroot/zhongjie 新建zhongjie文件夹 2.在usr/local/nginx/conf/vhost/zhongjie.conf 新建配置文件zhongj ...
- VMware虚拟机基于contos 7 搭建lnmp环境全过程
这个环境也整了几次了,由于本人比较懒,没有记住.找资料很麻烦,就自己动手咯 1.下载VMware虚拟机 (有注册码) 地址:http://www.zdfans.com/5928.html ...
- 本地虚拟机LNMP环境安装
首先上传源码包到linux中(本人上传到根目录中),随意上传能找到即可 一.配置YUM源(如果已经配好就不许要重新配置) 挂载光驱要挂载到/mnt下 Mount /dev/cdrom /mnt ...
随机推荐
- 2017.11.2 Talk to customers for an hour
yesterday::: Hi Huang, For the better performance of the test the Con 6 should be connected all the ...
- vsftpd的530 Login incorrect错误解决方法 vsftpd登录错误
530 Login incorrect只有用匿名anonymous才可登录,其余所有用户都报530 Login incorrect错 复制代码 代码如下: local_enable=YESwrite_ ...
- laravel5表单验证
学习laravel框架有一段时间了,觉得它自带的表单验证特别好用,和大家分享分享 对于一些验证规则手册上都有,相信大家看了就会,我简单的说下怎么使用自定义正则验证: 验证手机号:'tel' => ...
- 手把手教你怎么用ArcgisOnline发布地图服务
Arcgis推出了Arcgis Online,但是大家都不知道这是个什么东西,怎么用这个东西,今天这篇文章手把手的教你如何使用Arcgisonline发布地图服务. 一.ArcgisOnline简介 ...
- 数据展示Matplotlib
主要内容是Matplotlib库的基本使用和方法 1 Matplotlib库 1.1 Matplotlib的介绍 Python优秀的数据可视化第三方库 数据可视化就是将数据以特定的图形图像的方式展示出 ...
- linux 备份svn
下面具体描述备份的方法: =============== 1.svnadmin dump备份工具 ------------------------ 这是subversion官方推荐的备份方式. ...
- linux进程通信全面解析
进程IPC 的 7种方式 linux下 进程通讯IPC的方式主要有以下7种: 1.文件 2.共享内存 3.信号 4.管道 5.套接字 6.消息列队 7.信号量 以下正文 中 一一 分析下: 1 ...
- 使用WPScan破解wordpress站点密码
我这里使用的Kali Linux,它默认安装了WPScan. 在使用WPScan之前,先更新它的漏洞数据库: # wpscan –update 扫描wordpress用户 wpscan -–url [ ...
- Python之functools库
functools库用于高阶函数,指那些作用于函数或者返回其他函数的函数 functools提供方法如下: cmp_to_key 将一个比较函数转换关键字函数 partial 针对函数起作用,并且是部 ...
- 互联网公司面试必问的mysql题目(上)
又到了招聘的旺季,被要求准备些社招.校招的题库.(如果你是应届生,尤其是东北的某大学,绝对福利哦) 介绍:MySQL是一个关系型数据库管理系统,目前属于 Oracle 旗下产品.虽然单机性能比不上or ...