请选择时期:
怀孕准备 怀孕 分娩 宝宝0-1岁 宝宝1-3岁 宝宝3-6岁

freebsd6.2

来源: 最后更新:2024-06-01 00:10:37

导读:freebsd6.2 nginx+php+mysql+zend系统优化防止ddos攻击 一、安装软件前的准备 系统的安装:插入freebsd6.2以上的光盘,最
扫描关注公众号
The Beginning

一、安装软件前的准备hV6育儿早教网

系统的安装:插入freebsd6.2以上的光盘,最小化安装系统,同时安装好portshV6育儿早教网

二、手动安装nginx+phphV6育儿早教网

1) 进入系统后,准备cvs更新:hV6育儿早教网

1. cd /usr/ports/net/cvsup-without-guihV6育儿早教网

2. cp /usr/share/examples/cvsup/ports-supfile /etc/ports-supfilehV6育儿早教网

3. # vi /etc/ports-supfilehV6育儿早教网

将其中的#*default host=CHANGE_THIS.FreeBSD.org一行改为hV6育儿早教网

*default host=cvsup4.FreeBSDchina.orghV6育儿早教网

4. 更新portshV6育儿早教网

/usr/local/bin/cvsup -g -L 2 /etc/ports-supfilehV6育儿早教网

2) 安装mysqlhV6育儿早教网

#cd /usr/ports/databases/mysql51-serverhV6育儿早教网

#make WITH_CHARSET=gbk WITH_XCHARSET=all WITH_PROC_SCOPE_PTH=yes BUILD_OPTIMIZED=yes BUILD_STATIC=yes SKIP_DNS_CHECK=yes WITHOUT_INNODB=yes install cleanhV6育儿早教网

#cp /usr/local/share/mysql/my-large.cnf /usr/local/etc/my.cnf ##mysql的优化参数,也可以手动修改hV6育儿早教网

#rehashhV6育儿早教网

# mysql_install_db --user=mysql ##初始化mysqlhV6育儿早教网

#/usr/local/bin/mysqld_safe & ##启动mysqlhV6育儿早教网

#/usr/local/bin/mysqladmin -u root password 'newpass' ##修改root密码,newpass是你需要改的密码hV6育儿早教网

关闭mysql可以使用mysqladmin -uroot -p shutdownhV6育儿早教网

3) 安装phphV6育儿早教网

#cd /usr/ports/lang/php5hV6育儿早教网

#make config ##配置编译参数hV6育儿早教网

[X] CLI Build CLI versionhV6育儿早教网
[X] CGI Build CGI versionhV6育儿早教网
[ ] APACHE Build Apache modulehV6育儿早教网
[ ] DEBUG Enable debughV6育儿早教网
[X]] SUHOSIN Enable Suhosin protection systemhV6育儿早教网
[X] MULTIBYTE Enable zend multibyte supporthV6育儿早教网
[ ] IPV6 Enable ipv6 supporthV6育儿早教网
[ ] REDIRECT Enable force-cgi-redirect support (CGI only)hV6育儿早教网
[ ] DISCARD Enable discard-path support (CGI only)hV6育儿早教网
[X] FASTCGI Enable fastcgi support (CGI only)hV6育儿早教网
[X] PATHINFO Enable path-info-check support (CGI only)hV6育儿早教网
#make install cleanhV6育儿早教网

# cp /usr/local/etc/php.ini-dist /usr/local/etc/php.ini ##cp php.ini配置文件hV6育儿早教网

4) 安装php5-extensionshV6育儿早教网

# cd /usr/ports/lang/php5-extensions/hV6育儿早教网

#make confighV6育儿早教网

Options for php5-extensions 1.1hV6育儿早教网
-------------------------------------------------hV6育儿早教网
[X] CURL CURL supporthV6育儿早教网

[X] FTP FTP supporthV6育儿早教网
[X] GD hV6育儿早教网
[X] GETTEXThV6育儿早教网
[X] MBSTRING multibyte string supporthV6育儿早教网

