請參閱下列連結
http://benit.pixnet.net/blog/post/25540989-%E9%97%9C%E9%96%89-windows-%E8%87%AA%E5%8B%95%E6%9B%B4%E6%96%B0-%E5%BE%8C-%E8%87%AA%E5%8B%95%E9%87%8D%E9%96%8B%E6%A9%9F
2012年12月12日 星期三
2012年11月19日 星期一
FreeBSD Upgrade Procedures
FreeBSD Upgrade Procedures
參考來源:http://people.freebsd.org/~rse/upgrade/
FreeBSD 8.x to 9.x Remote Upgrade
FreeBSD 7.x to 8.x Remote Upgrade
FreeBSD 6.x to 7.x Remote Upgrade
FreeBSD 5.x to 6.x Remote Upgrade
FreeBSD 4.x to 5.x Remote Upgrade
FreeBSD 3.x to 4.x Local Upgrade
參考來源:http://people.freebsd.org/~rse/upgrade/
2012年11月13日 星期二
2012年11月12日 星期一
安裝 - FreeBSD + Nginx 環境搭建教程(推薦) [原創 2009-12-9 14:01:49]
資料來源:http://icandata.blog.hexun.com.tw/41806505_d.html
為什麽要選擇 FreeBSD?
官方網站:www.freebsd.org 中文網站:http://www.freebsd.org/zh_CN/ FreeBSD是一個優秀的unix操作系統,基於寬松的BSD協議,是完美的企業級操作系統,以重點突出性能和安全而聞名,行業領先的企業多年以來一直使用FreeBSD服務器。具有同所有其它開源軟件操作系統競爭的高級性能。
|
為什麽要選擇 Nginx?
Nginx ("engine x") 是一個高性能的 HTTP 和 反向代理 服務器,也是一個 IMAP/POP3/SMTP 代理服務器。Nginx 是由 Igor Sysoev 為俄羅斯訪問量第二的Rambler.ru 站點開發的,它已經在該站點運行超過四年多了。Igor 將源代碼以類BSD許可證的形式發布。自Nginx 發布四年來,Nginx 已經因為它的穩定性、豐富的功能集、 示例配置文件和低系統資源的消耗而聞名了。目前國內各大門戶網站已經部署了Nginx,如新浪、網易、騰訊等;國內幾個重要的視頻分享網站也部署了Nginx,如六房間、酷6等。 新近發現Nginx 技術在國內日趨火熱,越來越多的網站開始部署Nginx。
Nginx 是一個很牛的高性能Web和反向代理服務器, 它具有有很多非常優越的特性:
- 在高連接並發的情況下,Nginx是Apache服務器不錯的替代品: Nginx在美國是做虛擬主機生意的老板們經常選擇的軟件平臺之一. 能夠支持高達 50,000 個並發連接數的響應, 感謝Nginx為我們選擇了 epoll and kqueue 作為開發模型;
- 內存消耗少:在3萬並發連接下,開啟10個Nginx進程消耗150M左右內存(15M*10);
- 不要錢:Nginx為開源軟件,可以免費使用。而購買F5 BIG-IP、NetScaler等硬件負載均衡交換機剛需要十多萬至幾十萬元人民幣;
- Nginx作為負載均衡服務器: Nginx 既可以在內部直接支持 Rails 和 PHP 程序對外進行服務, 也可以支持作為HTTP代理 服務器對外進行服務. Nginx采用C進行編寫, 不論是系統資源開銷還是CPU使用效率都比 Perlbal 要好很多;
- 作為郵件代理服務器: Nginx 同時也是一個非常優秀的郵件代理服務器(最早開發這個產品的目的之一也是作為郵件代理服務器),Last.fm描述了成功並且美妙的使用經驗;
- Nginx 是一個 [#installation 安裝] 非常的簡單 ,配置文件?非常簡潔(還能夠支持perl語法),Bugs非常少的服務器: Nginx 啟動特別容易, 並且幾乎可以做到7*24不間斷運行,即使運行數個月也不需要重新啟動. 你還能夠不間斷服務的情況下進行軟件版本的升級;
- 穩定性高:用於反向代理,宕機的概率微乎其微。
為什麽Nginx的性能要比Apache高得多?這得益於Nginx使用了最新的epoll(Linux 2.6內核)和kqueue(freebsd)網絡I/O模型,而Apache則使用的是傳統的select模型。目前Linux下能夠承受高並發訪問的Squid、Memcached都采用的是epoll網絡I/O模型。
處理大量的連接的讀寫,Apache所采用的select網絡I/O模型非常低效。下面用一個比喻來解析Apache采用的select模型和Nginx采用的epoll模型進行之間的區別:
假設你在大學讀書,住的宿舍樓有很多間房間,你的朋友要來找你。select版樓管大媽就會帶著你的朋友挨個房間去找,直到找到你為止。而epoll版樓管大媽會先記下每位同學的房間號,你的朋友來時,只需告訴你的朋友你住在哪個房間即可,不用親自帶著你的朋友滿大樓找人。如果來了10000個人,都要找自己住這棟樓的同學時,select版和epoll版樓管大媽,誰的效率更高,不言自明。同理,在高並發服務器中,輪詢I/O是最耗時間的操作之一,select和epoll的性能誰的性能更高,同樣不言自明了。
安裝 FreeBSD7.2操作系統的安裝建議參考FreeBSD Handbook,在此僅給出鏈接,以避免不必要的重復勞動:
- 英文版
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/install.html - 中文版
http://cnsnap.cn.freebsd.org/doc/zh_CN.GB2312/books/handbook/install.html
1. 磁盤分區
由於是WEB服務系統,網站目錄都放於/home目錄下,因此home分區要有足夠的空間。以一塊硬盤146G/內存4G的服務器為例,可做如下分區:
/ 1024M
swap 4096M
/var 10G
/usr 20G
/home 110G
/tmp 1024M
2. 軟件包的選擇
我們的WEB服務系統是要對外服務的,所以盡可能少的選擇軟件包,安裝時建議選擇Minimal,然後進入Custom選擇doc,info,man,src即可。
配置 1. 編輯/etc/rc.conf確保有如下內容:
sshd_enable="YES"
named_enable="YES"2.根據硬件的配置重新編譯內核,編譯內核的辦法參考FreeBSD Handbook,這裏只給出鏈接:
- 英文版
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig.html - 中文版
http://cnsnap.cn.freebsd.org/doc/zh_CN.GB2312/books/handbook/kernelconfig.html
獲取相關開源軟件包本文中提到的所有開源軟件包為截止到2009年10月20日的最新穩定版,且均從官方網站下載。 mkdir -p /home/software
cd /home/software
fetch http://sysoev.ru/nginx/nginx-0.8.24.tar.gz
fetch ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.00.tar.gz
fetch ftp://xmlsoft.org/libxml2/libxml2-2.7.6.tar.gz
fetch http://www.zlib.net/zlib-1.2.3.tar.gz
fetch ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng-1.2.40.tar.gz
fetch http://www.ijg.org/files/jpegsrc.v7.tar.gz
fetch http://ftp.twaren.net/Unix/NonGNU/freetype/freetype-2.3.11.tar.gz
fetch http://www.libgd.org/releases/gd-2.0.35.tar.gz
fetch http://www.php.net/get/php-5.2.11.tar.gz/from/this/mirror
fetch http://php-fpm.org/downloads/php-5.2.11-fpm-0.5.13.diff.gz
fetch http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.tar.gz
安裝 Mysql5.1.40Mysql5.1.40 下載地址: [url]http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.40.tar.gz/from/pick [/url]pw groupadd mysql
pw useradd mysql -g mysql -d /dev/null -s /sbin/nologin
tar zxvf mysql-5.1.40.tar.gz
cd mysql-5.1.40
./configure --prefix=/usr/local/webserver/mysql/ --enable-assembler --with-extra-charsets=complex --enable-thread-safe-client --with-big-tables --with-readline --with-ssl --with-embedded-server --enable-local-infile --with-plugins=innobase
make && make install clean
chmod +w /usr/local/webserver/mysql
chown -R mysql:mysql /usr/local/webserver/mysql
cp /usr/local/webserver/mysql/support-files/my-medium.cnf /usr/local/webserver/mysql/my.cnf
cd ..
以mysql用戶帳號的身份建立數據表 /usr/local/webserver/mysql/bin/mysql_install_db --datadir=/usr/local/webserver/mysql/data --user=mysql
創建 Mysql 開機啟動腳本 cp /usr/local/webserver/mysql/share/mysql/mysql.server /usr/local/etc/rc.d/mysql.sh
為 mysql.sh 腳本設置可執行屬性 chmod +x /usr/local/etc/rc.d/mysql.sh
修改 /etc/rc.conf vi /etc/rc.conf
加入以下內容 mysql_enable="YES"
啟動 Mysql /usr/local/etc/rc.d/mysql.sh start
安裝 Nginx安裝Nginx所需的pcre庫tar zxvf pcre-8.00.tar.gz
cd pcre-8.00
./configure
make && make install clean
cd ..
安裝 Nginx0.8.24tar zxvf nginx-0.8.24.tar.gz
cd nginx-0.8.24
./configure --user=www --group=www --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module
make && make install clean
cd ..
創建 Nginx 日誌目錄mkdir -p /var/log/nginx
chmod +w /var/log/nginx
chown -R www:www /var/log/nginx
創建 Nginx 配置文件rm -f /usr/local/webserver/nginx/conf/nginx.conf
vi /usr/local/webserver/nginx/conf/nginx.conf
輸入以下內容: user www www;worker_processes 8;error_log /var/log/nginx/error.log;pid /var/log/nginx/nginx.pid;worker_rlimit_nofile 51200;events { use kqueue; worker_connections 51200;}http { include mime.types; default_type application/octet-stream; server_names_hash_bucket_size 128; client_header_buffer_size 32k; large_client_header_buffers 4 32k; client_max_body_size 8m; sendfile on; tcp_nopush on; keepalive_timeout 30; tcp_nodelay on; fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300; fastcgi_buffer_size 64k; fastcgi_buffers 4 64k; fastcgi_busy_buffers_size 128k; fastcgi_temp_file_write_size 128k; gzip on; gzip_min_length 1k; gzip_buffers 4 16k; gzip_http_version 1.1; gzip_comp_level 2; gzip_types text/plain application/x-javascript text/css application/xml gzip_vary on; server { listen 80; server_name localhost; root /home/excms; index index.html index.htm index.php; location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location /nginx_status { stub_status on; access_log off; } }}
創建 Nginx 開機啟動腳本 vi /usr/local/etc/rc.d/nginx.sh
加入以下內容#!/bin/shnginx=/usr/local/webserver/nginx/sbin/nginxconf=/usr/local/webserver/nginx/conf/nginx.confcase $1 in start) echo -n "Starting Nginx" $nginx -c $conf echo " done" ;; stop) echo -n "Stopping Nginx" killall -9 nginx echo " done" ;; test) $nginx -t -c $conf ;; reload) echo -n "Reloading Nginx" ps auxww | grep nginx | grep master | awk '{print $2}' | xargs kill -HUP echo " done" ;; restart) $nginx stop $nginx start ;; show) ps -aux|grep nginx ;; *) echo -n "Usage: $0 {start|restart|reload|stop|test|show}" ;; esac
為 nginx.sh 腳本設置可執行屬性 chmod +x /usr/local/etc/rc.d/nginx.sh
修改 /etc/rc.conf vi /etc/rc.conf
加入以下內容 nginx_enable="YES"
啟動 Nginx /usr/local/etc/rc.d/nginx.sh start
在不停止 Nginx 服務的情況下平滑變更 Nginx 配置
修改 /usr/local/webserver/nginx/conf/nginx.conf 配置文件後,請執行以下命令檢查配置文件是否正確: /usr/local/etc/rc.d/nginx.sh test
如果屏幕顯示以下兩行信息,說明配置文件正確:
the configuration file /usr/local/webserver/nginx/conf/nginx.conf syntax is ok
the configuration file /usr/local/webserver/nginx/conf/nginx.conf was tested successfully
平滑變更 Nginx 配置 /usr/local/etc/rc.d/nginx.sh reload
安裝 GD安裝 zlibtar zxvf zlib-1.2.3.tar.gzcd zlib-1.2.3./configuremake && make install cleancd ..
安裝 libpngtar zxvf libpng-1.2.40.tar.gzcd libpng-1.2.40./configuremake && make install cleancd ..
安裝 jpegtar zxvf jpegsrc.v7.tar.gzcd jpeg-7./configure –prefix=/usr/local/jpeg7 -enable-shared -enable-staticmake && make install cleancd ..
安裝 freetypetar zxvf freetype-2.3.11.tar.gzcd freetype-2.3.11./configuremake && make install cleancd ..
安裝 gd2.0.35tar zxvf gd-2.0.35.tar.gzcd gd-2.0.35./configure --prefix=/usr/local/gd2 --with-jpeg=/usr/local/jpeg7 --width-png --width-zlib --width-freetypemake && make install cleancd ..
安裝 libxml2tar -zxvf libxml2-2.7.6.tar.gzcd libxml2-2.7.6./configuremake && make install cleancd ..
安裝 PHP5.2.11編譯安裝PHP 5.2.11所需的支持庫 libiconvtar zxvf libiconv-1.13.tar.gz
cd libiconv-1.13
./configure --prefix=/usr/local
make && make install clean
cd ..
編譯安裝PHP(FastCGI模式)tar zxvf php-5.2.11.tar.gz
gzip -cd php-5.2.11-fpm-0.5.13.diff.gz | patch -d php-5.2.11 -p1
cd php-5.2.11
./configure --prefix=/usr/local/webserver/php --with-config-file-path=/usr/local/webserver/php/etc --with-mysql=/usr/local/webserver/mysql --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-gd --enable-gd-native-ttf --with-libxml-dir --enable-xml --disable-rpath --enable-discard-path --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curlwrappers --enable-mbregex --enable-fastcgi --enable-fpm --enable-force-cgi-redirect --enable-mbstring --with-openssl --enable-pcntl --enable-sockets
make ZEND_EXTRA_LIBS='-liconv'
make install clean
cp php.ini-dist /usr/local/webserver/php/etc/php.ini
cd ..
安裝 ZendOptimizerZendOptimizer 官方下載地址: http://www.zend.com/en/products/guard/downloads tar zxvf ZendOptimizer-3.3.9-freebsd6.0-i386.tar.gzcd ZendOptimizer-3.3.3-freebsd6.0-i386ln -s /usr/lib/libc.so /usr/lib/libc.so.6 ln -s /usr/lib/libcrypt.so /usr/lib/libcrypt.so.3 ln -s /usr/lib/libutil.so /usr/lib/libutil.so.5 ln -s /usr/lib/libm.so /usr/lib/libm.so.4 ./install-ttycd ..
安裝過程中的提示全默認就可以,指定php.ini文件路徑 /usr/local/webserver/php/etc,到Apache Web Server選no
修改php-fpm配置文件php-fpm是為PHP打的一個FastCGI管理補丁,可以平滑變更php.ini配置而無需重啟php-cgi vi /usr/local/webserver/php/etc/php-fpm.conf
將
如要顯示PHP調試的錯誤信息將
創建 PHP-fpm 開機啟動腳本 vi /usr/local/etc/rc.d/php-fpm.sh
加入以下內容
#! /bin/shphp_fpm_BIN=/usr/local/webserver/php/bin/php-cgi
php_fpm_CONF=/usr/local/webserver/php/etc/php-fpm.conf
php_fpm_PID=/usr/local/webserver/php/logs/php-fpm.pid
php_opts="--fpm-config $php_fpm_CONF"
wait_for_pid () { try=0 while test $try -lt 35 ; do case "$1" in 'created') if [ -f "$2" ] ; then try='' break fi ;; 'removed') if [ ! -f "$2" ] ; then try='' break fi ;; esac echo -n . try=`expr $try + 1` sleep 1 done}case "$1" in start) echo -n "Starting php_fpm " $php_fpm_BIN --fpm $php_opts if [ "$?" != 0 ] ; then echo " failed" exit 1 fi wait_for_pid created $php_fpm_PID if [ -n "$try" ] ; then echo " failed" exit 1 else echo " done" fi ;; stop) echo -n "Shutting down php_fpm " if [ ! -r $php_fpm_PID ] ; then echo "warning, no pid file found - php-fpm is not running ?" exit 1 fi kill -TERM `cat $php_fpm_PID` wait_for_pid removed $php_fpm_PID if [ -n "$try" ] ; then echo " failed" exit 1 else echo " done" fi ;; quit) echo -n "Gracefully shutting down php_fpm " if [ ! -r $php_fpm_PID ] ; then echo "warning, no pid file found - php-fpm is not running ?" exit 1 fi kill -QUIT `cat $php_fpm_PID` wait_for_pid removed $php_fpm_PID if [ -n "$try" ] ; then echo " failed" exit 1 else echo " done" fi ;; restart) $0 stop $0 start ;; reload) echo -n "Reload service php-fpm " if [ ! -r $php_fpm_PID ] ; then echo "warning, no pid file found - php-fpm is not running ?" exit 1 fi kill -USR2 `cat $php_fpm_PID` echo " done" ;; logrotate) echo -n "Re-opening php-fpm log file " if [ ! -r $php_fpm_PID ] ; then echo "warning, no pid file found - php-fpm is not running ?" exit 1 fi kill -USR1 `cat $php_fpm_PID` echo " done" ;; *) echo "Usage: $0 {start|stop|quit|restart|reload|logrotate}" exit 1 ;;esac
為 php-fpm.sh 腳本設置可執行屬性 chmod +x /usr/local/etc/rc.d/php-fpm.sh
修改 /etc/rc.conf vi /etc/rc.conf
加入以下內容 php_fpm_enable="YES"
啟動 PHP-fpm /usr/local/etc/rc.d/php-fpm.sh start
在不停止 PHP-fpm 服務的情況下平滑變更 php.ini 配置
修改 /usr/local/webserver/php/etc/php.ini 或者 /usr/loca/webserver/php/etc/php-fpm.conf 配置文件後,請執行以下命令檢查配置文件是否正確: /usr/local/etc/rc.d/php-fpm.sh reload
測試在/home/excms 目錄下新建 phpinfo.php vi /home/excms/phpinfo.php
加入如下文本
打開瀏覽器,在地址欄裏輸入 http://您服务器的IP/phpinfo.php 系統優化修改內核參數,編輯 /boot/loader.conf vi /boot/loader.conf
加入如下文本 kern.dfldsiz="2147483648" # Set the initial data size limi
tkern.maxdsiz="2147483648" # Set the max data size
kern.ipc.nmbclusters="0" # Set the number of mbuf clusterskern.ipc.nsfbufs="66560" # Set the number of sendfile(2) bufs
解釋:
a.第一,第二行主要是為了突破1G內存設置的
b. 第三行其實是bsd的一個bug,當系統並發達到一個數量級的時候,系統會crash,這個是非常糟糕的事情,所幸更改了這個參數後,在高並發的時候,基本可以沒有類似情況,當然非常bt的情況,還得進一步想辦法
c.第四行是讀取的文件數,如果你下載的文件比較大,且比較多,加大這個參數,是非常爽的 防ddos攻擊Sysctl 修改vi /etc/rc.local
加入如下文本 sysctl kern.ipc.maxsockets=100000 ##增加並發的socket,對於ddos很有用sysctl kern.ipc.somaxconn=65535 ##打開文件數
sysctl net.inet.tcp.msl=2500 ##timeout時間
====== FreeBSD + Nginx + php + MySQL ======
====== FreeBSD + Nginx + php + MySQL ======
資料來源:http://www.mgt.ncu.edu.tw/~jerry54010/doku/data/pages/freebsd/8.1_nginx_php_mysql.txt
我個人是直接把apache直接換成Nginx \\
其他只是多安裝一些模組而已,因此換起來還好, \\
不過還是稍微會寫一些安裝上的順序。 \\
==== 安装MySQL ====
(此部份是[[freebsd:8.1安裝紀錄
此篇文章]]直接複製過來,MySQL server的安裝步驟其實都一樣)
*安裝mysql server
設定編碼為utf8
# cd /usr/ports/databases/mysql50-server
# make WITH_CHARSET=utf8 WITH_XCHARSET=all WITH_COLLATION=utf8_unicode_ci BUILD_OPTIMIZED=yes install clean
*安裝資料庫
#rehash
#sudo mysql_install_db (記得需要用root權限)
*複製設定檔
*變更mysql資料庫權限
*初始啟動
*新增使用者root
也可以是這樣
前者會出現"Enter Password", 就當做是confirm就好了
*進入MySQL
輸入剛剛設定的密碼即可
==== 安裝PHP ====
*安裝php
# cd /usr/ports/lang/php5
# make config install clean
將下面的模組勾一勾,沒有的選項就不管他了~
[X] CLI Build CLI version
[X] CGI Build CGI version
[X] FPM 必勾!!! Nginx處理php時是要交給他處理
[X] APACHE Build Apache module
[ ] DEBUG Enable debug
[X]] SUHOSIN Enable Suhosin protection system
[X] MULTIBYTE Enable zend multibyte support
[ ] IPV6 Enable ipv6 support
[ ] REDIRECT Enable force-cgi-redirect support (CGI only)
[ ] DISCARD Enable discard-path support (CGI only)
[X] FASTCGI Enable fastcgi support (CGI only)
[X] PATHINFO Enable path-info-check support (CGI only)
*安裝php5-entensions
# cd /usr/ports/lang/php5-extensions/
# make config install clean
勾選需要的extension,下面必裝,其餘隨意。
[X] FTP FTP support
[X] GD
[X] GETTEXT
[X] MBSTRING
[X] MYSQL
[ ] POSIX //去掉.
[ ] SQLITE //去掉.
[X] ZLIB
*修改PHP設定檔
# cd /usr/local/etc
# cp php.ini-development php.ini
==== 安裝nginx ====
#cd /usr/ports/www/nginx/
#make install clean
安裝nginx就是這麼簡單~
設定nginx的部份:
編輯/usr/local/etc/nginx/nginx.conf
將#user nobody;
改成:user www;
找到下面的部份:
location / {
root /usr/local/www/nginx; //網頁目錄可以換,看你網頁放哪 (ex./home/www)
index index.html index.htm; //記得加入 index.php 等等
}
下面是給FPM處理PHP的部份,記得先將前面的#註解刪掉, \\
然後將fastcgi_param的/scripts$fastcgi_script.name \\
更改為:/你的網頁目錄$fastcgi_script.name \\
例如:/home/www$fastcgi_script.name \\
#location ~ \.php$ {
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script.name;
# include fastcgi_params;
#}
安裝完後
記得編輯 /etc/rc.conf
加入
mysql_enable="YES"
nginx_enable="YES"
php_fpm_enable="YES"
這樣就可以啦~~~
如果有phpmyadmin的話,可以將該資料夾整個複製到網頁根目錄底下,就可以操作了~~
資料來源:http://www.mgt.ncu.edu.tw/~jerry54010/doku/data/pages/freebsd/8.1_nginx_php_mysql.txt
我個人是直接把apache直接換成Nginx \\
其他只是多安裝一些模組而已,因此換起來還好, \\
不過還是稍微會寫一些安裝上的順序。 \\
==== 安装MySQL ====
(此部份是[[freebsd:8.1安裝紀錄
此篇文章]]直接複製過來,MySQL server的安裝步驟其實都一樣)
*安裝mysql server
設定編碼為utf8
# cd /usr/ports/databases/mysql50-server
# make WITH_CHARSET=utf8 WITH_XCHARSET=all WITH_COLLATION=utf8_unicode_ci BUILD_OPTIMIZED=yes install clean
*安裝資料庫
#rehash
#sudo mysql_install_db (記得需要用root權限)
*複製設定檔
#cp /usr/local/share/mysql/my-medium.cnf /etc/my.cnf
*變更mysql資料庫權限
#sudo chown -R mysql:mysql /var/db/mysql
*初始啟動
#sudo mysqld_safe &
*新增使用者root
#sudo mysqladmin -u root -p password 'Your_password'
也可以是這樣
#sudo mysqladmin -u root passowrd 'Your_password'
前者會出現"Enter Password", 就當做是confirm就好了
*進入MySQL
#sudo mysql -u root
輸入剛剛設定的密碼即可
==== 安裝PHP ====
*安裝php
# cd /usr/ports/lang/php5
# make config install clean
將下面的模組勾一勾,沒有的選項就不管他了~
[X] CLI Build CLI version
[X] CGI Build CGI version
[X] FPM 必勾!!! Nginx處理php時是要交給他處理
[X] APACHE Build Apache module
[ ] DEBUG Enable debug
[X]] SUHOSIN Enable Suhosin protection system
[X] MULTIBYTE Enable zend multibyte support
[ ] IPV6 Enable ipv6 support
[ ] REDIRECT Enable force-cgi-redirect support (CGI only)
[ ] DISCARD Enable discard-path support (CGI only)
[X] FASTCGI Enable fastcgi support (CGI only)
[X] PATHINFO Enable path-info-check support (CGI only)
*安裝php5-entensions
# cd /usr/ports/lang/php5-extensions/
# make config install clean
勾選需要的extension,下面必裝,其餘隨意。
[X] FTP FTP support
[X] GD
[X] GETTEXT
[X] MBSTRING
[X] MYSQL
[ ] POSIX //去掉.
[ ] SQLITE //去掉.
[X] ZLIB
*修改PHP設定檔
# cd /usr/local/etc
# cp php.ini-development php.ini
==== 安裝nginx ====
#cd /usr/ports/www/nginx/
#make install clean
安裝nginx就是這麼簡單~
設定nginx的部份:
編輯/usr/local/etc/nginx/nginx.conf
將#user nobody;
改成:user www;
找到下面的部份:
location / {
root /usr/local/www/nginx; //網頁目錄可以換,看你網頁放哪 (ex./home/www)
index index.html index.htm; //記得加入 index.php 等等
}
下面是給FPM處理PHP的部份,記得先將前面的#註解刪掉, \\
然後將fastcgi_param的/scripts$fastcgi_script.name \\
更改為:/你的網頁目錄$fastcgi_script.name \\
例如:/home/www$fastcgi_script.name \\
#location ~ \.php$ {
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script.name;
# include fastcgi_params;
#}
安裝完後
記得編輯 /etc/rc.conf
加入
mysql_enable="YES"
nginx_enable="YES"
php_fpm_enable="YES"
這樣就可以啦~~~
如果有phpmyadmin的話,可以將該資料夾整個複製到網頁根目錄底下,就可以操作了~~
2012年11月11日 星期日
Freebsd6.1+AMP手工整合指南
來源:http://www.linuxdiyf.com/viewarticle.php?id=25784
|
2012年11月10日 星期六
用csup更新port tree
用csup更新port tree
版本FreeBAD 6.2 RELEASE
在6.2版csup已經被納入預設的套件中了,所以不必像以前一樣還得先安裝csup。
直接建立設定檔就可以了
# vi /etc/make.conf
//加入下列文字
SUPHOST= cvsup.tw.freebsd.org
SUP_UPDATE= yes
SUP= /usr/bin/csup
SUPFLAGS= -g -L 2SUPFILE= /usr/share/examples/cvsup/stable-supfile
PORTSSUPFILE= /usr/share/examples/cvsup/ports-supfile
//更新ports tree
# cd /usr/ports
# make update
//更新src
# cd /usr/src
# make update
在6.2版csup已經被納入預設的套件中了,所以不必像以前一樣還得先安裝csup。
直接建立設定檔就可以了
# vi /etc/make.conf
//加入下列文字
SUPHOST= cvsup.tw.freebsd.org
SUP_UPDATE= yes
SUP= /usr/bin/csup
SUPFLAGS= -g -L 2SUPFILE= /usr/share/examples/cvsup/stable-supfile
PORTSSUPFILE= /usr/share/examples/cvsup/ports-supfile
//更新ports tree
# cd /usr/ports
# make update
//更新src
# cd /usr/src
# make update
2012年10月21日 星期日
2012年10月7日 星期日
2012年10月1日 星期一
五招圖解 Google 搜尋密技
五招圖解 Google 搜尋密技
江湖上有這麼一說:欲練神功,必先谷歌而你是否每次在Google時都只加入空白鍵分隔關鍵字呢?
最近伊利諾Wesleyan 大學的研究發現只有不到25%的學生擁有理想的搜尋技能,而大部份的學生對於搜尋過程上都有相當程度的困難與阻礙。相對於資訊同樣發達的台灣學生與研究生,可是相當大的警訊,如何有效率的搜尋可是攸關報告和論文能否準時交差呀。
詳細情況:請參閱http://www.businessweekly.com.tw/blog/article.php?id=1029
2012年9月23日 星期日
windows 2003 iis6.0 的配置方法
windows 2003 iis6.0 的配置方法
安裝 Internet 信息服務
Microsoft Internet 信息服務 (IIS) 是與 Windows Server 2003 集成的 Web 服務。
要安裝 IIS、增加可選元件或刪除可選元件,請按以下步驟操作:
1. 按擊開始,指向控制台,然後按擊「增加或刪除程式」。
「增加或刪除程式」工具就會啟動。
2. 按擊增加/刪除 Windows 元件。
顯示「Windows 元件精靈」。
3. 在Windows 元件 列表中,按擊Web 套用程式服務器。
4. 按擊詳細資料,然後按擊Internet 信息服務 (IIS)。
5. 按擊詳細資料 ,以檢視 IIS 可選元件列表。
6. 選項您要安裝的可選元件。預設情況下,下列元件是選的:
--- 公用文件
--- FrontPage 2002 Server Extentions
--- Internet 信息服務管理單元
--- Internet 信息服務管理器
--- NNTP 服務
--- SMTP 服務
--- World Wide Web 服務
7. 按擊「World Wide Web 服務」,然後按擊詳細資料 ,以檢視 IIS 可選子元件(如
Active Server Pages 元件和「遠端管理 (HTML) 工具」)的列表。選項您要安裝的
可選子元件。預設情況下,下列元件是選的:
--- World Wide Web 服務
8. 按擊確定 ,直到返回「Windows 元件精靈」。
9. 按擊下一步,然後完成「Windows 元件精靈」。
注:如果要DIY 安裝 (看下面備註)
配置匿名身份驗證
要配置匿名身份驗證,請按以下步驟操作:
1. 按擊開始,指向管理工具,然後按擊Internet 信息服務 (IIS)。
2. 展開「* 服務器名稱」(其中服務器名稱 為該服務器的名稱),右鍵按擊Web 站點
,然後按擊屬性內容內容。
3. 在Web 站點屬性內容內容 對話視窗中,按擊目錄安全性 選項項。
4. 在「身份驗證和訪問控制」下,按擊編輯。
5. 按擊「啟用匿名訪問」複選方框,將其選。
備註:「用戶名」框中的用戶帳戶只用於通過 Windows guest 帳戶進行匿名訪問。
預設情況下,服務器會新增並使用帳戶 IUSR_computername。匿名用戶帳戶密碼僅在
Windows 中使用;匿名用戶不使用用戶名和密碼登入。
6. 在「已驗證身份的訪問」下,按擊「集成的 Windows 身份驗證」複選方框,將其選
中。
7. 按擊確定 兩次。
基本 Web 站點配置
1. 按擊開始,指向管理工具,然後按擊Internet 信息服務 (IIS)。
2. 展開「* 服務器名稱」(其中服務器名稱 為該服務器的名稱),然後展開Web 站
點。
3. 右鍵按擊預設 Web 站點,然後按擊屬性內容內容。
4. 按擊Web 站點 選項項。如果您已為電腦分配了多個 IP 位址,則請在IP 位址 框
中按擊您要指定給此 Web 站點的 IP 位址。
5. 按擊性能 選項項。使用Web 站點屬性內容內容 - 性能 對話視窗可設定影響記憶體、帶寬使用和
Web 連接數量的屬性內容內容。
通過配置某個特定站點上的網路帶寬,您可以更好地控制該站點的通信量。例如,通過
在低優先級的 Web 站點上限制帶寬,您可以放寬對他站點的訪問量的限制。同樣,當
您指定到某個 Web 站點的連接數量時,您就可以為其他站點釋放資源。設定是站點專
用的,應根據網路通信量和使用變化情況進行調整。
--- 按擊「限制可用於此 Web 站點的帶寬」複選方框,將其選,可配置 IIS 將網路帶
寬調節到選定的最大帶寬量,以千字元每秒 (KB/S) 為服務機構。
--- 按擊Web 服務連接 複選方框,將其選,可選項特定數目或者不限定數目的 Web 服
務連接。限制連接可使電腦資源能夠用於其他工作。
備註:每個瀏覽 Web 站點的客戶端機通常都使用大約三個連接。
6. 按擊主目錄 選項項。
--- 如果您想使用存儲在本機電腦上的 Web 內容,則按擊「此電腦上的目錄」然
後在本機路徑 框中鍵入您想要的路徑。例如,預設路徑為 C:\Inetpub\wwwroot。
備註:為了增加安全性,請不要在根目錄下新增 Web 內容資料夾。
--- 如果要使用存儲在另一台電腦上的 Web 內容,則按擊「另一電腦上的共享位
置」,然後在顯示的網路目錄 框中鍵入所需位置。
--- 如果您要使用存儲在另一個 Web 位址的 Web 內容,則按擊「重轉發IP到 URL」,然
後在「重轉發IP到」框中鍵入所需位置。在「客戶會送到」下,按擊相應的複選方框,將其
選。
7. 按擊我的文件 選項項。請注意可由 IIS 用作預設啟動我的文件的我的文件列表。如果您要使用
Index.html 作為啟動我的文件,就必須增加它。增加方法是:
a. 按擊增加。
b. 在增加預設我的文件 對話視窗中,鍵入 Index.html,然後按擊確定。
c. 按擊向上箭頭 按鈕,直到 Index.html 顯示在列表的頂部。
8. 按擊確定 ,關閉預設 Web 站點屬性內容內容 對話視窗。
9. 右鍵按擊預設 Web 站點,然後按擊權限。
10. 請注意在此 Web 站點上具有操作權限的用戶帳戶。按擊增加 增加其他可操作此
Web 站點的用戶帳戶。
11. 按擊確定 ,返回到「Internet 信息服務」視窗。
12. 右鍵按擊預設 Web 站點,然後按擊停止。
13. 右鍵按擊預設 Web 站點,然後按擊開始。
現在,該服務器已配置為接受傳入的訪問預設 Web 站點的 Web 請求。您可以將預設
Web 站點的內容替換為您想要的 Web 內容,或者新增新 Web 站點。
-------------------------------------------------------------------------------------------------------------------
備註:將下面儲存為 iis6install.txt 安裝時去掉註釋 上面的路徑會有所改變!
[Components] '所安裝的元件
iis_common = on '公用文件
iis_inetmgr = on 'IIS管理器
iis_www = on 'WWW服務
iis_ftp = on 'FTP服務
iis_htmla = on 'Web方式的IIS管理器
[InternetServer]
Path="D:\inetsrv" 'Common文件放置位置(如果你是卸載了IIS再手動裝,公用文件還
是會位置保持不變)
PathFTPRoot="D:\inetPub\FTPRoot" 'FTP的根路徑
PathWWWRoot="D:\InetPub\wwwroot" 'WWW的根路徑
-------------------------------------------------------------------------------------
將該檔案儲存碟後,執行「sysocmgr /i:%windir%\inf\sysoc.inf
/u:d:\iis6install.txt」
安裝 Internet 信息服務
Microsoft Internet 信息服務 (IIS) 是與 Windows Server 2003 集成的 Web 服務。
要安裝 IIS、增加可選元件或刪除可選元件,請按以下步驟操作:
1. 按擊開始,指向控制台,然後按擊「增加或刪除程式」。
「增加或刪除程式」工具就會啟動。
2. 按擊增加/刪除 Windows 元件。
顯示「Windows 元件精靈」。
3. 在Windows 元件 列表中,按擊Web 套用程式服務器。
4. 按擊詳細資料,然後按擊Internet 信息服務 (IIS)。
5. 按擊詳細資料 ,以檢視 IIS 可選元件列表。
6. 選項您要安裝的可選元件。預設情況下,下列元件是選的:
--- 公用文件
--- FrontPage 2002 Server Extentions
--- Internet 信息服務管理單元
--- Internet 信息服務管理器
--- NNTP 服務
--- SMTP 服務
--- World Wide Web 服務
7. 按擊「World Wide Web 服務」,然後按擊詳細資料 ,以檢視 IIS 可選子元件(如
Active Server Pages 元件和「遠端管理 (HTML) 工具」)的列表。選項您要安裝的
可選子元件。預設情況下,下列元件是選的:
--- World Wide Web 服務
8. 按擊確定 ,直到返回「Windows 元件精靈」。
9. 按擊下一步,然後完成「Windows 元件精靈」。
注:如果要DIY 安裝 (看下面備註)
配置匿名身份驗證
要配置匿名身份驗證,請按以下步驟操作:
1. 按擊開始,指向管理工具,然後按擊Internet 信息服務 (IIS)。
2. 展開「* 服務器名稱」(其中服務器名稱 為該服務器的名稱),右鍵按擊Web 站點
,然後按擊屬性內容內容。
3. 在Web 站點屬性內容內容 對話視窗中,按擊目錄安全性 選項項。
4. 在「身份驗證和訪問控制」下,按擊編輯。
5. 按擊「啟用匿名訪問」複選方框,將其選。
備註:「用戶名」框中的用戶帳戶只用於通過 Windows guest 帳戶進行匿名訪問。
預設情況下,服務器會新增並使用帳戶 IUSR_computername。匿名用戶帳戶密碼僅在
Windows 中使用;匿名用戶不使用用戶名和密碼登入。
6. 在「已驗證身份的訪問」下,按擊「集成的 Windows 身份驗證」複選方框,將其選
中。
7. 按擊確定 兩次。
基本 Web 站點配置
1. 按擊開始,指向管理工具,然後按擊Internet 信息服務 (IIS)。
2. 展開「* 服務器名稱」(其中服務器名稱 為該服務器的名稱),然後展開Web 站
點。
3. 右鍵按擊預設 Web 站點,然後按擊屬性內容內容。
4. 按擊Web 站點 選項項。如果您已為電腦分配了多個 IP 位址,則請在IP 位址 框
中按擊您要指定給此 Web 站點的 IP 位址。
5. 按擊性能 選項項。使用Web 站點屬性內容內容 - 性能 對話視窗可設定影響記憶體、帶寬使用和
Web 連接數量的屬性內容內容。
通過配置某個特定站點上的網路帶寬,您可以更好地控制該站點的通信量。例如,通過
在低優先級的 Web 站點上限制帶寬,您可以放寬對他站點的訪問量的限制。同樣,當
您指定到某個 Web 站點的連接數量時,您就可以為其他站點釋放資源。設定是站點專
用的,應根據網路通信量和使用變化情況進行調整。
--- 按擊「限制可用於此 Web 站點的帶寬」複選方框,將其選,可配置 IIS 將網路帶
寬調節到選定的最大帶寬量,以千字元每秒 (KB/S) 為服務機構。
--- 按擊Web 服務連接 複選方框,將其選,可選項特定數目或者不限定數目的 Web 服
務連接。限制連接可使電腦資源能夠用於其他工作。
備註:每個瀏覽 Web 站點的客戶端機通常都使用大約三個連接。
6. 按擊主目錄 選項項。
--- 如果您想使用存儲在本機電腦上的 Web 內容,則按擊「此電腦上的目錄」然
後在本機路徑 框中鍵入您想要的路徑。例如,預設路徑為 C:\Inetpub\wwwroot。
備註:為了增加安全性,請不要在根目錄下新增 Web 內容資料夾。
--- 如果要使用存儲在另一台電腦上的 Web 內容,則按擊「另一電腦上的共享位
置」,然後在顯示的網路目錄 框中鍵入所需位置。
--- 如果您要使用存儲在另一個 Web 位址的 Web 內容,則按擊「重轉發IP到 URL」,然
後在「重轉發IP到」框中鍵入所需位置。在「客戶會送到」下,按擊相應的複選方框,將其
選。
7. 按擊我的文件 選項項。請注意可由 IIS 用作預設啟動我的文件的我的文件列表。如果您要使用
Index.html 作為啟動我的文件,就必須增加它。增加方法是:
a. 按擊增加。
b. 在增加預設我的文件 對話視窗中,鍵入 Index.html,然後按擊確定。
c. 按擊向上箭頭 按鈕,直到 Index.html 顯示在列表的頂部。
8. 按擊確定 ,關閉預設 Web 站點屬性內容內容 對話視窗。
9. 右鍵按擊預設 Web 站點,然後按擊權限。
10. 請注意在此 Web 站點上具有操作權限的用戶帳戶。按擊增加 增加其他可操作此
Web 站點的用戶帳戶。
11. 按擊確定 ,返回到「Internet 信息服務」視窗。
12. 右鍵按擊預設 Web 站點,然後按擊停止。
13. 右鍵按擊預設 Web 站點,然後按擊開始。
現在,該服務器已配置為接受傳入的訪問預設 Web 站點的 Web 請求。您可以將預設
Web 站點的內容替換為您想要的 Web 內容,或者新增新 Web 站點。
-------------------------------------------------------------------------------------------------------------------
備註:將下面儲存為 iis6install.txt 安裝時去掉註釋 上面的路徑會有所改變!
[Components] '所安裝的元件
iis_common = on '公用文件
iis_inetmgr = on 'IIS管理器
iis_www = on 'WWW服務
iis_ftp = on 'FTP服務
iis_htmla = on 'Web方式的IIS管理器
[InternetServer]
Path="D:\inetsrv" 'Common文件放置位置(如果你是卸載了IIS再手動裝,公用文件還
是會位置保持不變)
PathFTPRoot="D:\inetPub\FTPRoot" 'FTP的根路徑
PathWWWRoot="D:\InetPub\wwwroot" 'WWW的根路徑
-------------------------------------------------------------------------------------
將該檔案儲存碟後,執行「sysocmgr /i:%windir%\inf\sysoc.inf
/u:d:\iis6install.txt」
2012年4月25日 星期三
[SQL]透過指令方式來啟動/停止 SQL SERVER 服務
這個找好久了,終於找到了。。。。可以寫批次檔來操控了。。
[SQL]透過指令方式來啟動/停止 SQL SERVER 服務
在某一些狀況下,需要直接透過指令(ConsoleMode)的方式來啟動/停止 SQL SERVER,
可以透過以下的指令
SQL Server 的預設執行個體:
停止:net stop mssqlserver
啟動:net start mssqlserver
若是具有具名執行個體 (Ex: mssqlserver/ SQLEXPRESS )
停止:net stop MSSQL$SQLEXPRESS
啟動:net start MSSQL$SQLEXPRESS
參考資料:
http://msdn.microsoft.com/zh-tw/library/ms187598.aspx
http://msdn.microsoft.com/zh-tw/library/ms190236.aspx
資料來源:http://www.dotblogs.com.tw/dotjum/archive/2009/07/01/9068.aspx
[SQL]透過指令方式來啟動/停止 SQL SERVER 服務
在某一些狀況下,需要直接透過指令(ConsoleMode)的方式來啟動/停止 SQL SERVER,
可以透過以下的指令
SQL Server 的預設執行個體:
停止:net stop mssqlserver
啟動:net start mssqlserver
若是具有具名執行個體 (Ex: mssqlserver/ SQLEXPRESS )
停止:net stop MSSQL$SQLEXPRESS
啟動:net start MSSQL$SQLEXPRESS
參考資料:
http://msdn.microsoft.com/zh-tw/library/ms187598.aspx
http://msdn.microsoft.com/zh-tw/library/ms190236.aspx
資料來源:http://www.dotblogs.com.tw/dotjum/archive/2009/07/01/9068.aspx
訂閱:
文章 (Atom)