第一部分:服务器配置php
服务器配置以下:双核,4G内存,流量按带宽付费,安装完成后,SSH是被默认安装了的html
更新与升级源:mysql
sudo apt-get upgradelinux
sudo apt-get update web
一个升级源,一个更新源,执行顺序是有必定的讲究的redis
若是记不住执行顺序,反复都执行一遍sql
另外,阿里云有些源是不通的,这个不要紧,不用去管数据库
第二部分:安装LAMP环境apache
1:安装apacheubuntu
sudo apt-get install apache2
安装完成后,程序被安装在:/etc/apache2,apache的各类配置也是在这个目录里修改
www目录呗安装在/var/www/html
浏览器访问服务器:会出现/var/www/html/index.html中的内容
以命令:ps -aux 查看系统中的进程,会发现以下三条
root 3531 0.0 0.0 71516 2596 ? Ss 13:03 0:00 /usr/sbin/apache2 -k start
www-data 3533 0.0 0.1 426304 4844 ? Sl 13:03 0:00 /usr/sbin/apache2 -k start
www-data 3534 0.0 0.1 491840 4856 ? Sl 13:03 0:00 /usr/sbin/apache2 -k start
说明:apache只起到了请求转发的做用,还得须要一个解析器来解析咱们写的后台脚本,若是这个时候没有安装php的时候,咱们在html目录中写的.php文件会以原始文件的形式被传送到客户端,而不会解析。
在 /var/www/html下新建index.php
<?php
echo 'hello,world';
?>
未安装php以前,源文件方式展现
2:安装php
sudo apt-get install php5
说明:php是对我们写的php脚本进行解析。这时再去访问html中的.php文件的时候,这种文件会被解析成html传送到客户端
3:安装mysql
sudo apt-get install mysql-server
设置root账号的密码
本机测试是否安装成功:mysql -h127.0.0.1 -uroot -p123456
配置远程可访问权限:ubuntu安装完mysql以后默认只容许本地访问
在/etc/mysql目录下更改这个文件my.cnf
sudo vim my.cnf,注释掉 bind-address
esc+i,开启vim输入模式
esc+shift+:,退出编辑模式
wq,写入文件并保存
重启mysql服务器:sudo service mysql restart
mysql中配置远程可访问权限:在my.cnf中配置完成后还得在mysql中配置
mysql -uroot -p123456
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
4:安装svn客户端
sudo apt-get install subversion
关于svn的具体安装教程以下:https://www.linuxidc.com/Linux/2016-08/133961.htm
5:新建站点
1:首次使用配置好的apache,先配置ServerName
打开apache2目录下的apache.conf
添加:ServerName 127.0.0.1
2:在 /etc/apache2/sites-available目录下新建一个新站点的配置文件
abc.com.conf
修改配置内容
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName abc.com
DocumentRoot /var/www/html/abc/
ErrorLog ${APACHE_LOG_DIR}/abc_error.log
CustomLog ${APACHE_LOG_DIR}/abc_access.log combined
</VirtualHost>
不要复制这里的配置信息,也不要简单的复制:000-default.conf里的内容
1.这里的信息没有注释,而缺乏注释的配置文件是不起做用的
2.000-default.conf里把最重要的ServerName:这个配置给注释掉了
3:使站点生效
a2ensite abc.com.conf
4:重启apache
service apache2 reload
5:禁止显示目录结构
/etc/apache2/apache2.conf
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
去掉红色文字部分便可
6:服务器优化
修改apache2配置/etc/apache2/apache2.conf
MaxKeepAliveRequests 1000
reload apache:service apache2 reload
修改php5配置/etc/php5/apache2/php.ini
memory_limit=1024MB
upload_max_filesize=20MB
7:上传源码
svn co svn://ip地址/目录
8:安装redis
sudo apt-get install redis-server
sudo apt-get install php5-redis
http://www.itnose.net/detail/6142703.html
redis-cli -p 6379 确认一下是否安装成功
或者phpinfo()看一下是否有redis扩展
9:安装curl,安装GD库
sudo apt-get install curl libcurl3 libcurl3-dev php5-curl 安装curl
apt-get install php5-gd 安装gd库,使的php可以处理图片
apt-get install php5-mysql(php默认是没有启用php-mysql扩展的,全部在使用mysql_connect链接的时候,什么反应都没有);
phpinfo()看看是否有curl扩展
10:定时器
从svn上下载定时器要执行的代码
crontab -e
* */1 * * * sh /var/www/html/Crontab/start.sh
11:RDS(阿里云数据库)
必定要设置白名单,将服务器添加到白名单,不然,死的那个快啊
另外给Runtime这个目录写权限:chmod -R 0777 Runtime
第二部分:CDN配置
第三部分:负载均衡配置
第四部分:mysql数据库存储emoji表情
阿里云的RDS支持emoji表情:http://www.bubuko.com/infodetail-921495.html
set character_set_client = utf8mb4;
set character_set_connection = utf8mb4;
set character_set_database = utf8mb4;
set character_set_results = utf8mb4;
set character_set_server = utf8mb4;
在阿里云上的话,直接这么操做:http://m.blog.csdn.net/article/details?id=46537499
第五部分:新增数据盘
实例若是是华北2A区,则数据盘已定要选择华北2A区
选择完成后,要在控制台挂载
挂载后,分区,格式化使用
将数据盘应用到工程项目中,经过创建软连接的形势:ln -s /data/upload upload
一些应该注意的地方
php若是不提示错误应该怎么办?
PHP编码出错不提示,这对于开发来讲,是很不方便的。下面讲解如何开启错误提示步骤:1. 打开php.ini文件。以个人ubuntu为例,这个文件在: /etc/php5/apache2 目录下。2. 搜索并修改下行,把Off值改为Ondisplay_errors = Off3. 搜索下行error_reporting = E_ALL & ~E_NOTICE或者搜索:error_reporting = E_ALL & ~E_DEPRECATED修改成error_reporting = E_ALL | E_STRICT4. 修改Apache的 httpd.conf,以个人 Ubuntu 为例, 这个文件在:/etc/apache2/ 目录下,这是一个空白文件。添加如下两行:php_flag display_errors onphp_value error_reporting 20395. 重启Apache,就OK了。重启命令: :sudo /etc/init.d/apache2 restart