How to deploy a website

文/Hanjilong 2015-04-20 21:44:00

注意:以下命令需要在root下执行或者命令前加sudo

一:安装和配置Apache服务

  1. 更新系统库以及安装最新软件
root@Ubuntu1464:~# apt-get update
root@Ubuntu1464:~# apt-get upgrade
  1. 安装Apache2服务
root@Ubuntu1464:~# apt-get install apache2
  1. 编辑Apache的主配置文件,本文我们暂时使用Apache的prefork模式,并且我们将KeepAlive设置为off,具体命令如下:

打开主配置文件:

root@Ubuntu1464:~# vi /etc/apache2/apache2.conf

将KeepAlive设置为off

然后添加模块

StartServers 5 MinSpareServers 6 MaxSpareServers 12 MaxClients 30 MaxRequestsPerChild 3000 然后保存退出”:wq"

Note:名词解释

ServerLimit 默认的MaxClient最大是256个线程,如果想设置更大的值,就的加上ServerLimit这个参数。20000是ServerLimit这个参数的最大值。如果需要更大,则必须编译apache,此前都是不需要重新编译Apache。 生效前提:必须放在其他指令的前面

StartServers 指定服务器启动时建立的子进程数量,prefork默认为5。

MinSpareServers 指定空闲子进程的最小数量,默认为5。如果当前空闲子进程数少于MinSpareServers ,那么Apache将以最大每秒一个的速度产生新的子进程。此参数不要设的太大。

MaxSpareServers 设置空闲子进程的最大数量,默认为10。如果当前有超过MaxSpareServers数量的空闲子进程,那么父进程将杀死多余的子进程。此参数不要设的太大。如果你将该指令的值设置为比MinSpareServers小,Apache将会自动将其修改成"MinSpareServers+1"。

MaxClients 限定同一时间客户端最大接入请求的数量(单个进程并发线程数),默认为256。任何超过MaxClients限制的请求都将进入等候队列,一旦一个链接被释放,队列中的请求将得到服务。要增大这个值,你必须同时增大ServerLimit。

MaxRequestsPerChild 每个子进程在其生存期内允许伺服的最大请求数量,默认为10000.到达MaxRequestsPerChild的限制后,子进程将会结束。如果MaxRequestsPerChild为"0",子进程将永远不会结束。将MaxRequestsPerChild设置成非零值有两个好处: 1.可以防止(偶然的)内存泄漏无限进行,从而耗尽内存。 2.给进程一个有限寿命,从而有助于当服务器负载减轻的时候减少活动进程的数量。

二:配置Apache虚拟主机

  1. 创建并配置虚拟主机管理文件:/etc/apache2/sites-available/royhjldomain.com.conf
vi /etc/apache2/sites-available/royhjldomain.com.conf
<VirtualHost *:80>
     ServerAdmin test@royhjldomain.com
     ServerName royhjldomain
     ServerAlias www.royhjldomain
     DocumentRoot /var/www/html/royhjldomain/public_html/
     ErrorLog /var/www/html/royhjldomain/logs/error.log
     CustomLog /var/www/html/royhjldomain/logs/access.log combined
     <Directory /path/to/public/website/>
        Require all granted
     </Directory>
</VirtualHost>
  1. 创建目录
root@Ubuntu1464:~# mkdir -p /var/www/html/royhjldomain.com/public_html
root@Ubuntu1464:~# mkdir /var/www/html/royhjldomain.com/logs
  1. 使用如下命令将虚拟主机的配置文件从sites-available连接到sites-enabled
root@Ubuntu1464:/var/www/html/royhjldomain.com/logs# a2ensite royhjldomain.com.conf

4. 从新加载Apache服务

root@Ubuntu1464:/var/www/html/royhjldomain.com/logs# service apache2 reload
* Reloading web server apache2

三:安装配置Mysql数据库

  1. 如上图安装过程中会提示你设置Mysqlroot密码,按提示操作设置root密码
    
    ![]()
    
    root@Ubuntu1464:~# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 50 Server version: 5.5.41-0ubuntu0.14.04.1 (Ubuntu) Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
    
    ![]()
    
    进入了数据库交互界面,说明Mysql安装成功
    
    #四:安装配置php
    
    1. 
    

root@Ubuntu1464:~# apt-get install php5 php-pear php5-mysql

2. 
PHP安装成功后配置/etc/php5/apache2/php.ini来设置log

root@Ubuntu1464:~# vi /etc/php5/apache2/php.ini maxexecutiontime = 30 memorylimit = 128M errorreporting = ECOMPILEERROR|ERECOVERABLEERROR|EERROR|ECOREERROR displayerrors = Off logerrors = On errorlog = /var/log/php/error.log registerglobals = Off maxinput_time = 30

3. 
创建log目录,并将目录所有权赋予给Apache用户

root@Ubuntu1464:~# mkdir /var/log/php root@Ubuntu1464:~# chown -R apache:apache /var/log/php

4. 
重新加载Apache服务

root@Ubuntu1464:~# service apache2 reload ```

知识共享许可协议
本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。

最新文章 全部