centos6.5開發環境部署(nignx1.7.10+php5.4.38+mysql+ftp)

awen1983發表於2019-05-13

一些命令和規則以及準備

本次流程再 DigitalOcean上的vps上通過

 

檢視是否已經安裝

rpm -qa | grep nginx

刪除安裝

#普通刪除模式
rpm -e nginx
#強力刪除模式,如果使用上面命令刪除時,提示有依賴的其它檔案,則用該命令可以對其進行強力刪除
rpm -e –nodeps nginx

檢視埠是否被佔用

netstat -ano|grep 80

目錄

#原始碼
/usr/local/src
#安裝目錄
/user/local/

安裝編譯程式碼需要的包

yum -y install gcc automake autoconf libtool make gcc-c++ cmake bison-devel mhash-devel libxslt-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel

#centos源不能安裝libmcrypt-devel,要用第三方源
wget http://www.atomicorp.com/installers/atomic
sh ./atomic
yum -y install php-mcrypt libmcrypt libmcrypt-devel

#有的平臺預設沒有wget ,手動安裝
yum install wget

安裝nginx

安裝PCRE庫(為了重寫rewrite)

cd /usr/local/src

wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.35.tar.gz
tar -zxvf pcre-8.35.tar.gz
cd pcre-8.35
./configure
make
make install

安裝zlib庫(為了支援壓縮)

cd /usr/local/src

wget http://zlib.net/zlib-1.2.8.tar.gz
tar -zxvf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure
make
make install

安裝ssl

cd /usr/local/src

wget http://www.openssl.org/source/openssl-1.0.1c.tar.gz
tar -zxvf openssl-1.0.1c.tar.gz

安裝nginx

cd /usr/local/src

wget http://nginx.org/download/nginx-1.7.10.tar.gz
tar -zxvf nginx-1.7.10.tar.gz
cd nginx-1.7.10

#–with-pcre=/usr/src/pcre-8.35 指的是pcre-8.35 的原始碼路徑。
#–with-zlib=/usr/src/zlib-1.2.7 指的是zlib-1.2.7 的原始碼路徑。
./configure –sbin-path=/usr/local/nginx/nginx –conf-path=/usr/local/nginx/nginx.conf –pid-path=/usr/local/nginx/nginx.pid –with-http_ssl_module –with-pcre=/usr/local/src/pcre-8.35 –with-zlib=/usr/local/src/zlib-1.2.8 –with-openssl=/usr/local/src/ openssl-1.0.1c

make #編譯時間很長,可以去喝杯茶
make install

配置

#配置檔案
/usr/local/nginx/nginx.conf

#開啟php支援,只需要安裝php後,開啟nginx配置檔案中加入以下部分,重啟nginx
location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
#fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# 原始的nginx配置是上面註釋的部分,應該改成下面部分
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

#軟連線到全域性呼叫
ln -s /usr/local/nginx/nginx /usr/local/bin/nginx

啟動
nginx
nginx -s reload #重啟

安裝 php

1 安裝

cd /usr/local/src
wget http://am1.php.net/distributions/php-5.4.38.tar.gz
tar -zxvf php-5.4.38.tar.gz

cd php-5.4.38
./configure –prefix=/usr/local/php –enable-fpm –with-mcrypt –enable-mbstring –disable-pdo –with-curl –disable-debug –disable-rpath –enable-inline-optimization –with-bz2 –with-zlib –enable-sockets –enable-sysvsem –enable-sysvshm –enable-pcntl –enable-mbregex –with-mhash –enable-zip –with-pcre-regex –with-mysql –with-mysqli –with-gd –with-jpeg-dir –disable-fileinfo
#記憶體小於1G 必須加 –disable-fileinfo

make all install

2 配置

cd /usr/local/php/etc
cp php-fpm.conf.default php-fpm.conf

#鏈到全域性目錄
ln -s /usr/local/php/sbin/php-fpm /usr/local/bin/php-fpm

