如何使用linux服务器搭建CDN网络
发布时间:2023-12-28 02:59:43 所属栏目:安全 来源:DaWei
导读: 这篇文章主要介绍“如何使用linux服务器搭建CDN网络”的相关知识,下面会通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“如何使用linux服务器搭建
这篇文章主要介绍“如何使用linux服务器搭建CDN网络”的相关知识,下面会通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“如何使用linux服务器搭建CDN网络”文章能帮助大家解决问题。 CDN(content delivery network 内容分发网络) 本质上就是提供缓存,使得用户总是能访问离他最近的服务器,akamai是世界上的第一家做CDN的公司 实例:构建CDN分发网络架构 环境:使用7台 Linux主机部署CDN环境架构,使用Nginx作为Web服务器,Squid作为各地区反向代理服务器,Bind作为分离解析DNS服务器 环境如下: DNS 服务器(192.168.4.253):dns253.hydra.com 反向代理服务器(192.168.4.1):squid1.hydra.com 反向代理服务器(192.168.4.2):squid2.hydra.com Web1 服务器(192.168.4.3):web1.hydra.com Web2 服务器(192.168.4..4):web2.hydra.com 测试客户机 01(192.168.4..10):pc01.hydra.com 测试客户机 02(192.168.4..20):pc02.hydra.com 部署两台Nginx服务器(两台做相同的操作) 使用 yum 安装基础依赖包并使用源码安装 LNMP 环境软件 [root@web1 ~]# yum -y groupinstall "Development tools" [root@web1 ~]# yum -y install gcc openssl-devel pcre-devel zlib-devel [root@web1 ~]# useradd –s /sbin/nologin nginx 使用源码安装 Nginx [root@web1 ~]# tar -zxvf nginx-1.2.0.tar.gz [root@web1 nginx-1.2.0]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --with-http_gzip_static_module [root@web1 ~]# make && make install 使用源码安装 cmake [root@web1 ~]# tar -zxvf cmake-2.8.10.2.tar.gz [root@web1 cmake-2.8.10.2]# ./bootstrap --prefix=/usr/local/cmake [root@web1 cmake-2.8.10.2]# make && make install [root@web1 cmake-2.8.10.2]# /usr/local/cmake/bin/cmake --version [root@web1 ~]# useradd –s /sbin/nologin mysql 使用源码安装 mysql [root@web1 ~]# tar -zxvf mysql-5.5.13.tar.gz [root@web1 mysql-5.5.13]# /usr/local/cmake/bin/cmake \ > -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ > -DSYSCONFDIR=/etc -DMYSQL_DATADIR=/usr/local/mysql/data \ > -DMYSQL_TCP_PORT=3306 \ > -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \ > -DMYSQL_USER=mysql -DEXTRA_CHARSETS=all \ > -DWITH_SSL=system -DENABLED_LOCAL_INFILE=1 \ [root@web1 mysql-5.5.13]# make && make install [root@web1 mysql-5.5.13]# chown -R mysql.mysql /usr/local/mysql/ [root@web1 mysql-5.5.13]# cd /usr/local/mysql [root@web1 mysql]#./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data 使用源码安装 mhash、libiconv、libmcrypt、PHP [root@web1 ~]# tar -zxvf mhash-0.9.9.9.tar.gz [root@web1 mhash-0.9.9.9]# ./configure [root@web1 mhash-0.9.9.9]# make && make install [root@web1 ~]# tar -zxvf libiconv-1.13.tar.gz [root@web1 libiconv-1.13]# ./configure [root@web1 libiconv-1.13]# make && make install [root@web1 ~]# tar -zxvf libmcrypt-2.5.8.tar.gz [root@web1 libmcrypt-2.5.8]# ./configure [root@web1 libmcrypt-2.5.8]# make && make install [root@web1 libmcrypt-2.5.8]# ldconfig -v [root@web1 libmcrypt-2.5.8]# cd libltdl [root@web1 libmcrypt-2.5.8]# cd ./configure --with-gmetad --enable-gexec --enable-ltdl-install [root@web1 libltdl ]# make && make install [root@web1 ~]# ln -sv /usr/local/lib/libmcrypt* /usr/lib/ [root@web1 ~]# ln -sv /usr/local/lib/libmhash.* /usr/lib/ [root@web1 ~]# ln -sv /usr/local/lib/libicon.* /usr/lib/ [root@web1 ~]# tar -zxvf php-5.4.9.tar.gz [root@web1 ~]# cd php-5.4.9 [root@web1 php-5.4.9]# ./configure \ > --prefix=/usr/local/php5 \ > --with-config-file-path=/usr/local/php5nginx/etc \ > --with-mysql=/usr/local/mysql \ > --with-mysqli=/usr/local/mysql/bin/mysql_config \ > --enable-fpm --enable-mbstring [root@web1 php-5.4.9]# make ZEND_EXTRA_LIBS='-liconv' [root@web1 php-5.4.9]# make install [root@web1 php-5.4.9]# cp php.ini-production /usr/local/php5/etc/php.ini 启动相关服务 [root@web1 ~]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf [root@web1 ~]# netstat -utnlp | grep :80 启动MySQL,启动前需要拷贝相关配置文件及启动脚本 [root@web1 mysql]# cp /usr/local/mysql/my.cnf /etc/my.cnf [root@web1 mysql]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld [root@web1 mysql]# chmod +x /etc/init.d/mysqld [root@web1 mysql]# chkconfig add mysqld [root@web1 mysql]# chkconfig mysqld on [root@web1 ~]# service mysqld start [root@web1 ~]# echo “/usr/local/mysql/lib/” >> /etc/ld.so.conf [root@web1 ~]# ldconfig [root@web1 ~]# vim /etc/profile .. .. PATH=$PATH:$HOME/bin:/usr/local/mysql/bin/ export PATH [root@web1 ~]# source /etc/profil 修改配置文件实现 FastCGI 功能,生成 php-fpm 配置文件,默认安装完php后,会自动生成一个php-fpm参考板 [root@web10 ~]# cd /usr/local/php5/etc/ [root@web10 etc]# cp php-fpm.conf.default php-fpm.conf [root@web10 etc]# vim /usr/local/php5/etc/php-fpm.conf [global] pid = run/php-fpm.pid error_log = log/php-fpm.log log_level = error daemonize = yes [nginx] user = nginx group = nginx listen = 127.0.0.1:9000 pm = dynamic pm.max_children = 32 pm.start_servers = 15 pm.min_spare_servers = 5 pm.max_spare_servers = 32 [root@web1 ~]# cd php-5.4.9/sapi/fpm/ [root@web1 fpm]# cp init.d.php-fpm /etc/rc.d/init.d/php-fpm [root@web1 fpm]# chmod +x /etc/rc.d/init.d/php-fpm [root@web1 fpm]# chkconfig --add php-fpm [root@web1 fpm]# service php-fpm start [root@web1 fpm]# ps aux | grep php-fpm [root@web1 etc]# /usr/local/php5/sbin/php-fpm --fpm-config /usr/local/php5/etc/php-fpm.conf 修改 nginx 配置文件并启动服务 [root@web1 ~]# vim /usr/local/nginx/conf/nginx.conf location / { root html; index index.php index.html index.htm; } location ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; include fastcgi_params; } [root@web1 ~]# vim /usr/local/nginx/conf/fastcgi_params .. .. fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param DOCUMENT_ROOT $document_ [root@web1 ~]# /usr/local/nginx/sbin/nginx 创建PHP首页文档 [root@web1 ~]# vim /usr/local/nginx/html/index.php <?php $links=mysql_connect("localhost","root","密码");(root为mysql账户名称,密码需要修改为实际mysql密码,无密码则留空) if($links){ echo "link db ok!!!"; } else{ echo "link db no!!!"; } ?> 关于“如何使用linux服务器搭建CDN网络”就介绍到这了,如果大家觉得不错可以参考了解看看,如果想要了解更多,小编每天都会为大家更新不同的知识。 (编辑:大连站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