把一周前的网站迁移过程稍微记录一下,主要是很多东西没有新资料,都是我东拼西凑找的,希望对后来者有用处。
vultr日本机房,单核768m内存,操作系统是ubuntu 14.04 LTS,直接putty+winscp配置网站。
详细过程如下:
putty登陆服务器,用私钥或密码登入,然后首先更新服务器:
sudo apt-get update && apt-get upgrade
更新系统内核和软件源列表。
然后准备配置系统。因为服务器上缺少一些重要软件,所以先安装他们:
sudo apt-get install unzip zip wget rsync
如果有其他需求可以一并添加,比如安装vim。
接下来初始化服务器环境。因为我选用了LAMP架构,所以先安装Apache:
sudo apt-get install apache2
ubuntu 14.04默认安装的apache的网页根目录在/var/www/html下。
如果需要网站提供伪静态支持,需要开启重写模块:
sudo a2enmod rewrite
这时会返回开启成功并要求重启apache服务的信息,不用管它,继续安装MySQL服务器:
sudo apt-get install mysql=server
期间会提示设置管理员密码,如果使用phpmyadmin之类的图形化数据库管理台,请一定设定一个强密码,并注意密码中不能含特殊字符。这里因为我们要使用pma所以会设定一个密码。
之后安装php模块,这里执行最小化安装:
sudo apt-get install libapache2-mod-php5 php5-gd php5-mysql php5-curl php5-mcrypt php5-common php-apc
安装完之后需要重启apache服务,运行:
sudo service apache2 restart
这样基本的工作就完成了。
接下来测试php环境是否正常运行,新建一个php文件,写入以下内容:
<?php phpinfo(); ?>
可以直接在putty中创建:
sudo cat << "EOF" /var/www/html/php.php <?php phpinfo(); ?> EOF
然后检查一下是否已创建。
ls /var/www/html
列表中如果存在“php.php”文件,代表已创建成功,如果没有请重新创建或上传。
通过浏览器访问php.php:
http://your ip address/php.php
如果能够正常显示php信息证明已配置完成。
接下来安装phpmyadmin。运行以下命令:
sudo apt-get install phpmyadmin
中间“y”回车确认。会出现一个对话框,请务必确认已选中apache2选项,单击空格选定,回车。
接下来是提示是否创建php数据库,我们选择“Yes”。然后按照要求输入数据库密码,下一步会提示是否创建pma应用密码,直接回车让系统自动生成即可。
稍等片刻即完成安装。
现在可以访问http://your ip address/phpmyadmin确认是否安装成功。如果返回404,则使用以下命令:
ln -s /usr/share/phpmyadmin /var/www/html
正常情况下就可以访问了。
如果pma下面有提示缺少mycrypt模块,可按以下步骤解决。
cd /etc/php5/apache2/conf.d/ sudo ln -s ../../mods-available/mcrypt.ini ./20-mcrypt.ini service apache2 restart //仅针对ubuntu定制2.4.X以后版本apache
即可解决问题。
接下来设置站点。举例说明,比如我要启用一个nico.poi.duang的域名,可以这样配置:
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/nico.conf sudo vi /etc/apache2/sites-available/nico.conf
按“i”进入编辑模式,输入以下内容:
<VirtualHost *:80> ServerName nico.poi.duang ServerAdmin webmaster@localhost DocumentRoot /var/www/nico ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
esc退出编辑模式,:wq回车保存。然后运行以下命令:
sudo a2dissite 000-default.conf //禁用默认站点配置 sudo a2ensite nico.conf //启用nico的站点配置
然后按提示重启apache服务:
sudo service apache2 restart
接下来创建站点文件夹就好了!
sudo mkdir /var/www/nico
修改文件夹权限及用户组。
chgrp -R www-data /var/www/nico chown -R www-data /var/www/nico chmod -R 755 /var/www/nico
上传网站,修改DNS解析,收工!
下面是我自己用到的一些设置。
//启用apache缓存 sudo a2enmod cache sudo a2enmod disk-cache sudo a2enmod expires
都需要重启apache。然后在.htaccess里添加规则:
<IfModule mod_expires.c> ExpiresActive On ExpiresDefault A86400 ExpiresByType image/x-icon A2592000 ExpiresByType application/x-javascript A2592000 ExpiresByType text/css A86400 ExpiresByType image/gif A604800 ExpiresByType image/png A604800 ExpiresByType image/jpeg A604800 ExpiresByType text/plain A604800 ExpiresByType application/x-shockwave-flash A604800 ExpiresByType video/x-flv A604800 ExpiresByType application/pdf A604800 ExpiresByType text/html A900 </IfModule>
单位是秒。
这里只是用expires模块增加了浏览器缓存过期时间,借以减少二次访问时的请求数来提高访问速度,关于apache的cache和disk-cache模块还没研究,如果我有需要使用时我会另起一篇文章说明(然而我是不会写的啦~)。
其他的我还干了什么……貌似有个sendmail模块?这个就不写了。
大致就这些,希望对你有所帮助。520你妹夫……
资料参考:
vpn...我啥也没看懂......
vps,是vps啊……
...又脑残了
有没有对比过apache这个自带缓存和 wp的缓存插件?
这两种缓存完全不是一回事,一个是把内容缓存到内存或者磁盘中,另一个则是页面静态化,不用访问一次就就让php访问数据库并动态生成一次页面。