分类 学习lnmp 下的文章

1、

  sudo apt-get install nginx php5-fpm

然后编辑配置文件。

  sudo gedit /etc/nginx/site-available/default

注意,如果是用gedit而不是用vi编辑,那应该编辑site-available下的default文件,如果是编辑site-enabled下的default,因为gedit保存时默认会生成一个“default~”的备份,这个备份也会被nginx当成启用的配置文件而出错无法启动。保险的做法是,编辑site-available下的文件后仍手动删除备份文件。

找到location ~ .php$的地方,5行取消注释,变成这样:

  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:

  sudo service nginx start

扩展:

  1. default文件中,找到
    index index.html index.htm;

这行,加入成

  index index.html index.htm index.php;

这就可以用php文件做默认主页

2.default文件中,在server{}指示符的 location / {} 指示符内,加入

  autoindex on;

当文件夹内没有index文件,就会自动索引文件。

  1. server{} 指示符的 root 行是文件根目录,自行修改就能把那个文件夹作为网站根目录

参考:http://ubuntuhandbook.org/index.php/2013/10/install-nginx-php5-mysql-lemp-ubuntu-1310/

转载请注明出处:http://blog.csdn.net/hursing

安装MySQL
要安装 MySQL,可以在终端提示符后运行下列命令:

  sudo apt-get install mysql-server mysql-client #中途会让你输入一次root用户密码
  sudo apt-get install php5-mysql  #安装php5-mysql 是将php和mysql连接起来

一旦安装完成,MySQL 服务器应该自动启动。

  sudo start mysql #手动的话这样启动
  sudo stop mysql #手动停止

当你修改了配置文件後,你需要重启 mysqld 才能使这些修改生效。

要想检查 mysqld 进程是否已经开启,可以使用下面的命令:

  pgrep mysqld

如果进程开启,这个命令将会返回该进程的 id。

文件结构
MySQL配置文件:/etc/mysql/my.cnf ,其中指定了数据文件存放路径

  datadir         = /var/lib/mysql

如果你创建了一个名为 test 的数据库,那么这个数据库的数据会存放到 /var/lib/mysql/test 目录下。

进入MySQL

  mysql -uroot -p 

(输入mysql的root密码)

  qii@ubuntu:~$ mysql -u root -p
  Enter password: 
  Welcome to the MySQL monitor.  Commands end with ; or \g.
  Your MySQL connection id is 37
  Server version: 5.1.41-3ubuntu12.3 (Ubuntu)

  Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

  mysql> 

修改 MySQL 的管理员密码:

  sudo mysqladmin -u root password newpassword;

简单的操作

显示数据库:

mysql> show databases;
Database
information_schema
mysql

2 rows in set (0.00 sec)

phpmyadmin管理
用随便一个支持PHP的web服务器(如Apache、Nginx、Lighttpd),下载phpmyadmin,装之。

  sudo apt-get install phpmyadmin  #注意这是安装到/usr/share/phpmyadmin

在ubuntu下,运行:

  sudo apt-get install phpmyadmin

过一会后会有一些设置,如选择服务器(选apache别选lighttpd)、密码设定等等内容。安装完成后,访问http://localhost/phpmyadmin会出现404错误,这是因为没有将phpmyadmin目录映射到apache目录下面,运行下面命令即可:

nginx服务器用:

  sudo ln -s /usr/share/phpmyadmin /usr/share/nginx/html

apache服务器用:

  sudo ln -s /usr/share/phpmyadmin /var/www

最后打开:http://localhost/phpmyadmin 成功!

OS:ubuntu 14.04 server+desktop
nginx官网下载http://nginx.org/en/download.html,解压后./configure报错:
1、提示缺少pcre然后官网下载回来后./configure --prefix=/usr/local/pcre然后make -j4&& make install安装到默认的/usr/local/;
2、提示缺少zlib同样官网下载回来后./configure --prefix=/usr/local/zlib然后make -j4&& make install安装到默认的/usr/local/;
3、提示缺少openssl同样官网下载回来后./config --prefix=/usr/local/openssl然后make -j16&& make install安装到默认的/usr/local/;

4、用sudo su进入root超级管理员权限后:

a)

  ./configure --with-pcre=/usr/local/pcre --with-zlib=/usr/local/zlib --with-openssl=/usr/local/openssl