[X] MCRYPT Encryption support hV6育儿早教网
[X] MYSQLhV6育儿早教网

[X] PCRE Perl Compatible Regular Expression supporthV6育儿早教网
[ ] POSIX //去掉.hV6育儿早教网
[ ] SQLITE //去掉.hV6育儿早教网

[X] ZIP ZIP supporthV6育儿早教网
[X] ZLIBhV6育儿早教网
# make install cleanhV6育儿早教网

5) 安装Zend OptimizerhV6育儿早教网

#cd /usr/ports/devel/ZendOptimizer/hV6育儿早教网

#make #不要安装,只需要下载解包hV6育儿早教网

#cd /usr/ports/devel/ZendOptimizer/work/ZendOptimizer-*hV6育儿早教网

#./install-tty ##会出现一个文字的安装界面,只是最后一步,不要选择apache就可以了hV6育儿早教网

#vi /usr/local/etc/php.ini #插入zend的路径,一般来说,上面的安装会自动加入下面的文字,假如没有,请手动添加。hV6育儿早教网

[Zend]hV6育儿早教网

zend_extension_manager.optimizer=/usr/local/Zend/lib/Optimizer-3.3.0hV6育儿早教网

zend_extension_manager.optimizer_ts=/usr/local/Zend/lib/Optimizer_TS-3.3.0hV6育儿早教网

zend_optimizer.version=3.3.0ahV6育儿早教网

zend_extension=/usr/local/Zend/lib/ZendExtensionManager.sohV6育儿早教网

zend_extension_ts=/usr/local/Zend/lib/ZendExtensionManager_TS.sohV6育儿早教网

小提示:安装zend,在freebsd下面,目前只有支持到php5.1.x,对于php5.2.x还不能支持,因为zend还没有为php5.2.x开发版本,在网上查了好多关于解决此类的问题,但得到的结果是,zend可以顺利安装,phpinfo也显示zend正常了,但程序无法调用,即zend没有工作,也就是目前无法解决,我想只有等到zend php5.2.x的版本后,才可以解决此问题,也希望哪位已经解决此类问题的兄弟,share一下你的经验。假如你非要使用zend,那就请你将php降到5.1.x,或者你不当心已经升级了ports,那建议你可以安装php4.x,毕竟目前php4.x还通用于大部分的环境hV6育儿早教网

6) 安装nginxhV6育儿早教网

#cd /usr/ports/www/nginx/hV6育儿早教网

#make installhV6育儿早教网

7) 安装lighttpd,为了得到fastcgihV6育儿早教网

# cd /usr/ports/www/lighttpd/hV6育儿早教网

#make installhV6育儿早教网

#rehashhV6育儿早教网

8) 配置nginxhV6育儿早教网

#user nobodyhV6育儿早教网
删除前面的注释#,改成 user wwwhV6育儿早教网

#log_format main '$remote_addr - $remote_user [$time_local] 'hV6育儿早教网

# '"$request" $status $body_bytes_sent 'hV6育儿早教网

# '"$http_referer" "$http_user_agent"';hV6育儿早教网

log_format main '$remote_addr - $remote_user [$time_local] 'hV6育儿早教网

'"$request" $status $body_bytes_sent 'hV6育儿早教网

'"$http_referer" "$http_user_agent"';hV6育儿早教网

##以上步骤,为了能够正常分析log的pv,hits,访问量,才设定的,默认的log格式,是无法准确分析出所需要的结果hV6育儿早教网

location / {hV6育儿早教网
root /usr/local/www/nginx;hV6育儿早教网
index index.html index.htm;hV6育儿早教网
}hV6育儿早教网
在index.html前面添加一个index.phphV6育儿早教网
location / {hV6育儿早教网
root /data/web/www.jk0086.com/htdocs;hV6育儿早教网
index index.php index.html index.htm;hV6育儿早教网
}hV6育儿早教网

#location ~ /.php$ {hV6育儿早教网
# fastcgi_pass 127.0.0.1:9000;hV6育儿早教网
# fastcgi_index index.php;hV6育儿早教网
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script.name;hV6育儿早教网
# include fastcgi_params;hV6育儿早教网
#}hV6育儿早教网
将前面的#去掉,修改为hV6育儿早教网
location ~ /.php$ {hV6育儿早教网
fastcgi_pass 127.0.0.1:9000;hV6育儿早教网
fastcgi_index index.php;hV6育儿早教网
fastcgi_param SCRIPT_FILENAME /usr/local/etc/nginx$fastcgi_script.name;hV6育儿早教网
include fastcgi_params;hV6育儿早教网
}hV6育儿早教网
##去掉注释,其实就是激活了nginx的fastcgi功能,也说明了nginx本身就已经准备用于fastcgi的环境中hV6育儿早教网

9) 配置spawn-fcgi,就是一个启动fastcgi命令,使得nginx可以通过9000端口访问(纯粹个人理解-_-)hV6育儿早教网

参数说明:****127.0.0.1的9000端口,进程数为64(如果服务器内存小于3GB,可以只开启25个进程),用户为wwwhV6育儿早教网

/usr/local/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u www -g www -C 64 -f /usr/local/bin/php-cgihV6育儿早教网

10) 这边请注意启动顺序,先启动fastcgi,再启动nginxhV6育儿早教网

Nginx.conf由于经常需要修改,即经常需要重启nginx,因此这边写了一个启动脚本,请查看:hV6育儿早教网

#!/usr/local/bin/bashhV6育儿早教网

case $1 inhV6育儿早教网

start)hV6育儿早教网

/usr/local/sbin/nginxhV6育儿早教网

;;hV6育儿早教网

stop)hV6育儿早教网

killall -9 nginxhV6育儿早教网

;;hV6育儿早教网

test)hV6育儿早教网

nginx -t -c /usr/local/etc/nginx/nginx.confhV6育儿早教网

;;hV6育儿早教网

restart)hV6育儿早教网

ps auxww | grep nginx | grep master | awk '{print $2}' | xargs kill -HUPhV6育儿早教网

;;hV6育儿早教网

show)hV6育儿早教网

ps -aux|grep nginxhV6育儿早教网

;;hV6育儿早教网

esachV6育儿早教网

保存为nginx.sh使用方法为:hV6育儿早教网

nginx.sh start #启动nginxhV6育儿早教网

nginx.sh stop #停止nginxhV6育儿早教网

nginx.sh restart #重启nginxhV6育儿早教网

nginx.sh test #测试nginx.conf的准确性hV6育儿早教网

11) 安装phpMyAdminhV6育儿早教网

#cd /usr/ports/databases/phpmyadminhV6育儿早教网

#make installhV6育儿早教网

#mv /usr/local/www/phpmyadmin /data/web/ www.jk0086.com/htdocs/hV6育儿早教网

#cd /data/web/www.jk0086.com/htdocs/phpmyadminhV6育儿早教网

#vi config.inc.php ##这边要说明一下,freebsd默认安装的phpmyadmin,里面配置文件有问题,需要手动修改,请修改成如下内容:hV6育儿早教网

<?phphV6育儿早教网

/* $Id: config.sample.inc.php 9689 2006-11-10 20:05:49Z nijel $ */hV6育儿早教网

// vim: expandtab sw=4 ts=4 sts=4:hV6育儿早教网

/**hV6育儿早教网

* phpMyAdmin sample configuration, you can use it as base forhV6育儿早教网

* manual configuration. For easier setup you can use scripts/setup.phphV6育儿早教网

*hV6育儿早教网

* All directives are explained in Documentation.html and on phpMyAdminhV6育儿早教网

* wiki <http://wiki.cihar.com>.hV6育儿早教网

*/hV6育儿早教网

/*hV6育儿早教网

* This is needed for cookie based authentication to encrypt password inhV6育儿早教网

* cookiehV6育儿早教网

*/hV6育儿早教网

$cfg['blowfish_secret'] = 'asdf:LKJ'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */hV6育儿早教网

/*hV6育儿早教网

* Servers configurationhV6育儿早教网

*/hV6育儿早教网

$i = 0;hV6育儿早教网

/*hV6育儿早教网

* First serverhV6育儿早教网

*/hV6育儿早教网

$i++;hV6育儿早教网

/* Authentication type */hV6育儿早教网

$cfg['Servers'][$i]['auth_type'] = 'cookie';hV6育儿早教网

/* Server parameters */hV6育儿早教网

$cfg['Servers'][$i]['host'] = 'localhost';hV6育儿早教网

$cfg['Servers'][$i]['connect_type'] = 'tcp';hV6育儿早教网

$cfg['Servers'][$i]['compress'] = false;hV6育儿早教网

/* Select mysqli if your server has it */hV6育儿早教网

$cfg['Servers'][$i]['extension'] = 'mysql';hV6育儿早教网

/* User for advanced features */hV6育儿早教网

// $cfg['Servers'][$i]['controluser'] = 'pam';hV6育儿早教网

// $cfg['Servers'][$i]['controlpass'] = 'pampasswd';hV6育儿早教网

/* Advanced phpMyAdmin features */hV6育儿早教网

// $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';hV6育儿早教网

// $cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';hV6育儿早教网

// $cfg['Servers'][$i]['relation'] = 'pma_relation';hV6育儿早教网

// $cfg['Servers'][$i]['table_info'] = 'pma_table_info';hV6育儿早教网

// $cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';hV6育儿早教网

// $cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';hV6育儿早教网

// $cfg['Servers'][$i]['column_info'] = 'pma_column_info';hV6育儿早教网

// $cfg['Servers'][$i]['history'] = 'pma_history';hV6育儿早教网

// $cfg['Servers'][$i]['designer_coords'] = 'pma_designer_coords';hV6育儿早教网

/*hV6育儿早教网

* End of servers configurationhV6育儿早教网

*/hV6育儿早教网

/*hV6育儿早教网

* Directories for saving/loading files from serverhV6育儿早教网

*/hV6育儿早教网

$cfg['UploadDir'] = '';hV6育儿早教网

$cfg['SaveDir'] = '';hV6育儿早教网

?>hV6育儿早教网

以上只是一个配置文件,当你打开Phpmyadmin的时候,会提示你输入用户名密码,然后登陆数据库,相对比较安全的hV6育儿早教网

三、系统优化+防止ddoshV6育儿早教网

1) 这个话题有点大,我相信我做的只是其中很小的一部分,同时很多人也会问我,是不是要编译内核,这边的回答是不需要编译任何内核,只需要copy文件,然后重启一下服务器就可以了。hV6育儿早教网

2) 加载文件修改hV6育儿早教网

# vi /boot/loader.conf #加入如下文本hV6育儿早教网

kern.dfldsiz="2147483648" # Set the initial data size limithV6育儿早教网

kern.maxdsiz="2147483648" # Set the max data sizehV6育儿早教网

kern.ipc.nmbclusters="0" # Set the number of mbuf clustershV6育儿早教网

kern.ipc.nsfbufs="66560" # Set the number of sendfile(2) bufshV6育儿早教网

##解释:hV6育儿早教网

a. 第一,第二行主要是为了突破1G内存设置的hV6育儿早教网

b. 第三行其实是bsd的一个bug,当系统并发达到一个数量级的时候,系统会crash,这个是非常糟糕的事情,所幸更改了这个参数后,在高并发的时候,基本可以没有类似情况,当然非常bt的情况,还得进一步想办法hV6育儿早教网

c. 第四行是读取的文件数,如果你下载的文件比较大,且比较多,加大这个参数,是非常爽的hV6育儿早教网

3) Sysctl修改hV6育儿早教网

#vi /etc/rc.localhV6育儿早教网

sysctl kern.ipc.maxsockets=100000 ##增加并发的socket,对于ddos很有用hV6育儿早教网

sysctl kern.ipc.somaxconn=65535 ##打开文件数hV6育儿早教网

