服務器安裝LNMP(centos6.6+nginx1.7.12+mysql5.6.24+php5.6.7)php
準備工具:2個U盤、如下幾個文件html ULtraISO-9.6.2.3059.exe (光盤映像文件製做/編輯/轉換工具)mysql centos-6.6-x86-64-minimail.iso (centos6.6的最小化安裝ISO)nginx libmcrypt-2.5.8.tar.gz (加密函數源碼包)c++ pcre-8.36.tar.gz (pcre語言正則表達式源碼包)web mysql-5.6.24.tar.gz (mysql源碼包)正則表達式 php-5.6.7.tar.gz (php源碼包)sql nginx-1.7.12.tar.gz (nginx源碼包)數據庫 備註:nginx1.7.十二、php5.6.七、mysql5.6.2四、libmcrypt2.5.八、pcre8.36爲固定版本,其餘的編譯工具等網絡下載安裝centos |
一、centos-6.6-x86-64-minimail.iso的內容刻錄到第1個U盤
客戶端插入第1個空U盤,打開UltraISO軟件,打開centos-6.6-x86-64-minimail.iso文件,點擊」啓動」菜單-「寫入硬盤映像…」,硬盤驅動器選擇U盤,點擊」 寫入」,完成後拔出 |
二、源碼安裝包放入到第2個U盤
客戶端插入第2個空U盤,拷貝libmcrypt-2.5.8.tar.gz、pcre-8.36.tar.gz、mysql-5.6.24.tar.gz、php-5.6.7.tar.gz、nginx-1.7.12.tar.gz,完成後拔出 |
1、centos6.6安裝和配置
一、centos6.6安裝
服務器插入第一個U盤
進入BIOS(按F9),設置USB啓動爲首選,按F10退出 按F1繼續進入安裝界面,選擇」install or upgrade an existing system」,回車 選擇」english」語言(避免命令行下面的亂碼問題),點OK 選擇」us」鍵盤類型,點OK 選擇安裝媒體」Hard drive」,點OK 選擇安裝來源」/dev/sda4」,點OK 點next,安裝到哪一個設備,選擇Basic Storage Devices 點next,安裝方式爲全新、升級,選擇全新」Fresh instalation」 點next,輸入網絡標識名稱」test」,設置網絡」configure network」 選擇」system eth0」網卡,點edit,勾選」connect automatically」 點」IPv4 settings」,從method中選擇manual, 點add設置IP、子網掩碼、網關、DNS,點apply,點close 點next,選擇時區」上海」,設置密碼 |
點next,如何分區,選擇」create custom layout」 點create,點create,進入」add partition」對話框頁面(以2塊硬盤爲例子): Mount point:選擇/,ext4分區類型,輸入size,點OK Mount point:選擇/tmp,ext4分區類型,輸入size,點OK File systemtype:選擇SWAP,輸入size,點OK Mount point:選擇/var,ext4分區類型,輸入size,點OK Mount point:選擇/home,ext4分區類型,輸入size,點OK Mount point:選擇/data,ext4分區類型,size選擇」fill to maximum allowable」 ,點OK |
最終造成的分區以下表:
第一塊硬盤: |
第二塊硬盤: |
/系統10G |
/var日誌32G |
/usr系統軟件 |
/home用戶目錄8G |
/usr/local第三方軟件 |
/data數據文件*G(剩餘所有分配) |
/usr/local/src源代碼 |
/data/mysql數據庫文件 |
/tmp臨時文件8G |
/data/website網頁文件 |
swap交換分區8G |
|
點next,選擇」write changes to disk」,寫入磁盤 點」change device」(修改MBR引導),」BIOS drive order」下拉選擇第一個硬盤,點OK 點next,等待安裝完成 點reboot而且拔出U盤,完成安裝 |
二、centos6.6配置
服務器插入第2個U盤
#modprobe usb-storage (若是須要的話)加載usb模塊
#fdisk -l 查看磁盤,usb模塊是否加載成功
#mkdir /mnt/usb 建立usb目錄 #mount /dev/sda4 /mnt/usb 載入U盤(假如U盤是sda4) #cd /mnt/usb 進入/mnt/usb目錄 #cp * /usr/local/src 拷貝/mnt/usb目錄下全部文件到src目錄 |
#umount /mnt/usb (若是須要的話)卸載U盤
#vi /etc/sysconfig/iptables 進入防火牆設置,打開330六、80端口 注意:vi裏面有多餘空格會報錯 對應行下面增長: -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT 通常修改遠程登陸端口22(安全)修改/etc/ssh/sshd_config中Port 22而且重啓/etc/init.d/sshd: #service iptables restart 重啓防火牆使設置生效 |
#yum -y install wget gcc-c++ ncurses-devel cmake make perl libjpeg-devel libpng-devel openssl-devel libxml2-devel gd-devel libcurl-devel sysstat 安裝編譯工具 |
#cd /usr/local/src 進入/usr/local/src目錄 #tar zxvf libmcrypt-2.5.8.tar.gz 解壓libmcrypt-2.5.8.tar.gz #tar zxvf pcre-8.36.tar.gz 解壓pcre-8.36.tar.gz #tar zxvf mysql-5.6.24.tar.gz 解壓mysql-5.6.24.tar.gz #tar zxvf php-5.6.7.tar.gz 解壓php-5.6.7.tar.gz #tar zxvf nginx-1.7.12.tar.gz 解壓nginx-1.7.12.tar.gz |
#cd /usr/local/src/pcre-8.36 進入pcre-8.36目錄 #./configure 配置軟件包 #make 編譯軟件包 #make install 安裝軟件包 #cd /usr/local/src/libmcrypt-2.5.8 進入libmcrypt-2.5.8目錄 #./configure 配置軟件包 #make 編譯軟件包 #make install 安裝軟件包 |
2、mysql、nginx、php安裝和配置
一、mysql、nginx、php安裝
#groupadd mysql 建立用戶組mysql #useradd mysql -g mysql 建立用戶mysql,並加入到mysql組 #mkdir /usr/local/mysql 建立/usr/local/mysql目錄 #mkdir /data/mysql 建立/data/mysql目錄 #mkdir /data/mysql/data 建立/data/mysql/data目錄 |
#vi /etc/profile 編輯profile ,加入PATH搜索路徑 文件最後加入以下2行 PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH export PATH #source /etc/profile 使配置生效 |
#cd /usr/local/src/mysql-5.6.24 進入mysql-5.6.24目錄 #cmake \ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ -DDEFAULT_CHARSET=utf8 \ -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \ -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_MYISAM_STORAGE_ENGINE=1 \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ -DWITH_MEMORY_STORAGE_ENGINE=1 \ -DWITH_READLINE=1 \ -DENABLED_LOCAL_INFILE=1 \ -DMYSQL_DATADIR=/data/mysql/data \ -DMYSQL_USER=mysql \ -DMYSQL_TCP_PORT=3306 #make 編譯mysql #make install 安裝mysql |
#cd /usr/local/src/nginx-1.7.12 進入nginx1.7.12目錄 #./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module #make 編譯nginx #make install 安裝nginx |
#cd /usr/local/src/php-5.6.7 進入php5.6.7目錄 #./configure \ --with-iconv \ --with-zlib \ --enable-xml \ --disable-rpath \ --enable-safe-mode \ --enable-bcmath \ --enable-shmop \ --enable-sysvsem \ --enable-inline-optimization \ --with-curl \ --with-curlwrappers \ --enable-mbregex \ --enable-mbstring \ --with-mcrypt \ --with-gd \ --enable-gd-native-ttf \ --with-openssl \ --with-mhash \ --enable-pcntl \ --enable-sockets \ --with-xmlrpc \ --enable-soap \ --without-pear \ --enable-sqlite-utf8 \ --enable-ftp \ --with-jpeg-dir \ --with-freetype-dir \ --with-png-dir \ --enable-fpm \ --with-fpm-user=httpd \ --with-fpm-group=httpd \ --with-pdo-mysql \ --with-mysqli \ --with-mcrypt=/usr/local/ \ --enable-opcache=no \ #make 編譯php #make install 安裝php |
二、mysql配置
#cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf 拷貝my-default.cnf到/etc下名爲my.cnf #cd /usr/local/mysql 返回上級目錄/usr/local/mysql #scripts/mysql_install_db --user=mysql --datadir=/data/mysql/data 初始化數據庫 #chown -R mysql:mysql /usr/local/mysql 修改/usr/local/mysql目錄權限 #chown -R mysql:mysql /data/mysql/data 修改/data/mysql/data目錄權限 |
#cd /usr/local/mysql/support-files 進入/usr/local/mysql/support-files目錄 #./mysql.server start 啓動mysql服務 #mysql 進入mysql 如下設置mysql遠程鏈接配置 mysql>GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "123456"; root是用戶名,%表明任意主機,'123456'指定的登陸密碼 mysql>flush privileges; 重載系統權限 mysql>quit 退出 |
三、php配置
#cp /usr/local/src/php-5.6.7/php.ini-production /usr/local/lib/php.ini 拷貝php.ini-production到/usr/local/lib目錄下名爲php.ini #cp /usr/local/etc/php-fpm.conf.default /usr/local/etc/php-fpm.conf 拷貝/usr/local/etc/php-fpm.conf.default到/usr/local/etc/目錄下名爲php-fpm.conf |
#groupadd nginx 建立用戶組nginx #useradd nginx -g nginx 建立用戶nginx,並加入到nginx組 #mkdir /var/log/php 建立/var/log/php目錄 #chmod 666 /var/log/php 設置/var/log/php目錄權限 |
#vi /usr/local/lib/php.ini 編輯php.ini,修改時區 時區改成date.timezone="Asia/Shanghai" #vi /usr/local/etc/php-fpm.conf 編輯php-fpm.conf 修改紅色部分 error_log=/var/log/php/php-fpm.log . . . user=nginx group=nginx #/usr/local/sbin/php-fpm 開啓php服務 |
四、nginx配置
#vi /usr/local/nginx/conf/nginx.conf 編輯nginx.conf 修改80端口爲其餘 最後 } 上面加入include vhost/*.conf; |
#mkdir /usr/local/nginx/conf/vhost #ln -s /usr/local/lib/libpcre.so.1 /lib64 添加libpcre.so.1這個模塊 #/usr/local/nginx/sbin/nginx 開啓nginx服務 |
#yum -y update 安裝系統補丁 |
3、站點測試
測試前先創建站點路徑配置文件 php測試頁代碼: <?php phpinfo(); ?> |
php/nginx/mysql啓動命令: /usr/local/sbin/php-fpm /usr/local/nginx/sbin/nginx /usr/local/mysql/support-files/mysql.server start
nginx -s reload :修改配置後從新加載生效
nginx -s reopen :從新打開日誌文件
nginx -t -c /path/to/nginx.conf 測試nginx配置文件是否正確
nginx -s stop :快速中止nginx
quit :完整有序的中止nginx
|
2. 配置nginx 配置,站點路徑指向共享文件夾中的某一項目路徑
3.實現內網轉發,外網能夠直接訪問站點(使用反向代理服務器,網上找到個第三方的,也能夠本身搭個代理服務器,這裏使用免費的,魔法隧道,配置比較簡單)
魔法隧道地址: http://www.mofasuidao.cn/
4.本地搭建ftp服務,使用魔法隧道對ftp 21端口進行轉發(考慮我的電腦安全性暫未實現,即便要實現也必須增長安全性措施,sftp或許更適用)