阿里服务器安装
一.服务器里面apache2,php,mysql的安装
例子:114.215.31.64
root密码:U*jiodhsa
mysql密码:kf*sdfj!g
## 更新自动安装程序 apt-get
1.apt-get update
2.apt-get upgrade
## ============================================= ##
## 安装 MySQL
3.apt-get install mysql-server mysql-client
## 安装过程中需要给出root密码, XXXXXXXXXXXXXXXX
## 登录MySQL,创建相应的项目用户
4.mysql -u root -p
5.CREATE USER '【用户名】'@'localhost' IDENTIFIED BY '【密码】';
GRANT ALL PRIVILEGES ON *.* TO '【用户名】'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
CREATE USER 'root'@'localhost' IDENTIFIED BY 'kf*sdfj!g';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
6.exit;
## 清空MySQL日志
7.rm -rf ~/.mysql_history
## ============================================= ##
## 安装 Apache
8.apt-get install apache2
## 一些常用插件
9.apt-get install apache2-utils
10.a2enmod cache_disk
11.service apache2 restart
## ============================================= ##
## 安装 PHP
12.apt-get install php5 libapache2-mod-php5
## 安装 运行Magento必须的插件
13.apt-get install php-pear libmysqlclient15-dev
14.apt-get install php5-curl php5-gd php5-mcrypt php5-mysql
## ============================================= ##
## 安装 GIT
16.apt-get install git
## 安装 邮件服务(不必)
apt-get install sendmail
apt-get install mailutils
## 如果不希望本地服务器处理邮件(如果有专门的邮件服务器)
nano /etc/mail/sendmail.mc
# MAILER(`local')dnl
## 如果需要虚拟内存(不必)
df -h
dd if=/dev/zero of=/swapfile bs=1024 count=4M
chown root:root /swapfile
chmod 0600 /swapfile
mkswap /swapfile
swapon /swapfile
## 重启/开机自动加载虚拟内存
nano /etc/fstab
/swapfile none swap sw 0 0
## ============================================= ##
## 安装成功之后,生成/上传一个PHP项目
## 配置相应的Apache VirtualHost
nano /etc/apache2/sites-available/【XXXXXX】.conf
nano /etc/apache2/sites-available/promo.conf
<VirtualHost *:80>
ServerAdmin system@bf170.com
DocumentRoot "/var/www/【具体目录名称】"
ServerName 【主域名】 例如:bf170.com
## ServerAlias 【其他名称】 例如:www.bf170.com sps170.com www.sps170.com
<Directory "/var/www/【具体目录名称】">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog "/var/log/apache2/s【日志名称】.err"
CustomLog "/var/log/apache2/【日志名称】.log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin xiajun@bf170.com
DocumentRoot "/var/www/magento/bf170_promo/www"
ServerName www.bf170.promo.com
<Directory "/var/www/magento/bf170_promo/www">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog "/var/log/apache2/bf170_promo.err"
CustomLog "/var/log/apache2/bf170_promo.log" common
</VirtualHost>
## 启用该配置
ln -s /etc/apache2/sites-available/【XXXXXX】.conf 【XXXXXX】.conf
ln -s /etc/apache2/sites-available/promo.conf /etc/apache2/sites-enabled/promo.conf
## 防止 Apache 重启时报错,指定一下 ServerName
nano /etc/apache2/apache2.conf
ServerName silucae
##下面的命令是这个模块会自动保存你们的index.php
sudo bash
a2enmod rewrite
service apache2 restart
二.本地连接服务器mysql数据库
下面的ip地址是通过百度搜索{ip}获取自己的ip
1.修改服务器mysql里的ip:
CREATE USER 'root'@'124.65.161.10' IDENTIFIED BY 'kf*sdfj!g';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'124.65.161.10' WITH GRANT OPTION;
FLUSH PRIVILEGES;
这上面的ip地址是本地电脑的ip地址.
2.修改服务器上mysql里的配置文件:nano /etc/mysql/my.cnf
bind-address = 114.215.31.64
三.防火墙设置:
## 打开防火墙之后做以下设置
ufw allow http
ufw allow https
ufw allow ssh
ufw allow ftp
ufw default deny incoming
ufw default allow outgoing
ufw allow from '124.65.161.10' to any port 3306
四.创建一个git,使本地和stage的链接,然后跟各自的服务器链接
1.登录stage服务器
sudo bash
2.创建git的文件夹:cd /home/gitbf170/
3.mkdir 【项目名称】
4.cd 【项目名称】
5.创建git: git init --bare
chown -R gitbf170:gitbf170 /home/gitbf170/【项目名称】
chmod -R 700 /home/gitbf170/【项目名称】
6.本地新建一个空文件夹
7.进入空文件夹,右键点击,选git clone,克隆远程git
注意检查远程URL
8.克隆之后,在.git文件夹(隐藏文件夹)的同级建立Magento文件系统
即拷贝 /www 文件夹 和 .gitignore
注意删除 www/app/etc/modules 下无关的 .xml
以及 www/app/code/local 下无关模块
同时删除 www/app/etc/local.xml (重新安装)
为了避免local模块干扰,首次安装时,将文件夹 www/app/code/local 改名为 www/app/code/local0 (所有本地模块无效)
创建新数据库,配好hosts和httpd.conf,安装Magento
【切记】转入生产是,一定要改管理员密码!!!
将文件夹 www/app/code/local0 改名为 www/app/code/local
清空 www/var/cache 文件夹,刷新Magento (安装local模块)
安装后进入管理员后台,清空并关闭所有cache
9.本地完成之后,git add (添加)所有的文件 (无关的文件已经由 .gitignore 忽略掉了)(很多文件,稍等片刻)
git commit 提交(很多文件,稍等片刻)
10.然后 git push (很多文件,稍等片刻),这时我们是在 master branch(master 支)
五.生产服务器链接测试服务器
1.生成公钥/私钥
ssh-keygen -t rsa
2.公钥位置
nano ~/.ssh/id_rsa.pub
3.拷贝至bf170stage服务器上
/home/gitbf170/.ssh/authorized_keys
4.请注意执行git pull的用户应该属于www-data组
nano /etc/group
www-data:x:33:【用户名称】
5.同时对于Web Root文件夹修改权限,注意Magento下面的media和var需要777
chown -R www-data:www-data /var/www/xxxxxx/yyyyyy/
chmod -R 775 /var/www/xxxxxx/yyyyyy/
chmod -R 777 /var/www/xxxxxx/yyyyyy/www/media
chmod -R 777 /var/www/xxxxxx/yyyyyy/www/var
chown -R www-data:www-data /var/www/promo/magento-1.8.0.0/
chmod -R 775 /var/www/promo/magento-1.8.0.0/
chmod -R 777 /var/www/promo/magento-1.8.0.0/www/media
chmod -R 777 /var/www/promo/magento-1.8.0.0/www/var
6.远程发送(把代码从测试服务器上传到生产服务器上)
scp promo.tar.gz root@114.215.31.64:/home/bf170promo/.