sysctl net.inet.tcp.msl=2500 ##timeout时间hV6育儿早教网

4) 通过上述的简单优化,会给你带来意外的惊喜,如果有兴趣的兄弟,可以尝试一下看看,绝无副作用。hV6育儿早教网

四、其他hV6育儿早教网

1) 加速ports安装hV6育儿早教网

#vi /etc/make.conf ##加入如下hV6育儿早教网

MASTER_SITE_OVERRIDE?=http://ports.hshh.org/${DIST_SUBDIR}/hV6育儿早教网

MASTER_SITE_OVERRIDE?=http://ports.cn.freebsd.org/${DIST_SUBDIR}/hV6育儿早教网

2) Freebsd颜色显示hV6育儿早教网

secureCRT设置:仿真:终端->linux>勾选ANSI颜色-->确定hV6育儿早教网

#vi /etc/csh.cshrc ##加入如下hV6育儿早教网

setenv LSCOLORS ExGxFxdxCxegedabagExExhV6育儿早教网

setenv CLICOLOR yeshV6育儿早教网

#cd /usr/ports/edit/vim;make installhV6育儿早教网

#echo "syntax on">/root/.vimrchV6育儿早教网

#echo "alias vi vim" >>/root/.cshrchV6育儿早教网

##颜色主要是靠vim来显示的,因此需要安装vim,然后把vi alias成vim就可以了hV6育儿早教网

3) Other。。。。。。。。更新中hV6育儿早教网

THE END
广告、内容合作请点击这里 寻求合作
免责声明:本文系转载,版权归原作者所有;旨在传递信息,其原创性以及文中陈述文字和内容未经本站证实。

育儿知识

所属专题: 参数  文件  系统  

本文地址:http://www.yuerzaojiao.com/qiaomen/youxi/1198925.html

最新文章
  • 1腾讯为什么告老干妈(腾讯跟老干妈什么情况)

    腾讯为什么告老干妈(腾讯跟老干妈什么情况)

  • 2突然确诊癌症中晚期,已转移!宁波男子无法接受:怎么可能!医生:发现一个,全家高危!

    突然确诊癌症中晚期,已转移!宁波男子无法接受:怎么可能!医生:发现一个,全家高危!

  • 3疑似皇马前主席之孙公然辱华,皇马却称“将致力于消除足球界种族歧视”?

    疑似皇马前主席之孙公然辱华,皇马却称“将致力于消除足球界种族歧视”?

  • 4韩军称朝鲜军人无意中越界 韩军称朝鲜军人无意中越界了吗

    韩军称朝鲜军人无意中越界 韩军称朝鲜军人无意中越界了吗

  • 5中纪委再打两“虎”!还有一“虎”被免职,一“虎”获刑十五年!

    中纪委再打两“虎”!还有一“虎”被免职,一“虎”获刑十五年!

  • 6吉林市将举办世界锅包肉大赛,此前召开座谈会论证锅包肉起源

    吉林市将举办世界锅包肉大赛,此前召开座谈会论证锅包肉起源

  • 7哪些爱爱姿势更容易怀孕 选择这些爱爱姿势帮助生儿生女

    哪些爱爱姿势更容易怀孕 选择这些爱爱姿势帮助生儿生女

  • 8男性精子存活时间有多久 精子存活率低怎么办

    男性精子存活时间有多久 精子存活率低怎么办

  • 9医生算错怀孕周数怎么办 孕龄胎龄预产期原来是这样算的

    医生算错怀孕周数怎么办 孕龄胎龄预产期原来是这样算的

  • 10备孕未准妈妈请注意 这里有份孕前自检表请签收

    备孕未准妈妈请注意 这里有份孕前自检表请签收

推荐文章

关于我们 | 广告服务 | 网站合作 | 免责声明 | 联系我们| 网站地图

© 2022 育儿早教网 All Rights Reserved. 沪ICP备20230950727号-10

声明: 本站文章均来自互联网,不代表本站观点 如有异议 请与本站联系 联系邮箱:kefu#yuerzaojiao.com (请把#替换成@)