阿里云平台下的项目环境配置
第一部分:服务器配置
服务器配置如下:双核,4G内存,流量按带宽付费,安装完成后,SSH是被默认安装了的
更新与升级源:
sudo apt-get upgrade
sudo apt-get update
一个升级源,一个更新源,执行顺序是有一定的讲究的
如果记不住执行顺序,反复都执行一遍
另外,阿里云有些源是不通的,这个没关系,不用去管
第二部分:安装LAMP环境
1:安装apache
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值改成On
display_errors = Off
3. 搜索下行
error_reporting = E_ALL & ~E_NOTICE
或者搜索:
error_reporting = E_ALL & ~E_DEPRECATED
修改为
error_reporting = E_ALL | E_STRICT
4. 修改Apache的 httpd.conf,
以我的 Ubuntu 为例, 这个文件在:/etc/apache2/ 目录下,这是一个空白文件。
添加以下两行:
php_flag display_errors on
php_value error_reporting 2039
5. 重启Apache,就OK了。
重启命令: :sudo /etc/init.d/apache2 restart