服務器安裝LNMP及構建我的站點

 

服務器安裝LNMPcentos6.6+nginx1.7.12+mysql5.6.24+php5.6.7)php

本次安裝  centos6.6+nginx1.7.12+mysql5.6.24+php5.6.31(虛擬機方式安裝,跳過第一步)
libmcrypt https://nchc.dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz
pcre https://nchc.dl.sourceforge.net/project/pcre/pcre/8.36/pcre-8.36.tar.gz
mysql  http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.24.tar.gz
php  http://hk2.php.net/distributions/php-5.6.31.tar.gz
下載文件命令 wget url
 

準備工具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配置

服務器插入第2U

#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、mysqlnginxphp安裝和配置

一、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


我是用虛擬機搭的環境,作了些其餘的操做,僅供參考:

1. 啓用共享文件夾(使宿主機、客戶機均可以相互使用同一工做空間)
    i. 啓用VMware Tools,不一樣系統的裝法有點不同,請自行百度。
    ii.虛擬機->設置->選項->共享文件夾,點擊啓用,添加,按步驟來就好了
 

2. 配置nginx 配置,站點路徑指向共享文件夾中的某一項目路徑

    server {
        listen       8088;
        server_name  localhost;
        #root         html;
        root         /mnt/hgfs/website/basic/web;   #所指向共享文件夾路徑
        index         index.html index.php;
     
        #php解析
        location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;                
            fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$document_root$fastcgi_script_name;
        #    include        fastcgi_params;
            include        fastcgi.conf;
        }
 
      

3.實現內網轉發,外網能夠直接訪問站點(使用反向代理服務器,網上找到個第三方的,也能夠本身搭個代理服務器,這裏使用免費的,魔法隧道,配置比較簡單)

 魔法隧道地址: http://www.mofasuidao.cn/

4.本地搭建ftp服務,使用魔法隧道對ftp 21端口進行轉發(考慮我的電腦安全性暫未實現,即便要實現也必須增長安全性措施,sftp或許更適用)

 

經過這些就能夠實現一個供演示玩耍的站點了,不過在操做權限上面作好防範,畢竟是我的電腦。
相關文章
相關標籤/搜索