最近搞了一台云主机,配置不高,但是够用:
- CPU:单核
- 内存:1G
- 硬盘:40G
- 带宽:1M 这个配置搭个人网站问题不大。
服务器到手后,预计安装下面这些软件:
Nginx
: 用来做反向代理Apache+PHP
: 用来运行WordpressTomcat
: 用来运行Java应用MySQL
: 保存数据
下面开始安装:
前期准备
yum install makeyum install gcc gcc-c++
1. JDK 安装
首先进入到Oracle的JDK下载页面,我打算安装JDK7,所以我的下载页面是:
由于使用的是云主机,所以不想先下载到桌面,再SCP到服务器上,想直接 wget 到服务上最省事了。但是官方网站下载JDK时需要先接受一个协议才能下载,直接通过JDK包的链接下载不了。 这个问题通过下面的方式可以解决:- 接受那个协议
- 打开Firefox或Chrome的开发者工具,选择“Network"页,监控所有的网络请求
- 点击页面上我们要下载的JDK,这时在开发者工具中能看到我们请求的URL,这是我的: 后面多了点东西。 4.把这个URL复制下来,然后到服务器上
wget
一下即可。
下载完后,解压
配置环境变量:
vim /etc/profile
到最下面增加:
<pre class="lang:sh decode:true "> JAVA_HOME=/data/java/java CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar PATH=$JAVA_HOME/bin:$PATH export JAVA_HOME export CLASSPATH export PATH </pre>
2. 打开文件最大数 ulimits
修改
<pre class="lang:sh decode:true "> echo 'ulimit -n 65535' >> /etc/profile </pre>
3. nginx
安装
3.1 安装libevent
libevent
是一个事件触发的网络库,其官方地址是: 在上面找到源代码下载即可 老套路:
./configuremakemake install
3.2 安装pcre
PCRE是一个Perl的正则表达式库,小巧快速。 PCRE的项目地址是: 到这上面找到适合的版本下载
wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fpcre%2Ffiles%2Fpcre%2F8.35%2F&ts=1405487567&use_mirror=jaist
下载完后,解压缩:
./configuremakemake install
之后,pcre就被安装到了 /usr/local/lib
目录下面
3.3 安装zlib
zlib是一个压缩、解压缩的库,官方地址是: 下载解压后:
./configuremakemake install
3.4 安装openssl
openssl
是一个强大的安全套接字密码库,官方地址为: 下载解压后:
./config # openssl不能用 ./configure makemake install
3.5 安装nginx
./configure --prefix=/data/server/nginxmakemake install
4. tomcat 安装
下载并解压缩即可
5. mysql安装
可以使用yum自动安装:
sudo yum install mysql-server
手动安装: 见
6. 安装Apache-PHP
sudo yum install httpd mod_sslsudo yum install php php-common php-gd php-mcrypt php-pear php-pecl-memcache php-mhash php-mysql php-xml
7. 配置Nginx反向代理
在Nginx配置文件 /conf/nginx.conf
中增加如下内容:
upstream www.wangda.me { server 127.0.0.1:8888; } upstream www.80ok.net { server 127.0.0.1:8889; } upstream www.mayunfang.com { server 127.0.0.1:9000; } server { listen 80; server_name www.wangda.me wangda.me blog.wangda.me; charset utf8; access_log logs/blog-wangd.access.log main; location / { proxy_redirect off ; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; client_max_body_size 50m; client_body_buffer_size 256k; proxy_connect_timeout 30; proxy_send_timeout 30; proxy_read_timeout 60; proxy_buffer_size 256k; proxy_buffers 4 256k; proxy_busy_buffers_size 256k; proxy_temp_file_write_size 256k; proxy_next_upstream error timeout invalid_header http_500 http_503 http_404; proxy_max_temp_file_size 128m; proxy_pass http://www.wangda.me; index index.html index.html index.php; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } server { listen 80; server_name www.80ok.net 80ok.net; charset utf8; access_log logs/blog-zhangxl.access.log main; location / { proxy_pass http://www.80ok.net; proxy_redirect off ; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; client_max_body_size 50m; client_body_buffer_size 256k; proxy_connect_timeout 30; proxy_send_timeout 30; proxy_read_timeout 60; proxy_buffer_size 256k; proxy_buffers 4 256k; proxy_busy_buffers_size 256k; proxy_temp_file_write_size 256k; proxy_next_upstream error timeout invalid_header http_500 http_503 http_404; proxy_max_temp_file_size 128m; index index.html index.html index.php; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } server { listen 80; server_name www.mayunfang.com mayunfang.com; charset utf8; access_log logs/mayunfang.access.log main; location / { proxy_pass http://www.mayunfang.com; proxy_set_header X-Real-IP $remote_addr; client_max_body_size 100m; index index.html index.html index.php; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }