安裝lnmp環境:
環境是CentOS7 最小化安裝,安裝時選擇了Development tools等幾個開發工具(具體記不住了)
nginx-1.8.1 mysql-5.7.11 php-5.5.33
要求:
要求:
MYSQL和NGINX 的資料檔,日誌檔放在/data下
安裝目錄也需要改成/data/webserver
一、下載安裝包和設定安裝依賴環境
設定防火牆開放埠80 3306
# firewall-cmd -- z --add-port=80/tcp --permanent
# firewall-cmd --z --add-port=3306/tcp --permanent
# firewall-cmd --reload
設定selinux設定
# vi /etc /selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is ? of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of three two values:
# targeted - 錯誤Only selected processes are protected.
# mls - Multi Level Security protection.
#SELINUXTYPE=targeted
重啟系統
建立安裝目錄:
#mkdir -p /data/webserver/nginx
#mkdir /pwebc/webc/c5/c5/g5/p/dir 5/p/webg/c5/c5/webc/cL/g5/c5/webc/c5/c5/webc痕php
#mkdir /data/webserver/src (軟體下載目錄)
#mkdir /data/mysqldb(mysql資料存放目錄)
下載mysql
#wget http://dev.mysql.com/get/Downownloads/My- 5.7/mysql-5.7.11.tar.gz
下載php
#wget http://cn2.php.net/distributions/php-5.5.33.tar.gz
下載nginx
#wget .http://nginx org/download/nginx-1.8.1.tar.gz
下載cmake(MySQL編譯工具)
#wget http://www.cmake.org/files/v2.8/cmake-2.8.8.tar.gz
下載pcre(支援nginx偽靜態)
#wget http://sourceforge.net/projects/pcre/files/pcre/8.35/pcre-8.35.tar.gz
下載libmcrypt(PHPlibmcryptpget) nchc.dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz
下載boost(從MySQL 5.7.5開始Boost庫是必要的)
#wget http:// downloads.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
#yum -y install make apr* autoconf automake curl-devel gcc gcc-c++ zlib-devel opensvel opens-ded kernel keyutils patch perl kernel-headers compat* mpfr cpp glibc libgomp libstdc++-devel ppl cloog-ppl keyutils-libs-devel libcom_err-devel libsepol-devel
libselinux-devel krb5-devel zlib-devel libXpm* freetype libjpeg* libpng* php-common php-gd ncurses* libtool* libxml2 libxml2-devel patch mhash ntp --skip-broken
、安裝、輸出套件:
#cd /data/webserver/src
#ls *.tar.gz |xargs -n1 tar zxf
2、安裝cmake:
#cd /data/webserver/src/cmake-2.8.8
#./configure
#gmake && gmake install
3、安裝mysql:
#cd /data/webserver/src/mysql-5.7.11
#cmake . -DCMAKE_INSTALL_PREFIX=/data/webserver/mysql -DMY_DATADD_INSTm/Dmyd =../boost_1_59_0 -DDOWNLOAD_BOOST=1
#make && make install
4、設定mysql
# addadd mysql
# useradd -g mysql -s /sbin/nologgroup mysql
# useradd -g mysql -s /sbin/nologgroup /my-default.cnf /etc/my.cnf #拷貝設定檔(注意:/etc目錄下面預設有一個my.cnf,直接覆寫即可)
#/data/webserver/mysql/bin/mysqld --initialize --user=mysql --datadir=/data/mysqldb --basedir=/data/webserver/mysql/ --socket=/tmp/mysql.sock#初始化mysql伺服器注意會產生mysql密碼一串亂碼如:q> d,拿密碼:A temporary password is generated for root@localhost: q>d,#cp /data/webserver/mysql/support-files/mysql.server /etc/cp /data/webserver/mysql/support-files/mysql.server /etc/ rc.d/init.d/mysqld #把Mysql加入系統啟動
#chmod 755 /etc/init.d/mysqld #增加執行權限
#chkconfig mysqld on #加入開機啟動
#vi /etc/rc.d/ init.d/mysqld #編輯
basedir = /data/webserver/mysql #MySQL程式安裝路徑
datadir = /data/mysqldb #MySQl資料庫存放目錄
#/etc/init.d/myd start #啟動
#/data /webserver/mysql/bin/mysql -uroot -p #登陸mysql
>set password=password('zhulong123'); #修改密碼
#vi /etc/profile #把mysql服務加入系統環境變數:在最後加入系統環境變數:在最後加上下方這一行
export PATH=$PATH:/data/webserver/mysql/bin
下面這兩行把myslq的庫檔案連結到系統預設的位置,這樣你在編譯類似PHP等軟體時可以不用指定mysql的函式庫檔案地址。
#ln -s /data/webserver/mysql/lib/mysql /usr/lib/mysql
#ln -s /data/webserver/mysql/include/mysql /usr/include/mysql三、
三、
三、安裝nginx
1、安裝PCRE
#cd /data/webserver/src/pcre-8.35
#./configure --prefix=/data/webserver/pcre
#make && make install#oservicectlntp. systemctl start ntpd
2 、安裝nginx
#groupadd www
#useradd -g www www -s /bin/false
#cd /data/webserver/src/nginx-1.8.1
#./configure --prefix=/資料/webserver/nginx --without-http_memcached_module --error-log-path=/data/logs/nginx/error.log --http-log-path=/data/logs/nginx/error.log --pid-路徑=/data/日誌/nginx --user=www --group=www --with-http_stub_status_module --with-openssl=/usr/
--with-pcre=/data/webserver/src/pcre-8.35
#make && make install
設定檔:
#vi /data/webserver/nginx/conf/nginx.conf
#修改nginx日誌檔案的目錄
使用者www www;
worker_processes 1;
error_log /data/logs/nginx/error.log;
error_log /data/logs/nginx/error.log /error.log;
error_log /data/logs/nginx/error.log /error
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
3、設定nginx是v.0.0.2 版本。 /var/run/nginx.pid
# 設定: /usr/local/nginx/conf/nginx.conf
nginxd=/data/webserver/nginx/sbin/nginx
nginx_c/webserver/nginx/conf /nginx nginx_pid=/var/run/nginx.pid
RETVAL=0
prog="nginx"
#來源函式庫。 /etc/rc.d/init.d/functions
# 來源網路設定。 /etc/sysconfig/network
#檢查網路是否已啟動。 exit 0
# 啟動 nginx 監控進程功能。 prog: "
daemon $nginxd -c ${nginx_config}
RETVAL=$?
echo
[ $RETVAL = 0 ] && touch /var/lock/subsys/nginx
stop () {
echo -n $"停止$prog: "
Killproc $nginxd
RETVAL -f /var/lock/subsys/nginx /data/ logs /nginx /nginx.pid
}
# 重新載入nginx 服務函數。 HUP
RETVAL= $?
echo
}
# 看看我們是如何被召喚的。
case "$1" in
start)
start) top
;;
重新)
重新裝填
;;
重新啟動)
停止
start
;;
status)
status $VALprog
echo $" 用法:$prog {start|stop|restart|reload|狀態|幫助}"
exit 1
esac
exit $RETVAL
建立服務文件
# vim /lib/systemd/system/nginx.service
[Unit]
Description=c forking
ExecStart=/www/lanmps/init.d/nginx 啟動
ExecReload=/www/lanmps/init.d/nginx 重啟
ExecStop=/www/lanmps/init.d/nginx 停止
]
WantedBy=multi-user.target
chmod 775 /etc/rc.d/init.d/nginx
chkconfig nginx on
/etc/rc.d/init.d/nginx restart
php
1、安裝libmcrypt
#cd /data/webserver/src/libmcrypt-2.5.8
#./configure
#make
#nake install
2、安裝PHP
#cd /data/webserver/src/php- 5.5.33
#./configure --prefix=/data/webserver/php --with-config-file-path=/data/webserver/php/etc --with-mysql=/data/webserver/mysql -- with-mysqli=/data/webserver/mysql/bin/mysql_config --with-mysql-sock=/tmp/mysql.sock --with-gd --with-iconv --with-zlib --enable-xml
--enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curlwrappers --enable-mbregex --enable-fpm --enable-mbstring --enable-ftp --enable -gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip
--enable-soap --with-pear --with-gettext --enable-session --with-mcrypt --with-curl
#make && make install
3、設定php
#cp php.ini-product / data/webserver/php/etc/php.ini # 複製php的設定檔
#rm -rf /etc/php.ini
#ln -s /data/webserver/php/etc/php.ini /etc/php. ini
#cp /data/webserver/php/etc/php-fpm.conf.default /data/webserver/php/etc/php-fpm.conf #複製php-fpm的設定檔
#vi /data/webserver/ php/etc/php-fpm.conf
user = www #設定php-fpm運行帳號為www
group = www #設定php-fpm運行組為www
pid = run/php-fpm.pid #取消前面的分號碼
#cp /data/webserver/src/php-5.5.33/sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm#影印php-fpm到啟動目錄
#chmod +x /etc/rc.d/init.d/php-fpm #新增執行權限
#chkconfig php-fpm on #設定開機啟動
#vi /data/webserver/php/etc/php.ini #編輯設定檔
為:date.timezone = PRC #設定時區
4、設定nginx支援php
#vi /data/webserver/nginx/conf/nginx.conf #編輯設定文件,需要做以下修改
user www www ; #修改首行user去掉註釋,Nginx運行組為www,www;必須與/usr/local/php5/etc/php-fpm.conf中的user,group配置相同,否則php運行出錯
index index.php index .html索引.htm; #新增index.php
#將PHP腳本傳給FastCGI伺服器,監聽127.0.0.1:9000
location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000.1:9000index. php;
fastcgi_param SCRIPT_FILENAME $ document_root$fastcgi_script_name;
包含fastcgi_params;
}
#取消FastCGI伺服器部分位置的註釋,並要注意init.d/nginx restart #重啟nginx
五、測試
#cd /data/webserver/nginx/html/ #進入nginx預設網站根目錄
#rm -rf /data/webserver/nginx/html/* #刪除預設測試頁
#vi index.php #編輯
php phpinfo(); ?>
chown www.www /data/webserver/nginx/html/ -R #設定目錄擁有者
chmod 700 /data/webserver/nginx /html/ -R #設定目錄權限
shutdown -r now #重啟系統
以上就介紹了CentOS7下nginx-181+mysql-5711+php-5533環境的LNMP安裝源碼,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。