ubuntu下安装 nginx + php + memcached + mariadb

一,apt-get 安装

一、   环境

ubuntu12.04.4

nginx 1.6.0

mariadb 10.0

 

履新系统补丁

sudo apt-get update

sudo apt-get dist-upgrade -y

 

挂载swap分区

dd if=/dev/zeroof=/media/fasthdd/swapfile.img bs=1024
count=1M

mkswap /media/fasthdd/swapfile.img

sudo vim /etc/fstab

/media/fasthdd/swapfile.img swap swap sw 00

swapon /media/fasthdd/swapfile.img

 

cat /proc/swaps

grep ‘Swap’ /proc/meminfo

 

 

1,安装nginx

二、   安装nginx

wget

sudo apt-key add nginx_signing.key

 

在/etc/apt/sources.list末尾增加

   deb precise
nginx

deb-src precise
nginx

 

sudo apt-get update

sudo apt-get install nginx -y

第一步,安装nginx

sudo apt-get install nginx  

三、   安装PHP

sudo apt-get installpython-software-properties

sudo add-apt-repository ppa:ondrej/php5

sudo apt-get install -y php5
php5-mysqlphp5-fpm

apt-get update
apt-get install nginx
就能够到位安装

不无的安插文件都在/etc/nginx下,虚拟主机配置在/etc/nginx/sites-available下 

四、   安装数据库玛丽亚DB

 

设置数据库玛丽亚DB10.0

sudo apt-get installpython-software-properties
-y

sudo apt-key adv –recv-keys
–keyserverhkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db

sudo add-apt-repository
‘deb precise
main’

 

sudo apt-get update

sudo apt-get install mariadb-server -y

 

查询DB编码

mysql -uroot -p

show variables like ‘character\_set\_%’;

 

sudo vim /etc/mysql/my.cnf

默许UTF8,不用加,加以下会出错

         default-character-set=utf8

init_connect=’SETNAMES utf8′

加入到[mysqld]

lower_case_table_names=1

skip-name-resolve

sudo /etc/init.d/mysql reload

启动nginx:
/etc/init.d/nginx start
接下来就足以访问了, ,
一切平常!假设不可能访问,先不要三番五次,看看是怎么着来头,消除今后再持续。

先后文件在/usr/sbin/nginx 

五、   部署wordpress

下载wordpress的tar包,解压并拷贝至/home/www/www

sudo chown -R nginx:nginx /home/www/www

sudo chmod -R 711 /home/www/www

第二步,安装Php和mysql
安装php和MySQL:
apt-get install php5-cli php5-cgi mysql-server-5.0 php5-mysql

日志放在了/var/log/nginx中 

配置nginx站点

sudo vim /etc/php5/fpm/php.ini

cgi.fix_pathinfo=1

 

sudo vim /etc/php5/fpm/pool.d/www.conf

         user = nginx

group = nginx

                   listen.mode= 0666

 

sudo /etc/init.d/php5-fpm restart

#ubuntu下安装 nginx + php + memcached + mariadb。将socket文件,放在内部存款和储蓄器文件区域,有利于升高质量

 

sudo vim /etc/nginx/conf.d/default.conf

##########################################################

server {

   listen       80;

   server_name  *.aser.me aser.me*.showall.org
showall.org;

root /home/www/www;

        index index.php;

       location = /favicon.ico {

                log_not_found off;

                access_log off;

       }

       location / {

                try_files $uri $uri//index.php?$args
;

       }

       location ~* \.(js|css|png|jpg|jpeg|gif|ico)$
{

                expires max;

                log_not_found off;

       }

    location ~ \.php$ {

                fastcgi_index  index.php;

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

                fastcgi_param  SCRIPT_FILENAME 
/home/www/www$fastcgi_script_name;

       include        fastcgi_params;

    }

   error_page   500 502 503 504  /50x.html;

   location = /50x.html {

       root   /usr/share/nginx/html;

    }

   location ~ /\.ht {

       deny  all;

    }

   location ~* /(?:uploads|files)/.*\.php$
{

       deny all;

    }

}

##########################################################

sudo service php5-fpm restart

sudo service nginx restart

第三步,安装FastCgi和配置
笔者们须要/usr/bin/spawn-fcgi这几个文件,而它是属于lighttpd这几个包里面包车型地铁,所以大家安装lighttpd然后把它设置为开机不运转:

并一度在/etc/init.d/下开创了开发银行脚本nginx 

配置wordpress数据库

sudo vim /etc/hosts

127.0.0.1 dbhost

 

建立wordpress库

mysql -uroot-p

CREATE DATABASE wordpress;

GRANT ALL PRIVILEGES ON wordpress.*
TO”wordpress”@”dbhost” IDENTIFIED BY “password”;

GRANT ALL PRIVILEGES ON wordpress.*
TO”wordpress”@”localhost” IDENTIFIED BY “password”;

GRANT ALL PRIVILEGES ON wordpress.*
TO”wordpress”@”127.0.0.1″ IDENTIFIED BY “password”;

FLUSH PRIVILEGES;

EXIT;

 

布置wordpress连接数据库的音讯

sudo cp -rp wp-config-sample.phpwp-config.php

