点击
搜索 / Search

把一周前的网站迁移过程稍微记录一下,主要是很多东西没有新资料,都是我东拼西凑找的,希望对后来者有用处。

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选项,单击空格选定,回车。

Vps_phpmyadmin1

接下来是提示是否创建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你妹夫……

资料参考:

声明: 本站所有图文遵循 署名-非商业性使用-相同方式共享 3.0 共享 协议.
转载请注明转自 ershiwo的私人研究所
标签:

Related Posts

5 Comments

  1. SAO1995

    vpn...我啥也没看懂......

    2015.05.21 at 00:13
    #1  
    • vps,是vps啊……

      2015.05.21 at 12:30
      #11
      • SAO1995

        ...又脑残了

        2015.05.21 at 15:56
        #12
  2. 有没有对比过apache这个自带缓存和 wp的缓存插件?

    2015.05.21 at 21:52
    #2  
    • 这两种缓存完全不是一回事,一个是把内容缓存到内存或者磁盘中,另一个则是页面静态化,不用访问一次就就让php访问数据库并动态生成一次页面。

      2015.05.21 at 22:20
      #21