b)

  make -j4&& make install

安装成功提示:

  Configuration summary
    + using PCRE library: /usr/local/
    + using OpenSSL library: /usr/local/
    + using zlib library: /usr/local/

    nginx path prefix: "/usr/local/nginx"
    nginx binary file: "/usr/local/nginx/sbin/nginx"
    nginx modules path: "/usr/local/nginx/modules"
    nginx configuration prefix: "/usr/local/nginx/conf"
    nginx configuration file: "/usr/local/nginx/conf/nginx.conf"
    nginx pid file: "/usr/local/nginx/logs/nginx.pid"
    nginx error log file: "/usr/local/nginx/logs/error.log"
    nginx http access log file: "/usr/local/nginx/logs/access.log"
    nginx http client request body temporary files: "client_body_temp"
    nginx http proxy temporary files: "proxy_temp"
    nginx http fastcgi temporary files: "fastcgi_temp"
    nginx http uwsgi temporary files: "uwsgi_temp"
    nginx http scgi temporary files: "scgi_temp"

最后,使用pgrep检验是否成功:pgrep nginx返回行号进程ID即可。
完毕!

Odoo多个二级域名对应多个Pgsql数据库访问【作业】

前段时间-福州小林在Jeffery群里问到说要多域名访问odoo对应多数据库,按照网上教程修改odoo源码找不到对应的修改的地方,网上教程的源码是旧源码,新版本odoo已经不需要修改源码,感谢南京CCDOS指点迷津!

举例:

想用aaa.odoo123.com访问odoo中的aaa数据库,
想用bbb.odoo123.com访问odoo中的bbb数据库。

1、修改openerp-server.conf文件,增加一行:dbfilter = ^%d$

如下图所示:

2、http://127.0.0.1:8069/web/database/manager并创建aaa和bbb两个(操作两次)数据库:

3、打开C:\WINDOWS\system32\drivers\etc\hosts在此文件中增加两行:

127.0.0.1 aaa.odoo123.com
127.0.0.1 bbb.odoo123.com

效果如下图:
4、访问aaa.odoo123.com

5、访问bbb.odoo123.com

6、如果访问了一个odoo里没有的数据库那么会跳转至新创建数据库的页面:

声明:

1、以上方法基于win2003server+步科绿色版GreenOdoo,以上方法成功。
2、在阿里云服务器+LNMP(启用nginx的gzip及反向代理了odoo的8069端口)前提下,以上方法失败。

需要搭个开发环境就折腾了以下笔记:

1、命令:
docker pull ubuntu:14.04
用docker images可以看到pull回来的images镜像如下:

2、运行这个ubuntu 14并进到shell里:
docker run -i -t --name lnmp ubuntu:14.04 /bin/bash

然后按照lnmp.org的安装说明去安装即可。

3、本人这里修改了ubuntu 14的安装源改为cn的,默认是ubuntu.com的,vi用得不熟悉啊!批评自己了。

lnmpp安装:
wget -c http://soft.vpser.net/lnmp/lnmp1.2-full.tar.gz && tar zxf lnmp1.2-full.tar.gz && cd lnmp1.2-full && ./install.sh lnmp
如果速度很慢就ctrl+c中断,再更换速度快的源来安装lnmp如下:
wget -c https://api.sinas3.com/v1/SAE_lnmp/soft/lnmp1.2-full.tar.gz --no-check-certificate && tar zxf lnmp1.2-full.tar.gz && cd lnmp1.2-full && ./install.sh lnmp

-------------------
最新稳定版本:

LNMP 1.2

下载版:http://soft.vpser.net/lnmp/lnmp1.2.tar.gz (107KB)
MD5:4be72b49b67605477871d3f9676ca52f
完整版:http://soft.vpser.net/lnmp/lnmp1.2-full.tar.gz (312MB)
MD5:b3d3d9e40395f4eb5e525adfaabfb675
国内下载地址:
https://api.sinas3.com/v1/SAE_lnmp/soft/lnmp1.2-full.tar.gz 下载时wget需要加--no-check-certificate参数
http://static.suod.ga/lnmp/lnmp1.2-full.tar.gz
新加坡:http://oah.vpser.net/lnmp1.2-full.tar.gz
最后更新: 2015年7月24日17:34 GMT+8
-------------------
注:期间如果有需要退出按 Ctrl+P+Q,重新进入容器需要docker attach IMAGE ID
安装完成后退出按 Ctrl+P+Q,然后用commit命令制作images:
$ docker commit -m="lnmp" -a="liangjia" 104569b342fd liangjia/lnmp:v1
再docker images看看是否成功生成images了:
root@server:/home# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
liangjia/lnmp v1 cd02de77b52b About a minute ago 4.158 GB
成功!