sudo vim /home/www/www/wp-config.php

define(‘DB_NAME’,’wordpress’);

define(‘DB_USER’,’wordpress’);

define(‘DB_PASSWORD’,’password’);

define(‘DB_HOST’,’dbhost’);

 

更安全更详尽设置参照他事他说加以侦查:

来自为知笔记(Wiz)


apt-get install lighttpd #我们假诺/usr/bin/spawn-fcgi
rcconf
#去掉lighttpd开机自运转——————————————–强烈推荐
修改nginx的布局文件:/etc/nginx/sites-available/default
修改 server_name 192.168.200.100;
修改index的一条龙修改为:
index index.php index.html index.htm;

暗中认可的虚拟主机的目录设置在了/var/www/nginx-default

去掉上面部分的注释并修改为:
location ~ \.php$ {
fastcgi_pass   127.0.0.1:9000;
fastcgi_index  index.php;
fastcgi_param  SCRIPT_FILENAME
/var/www/nginx-default$fastcgi_script_name;
include /etc/nginx/fastcgi_params;

  启动nginx

}

sudo /etc/init.d/nginx start  sudo /etc/init.d/nginx reload

 

 

在server{}钦命义日志文件的职责和对应的格式:
access_log /var/log/nginx/localhost_access.log combined;

2,安装php

 

fpm

access_log off;//表示关闭

sudo apt-get install php5-fpm
/etc/init.d/php5-fpm start

 

or fcgi

重复开动nginx:
/etc/init.d/nginx stop
/etc/init.d/nginx start

sudo apt-get install php5-cli php5-cgi php5-mysql  

启动fastcgi php:
spawn-fcgi -a 127.0.0.1 -p 9000 -C 10 -u www-data -f /usr/bin/php-cgi

 

 
以下步骤笔者平素运营rcconf设置php-cgi为开机自运行就可以,所以跳过
—————————————为了让php-cgi开机自运行:
cd /etc/init.d
cp nginx php-cgi
vim php-cgi

3,安装FastCgi

替换nginx为php-cgi

 apt-get install php5-cgi

并修改相应部分为:
DAEMON=/usr/bin/spawn-fcgi
DAEMON_OPTS=”-a 127.0.0.1 -p 9000 -C 10 -u www-data -f
/usr/bin/php-cgi”

stop)
        echo -n “Stopping $DESC: “
        pkill -9 php-cgi
        echo “$NAME.”

也足以再安装spawn-fcgi,spawn-fcgi是fastcgi的管理程序,从Lighthttpd独立出来的品种。实际运维中能够使用php-fpm(php的fastcgi
php manager). php 5.3.3中自带php-fpm,但本人后天的本子是php 5.3.2.


采用spawn-fcgi执行

安装 sysv-rc-conf

sudo /usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 5 -u www-data -g www-data -f /usr/bin/php5-cgi -P /var/run/fastcgi-php.pid

运行 sysv-rc-conf php-cgi on

参数意义:

在/var/www/nginx-default/目录下创办贰个文书: 
/var/www/nginx-default/index.php
文件内容是:

* -f 指定调用FastCGI的进程的执行程序位置,根据系统上所装的PHP的情况具体设置   * -a 绑定到地址addr   * -p 绑定到端口port   * -s 绑定到unix socket的路径path   * -C 指定产生的FastCGI的进程数,默认为5(仅用于PHP)   * -P 指定产生的进程的PID文件路径   * -u和-g FastCGI使用什么身份(-u 用户 -g 用户组)运行,Ubuntu下可以使用www-data,其他的根据情况配置,如nobody、Apache等

< ?php phpinfo();?>

重启fcgi

然后浏览器访问nginx就足以观望一切符合规律了

php-cgi: 先杀死进度

 

sudo killall -HUP php5-cgi

————————————————————END 安装成功

再启动fcgi

 

4,配置nginx支持php

陈设文件目录 /etc/nginx/    nginx.conf     /sites-available/default

修改nginx的安插文件:/etc/nginx/sites-available/default 修改主机名:

www目录 /var/www/nginx-default/

server_name localhost;

 

修改index的一条龙修改为:

启动fastcgi php:
spawn-fcgi -a 127.0.0.1 -p 9000 -C 10 -u www-data -f /usr/bin/php-cgi

index index.php index.html index.htm;

 

去掉下面部分的注释用于扶助 php 脚本:

 

location ~ \.php$ {      fastcgi_pass 127.0.0.1:9000; #      fastcgi_index index.php;      fastcgi_param SCRIPT_FILENAME /var/www/nginx-default$fastcgi_script_name;      include /etc/nginx/fastcgi_params;  }

日志文件:

再度启航nginx:

localhost.access.log  /var/log/nginx/localhost.access.log

/etc/init.d/nginx stop  /etc/init.d/nginx start

access.log  /var/log/nginx/access.log

启动fastcgi php:

error.log    /var/log/nginx/error.log

sudo /usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 5 -u www-data -g www-data -f /usr/bin/php5-cgi -P /var/run/fastcgi-php.pid

 

6,安装memcached服务端

 

sudo apt-get install memcached  

—————重定向nginx错误页面包车型大巴办法

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图