# php.ini 位置

cp /etc/php.ini /usr/local/php/lib/php.ini
mv /etc/php.ini /etc/php.ini.bak

3 執行

php-fpm
#手動打補丁的啟動方式:php-fpm start

4 手動打補丁,擴充套件

#擴充套件安裝必須庫
yum -y install php-pear
yum -y install php-devel

#ImageMagick安裝
yum -y install ImageMagick
yum -y install ImageMagick-devel

#php擴充套件庫增加 安裝過程直接回車用預設選項
pecl install imagick
#安裝完畢之後命令列會告訴你安裝到的位置(我的位置):/usr/lib64/php/modules/imagick.so

#php.ini 中增加擴充套件項
vi /usr/local/php/lib/php.ini
extension=/usr/lib64/php/modules/imagick.so #增加項

#重啟
killall php-fpm
php-fpm

 

安裝 mysql


>編譯安裝mysql非常容易遇到各種問題,所以yum安裝吧。。。預設安裝的是5.1版本

1 安裝

yum -y install mysql-server

2 設定開機啟動

chkconfig mysqld on

3 啟動MySql服務

service mysqld start

4 設定MySQL的root使用者設定密碼

mysql -u root
>use mysql;
>select user,host,password from mysql.user;
>set password for root@localhost=password(`123456`);
>exit;
#新密碼登陸
mysql -u root -p

5 開放遠端登入

GRANT ALL PRIVILEGES ON *.* TO `root`@`%` IDENTIFIED BY `123456` WITH GRANT OPTION;
FLUSH PRIVILEGES;

 

安裝ftp伺服器

>自己開發的話直接使用ssh登陸ftp就能玩耍了。但是多人協作的話,還是安裝一些ftp伺服器做許可權管理比較好

1 安裝

#安裝

yum install vsftpd

#設定開機啟動

chkconfig vsftpd on

#啟動|重啟|停止

service vsftp start  #restart|stop

2 與vsftpd伺服器有關的檔案和資料夾

vsftpd伺服器的配置檔案的是: /etc/vsftpd/vsftpd.conf,引數意義:

anonymous_enable=NO            #禁止匿名

local_enable=YES                       #允許本地登入

write_enable=YES                       #允許寫,如需上傳,則必須

local_umask=027                        #將上傳檔案的許可權設定為:777-local_umask

anon_upload_enable=YES          #允許虛擬使用者和匿名使用者上傳

anon_other_write_enable=YES #允許虛擬使用者和匿名使用者修改檔名和刪除檔案

dirmessage_enable=YES           

xferlog_enable=YES                      #開啟日誌記錄

connect_from_port_20=YES

xferlog_file=/var/log/vsftpd.log     #日誌存放位置

xferlog_std_format=YES              #標準日誌格式

idle_session_timeout=600        #空閒連線超時

data_connection_timeout=120

ftpd_banner=Welcome to ChinaRise FTP service       #歡迎資訊

guest_enable=yes                       #允許虛擬使用者

guest_username=vsftpdguest #虛擬使用者使用的系統賬號

virtual_use_local_privs=YES     #虛擬使用者擁有本地系統許可權

 

chroot_local_user=NO              

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

 #以上兩行將虛擬使用者限制在其目錄下,不能訪問其他目錄,或者直接呼叫。被限制的使用者名稱在chroot_list中,一行一個,沒有/etc/vsftpd/chroot_list檔案需要手動建立            

 

 

listen=yes                #監聽/被動模式

listen_port=21        #監聽埠

vsftpd伺服器的根目錄,即FTP伺服器的主目錄:

more /etc/passwd|grep ftp

#下面是輸出

ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

3 新增FTP本地使用者

#增加ftpuser使用者,指向/var/www目錄,屬於ftp使用者組  禁止登陸系統

/usr/sbin/adduser -d /var/www -g ftp -s /sbin/nologin ftpuser

#設定使用者口令

passwd ftpuser


相關文章