最后用命令run启动这个images镜像:
$docker run -i -t --name liangjia_lnmp liangjia/lnmp:v1 /bin/bash

如何通过docker容器安装LNMP服务器环境
时间:2014-11-17 来源:服务器之家 投稿:root
安装 系统环境

硬件型号: ThinkPad T520

系统版本: ubuntu 14.04

CPU: i7

RAM: 8G
添加软件源

由于Ubuntu源中的最先版本为0.9无法满足要求,所以需要使用Docker的官方源
添加密钥:
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80
--recv-keys \
36A1D7869245C8950F966E92D8576A8BA88D21E9
源地址: deb http://get.docker.io/ubuntu docker main
添加源可以通过"软件和更新->其它软件->添加"来操作
添加后执行如下命令:
$ sudo apt-get update
$ sudo apt-get install lxc-docker-1.1.1

注: 官方给出的源地址为https连接的,但是总是出现ssl验证失败的错误,最后改为非
ssl连接之后正常
测试

执行如下命令获取容器镜像,创建一个实例并打开一个实例shell
$ sudo docker run -t -i centos:latest /bin/bash

注:第一次运行由于需要下载镜像可能需要多等一会儿
运行成功后会有一个新的shell提示符
制作镜像 要求

web容器安装Nginx+PHP服务

数据库容器安装Mysql服务

web服务和数据库分离

web服务容器可以访问数据库容器
制作nginx+php镜像

启动一个容器实例:
$ sudo docker run -t -i centos:latest /bin/bash
安装nginx与PHP:
Nginx可以使用源码或rpm包进行安装,PHP可以使用源码或yum安装.具体安装和配置这里
不进行具体讲述.

注:需要把nginx与php-fpm添加到系统服务中并设置开机启动
我设置的站点根目录为/opt/web

退出shell并执行如下命令制作镜像:
$ sudo docker commit -m="web service image nginx+php" -a="username" \
sudo docker ps -lq username/web:v1

这是一个组合命令:
sudo docker commit根据已有实例制作镜像
sudo docker ps -lq返回最后一个运行的实例id
已有镜像可以使用sudo docker images 查看
至此创建了第一个镜像 username/web:v1
制作mysql镜像

启动实例:
$ sudo docker run -t -i centos:latest /bin/bash
安装Mysql.
设置Mysql服务开机启动:
$ chkconfig mysqld on
启动mysql.
修改mysql登陆权限:
mysql> grant all privileges on . to 'root'@'%'
identified by 'dbpasswd';
mysql> flush privileges;

mysql服务默认只能本地连接,制作镜像的时候需要注意.否则是无法连接到数据库的.

退出shell并执行如下命令制作mysql容器镜像:
$ sudo docker commit -m="mysql service image" -a="username" \
sudo docker ps -lq username/mysql:v1

清除不再需要的实例:
$ sudo docker rm sudo docker ps -aq
启动并关联实例

web实例依赖与mysql,所以先打开一个mysql实例:
$ sudo docker run -d --name db username/mysql:v1
/sbin/init

-d参数是让实例以dameon的形式运行. /sbin/init是创建实例后执行的操作,此处为初
始化系统服务,包括运行mysql.

启动web实例并与数据库实例进行关联:
$ sudo docker run -d --name web --link db:db -p 8080:80 -v /path/to/src:/opt/web username/web:v1 /sbin/init

--link参数设置关联的容器,可以设置多个.关联之后会自动更新web容器的host,把db
的地址指向到数据库容器的地址.
-p 参数用来进行ip映射.此处把容器的80端口映射到了本地的8080端口.web服务可是
通过localhost:8080访问.
-v 参数把数据挂载到容器指定目录.此处为把站点源码目录挂载到容器的站点目录.
在web容器中访问数据库容器的mysql服务可以使用db这个主机地址.

转载请注明原文地址:http://www.server110.com/docker/201411/11070.html