lnmp 環境をインストールします:
環境は CentOS7 の最小インストールです。インストール中に、開発ツールなどのいくつかの開発ツールが選択されました (詳細は覚えていません)
nginx-1.8.1 mysql-5.7.11 php-5.5.33
要件:
MYSQL と NGINX のデータ ファイルとログ ファイルは /data に配置されます
インストール ディレクトリも /data/webserver に変更する必要があります
1. インストール パッケージをダウンロードし、インストール依存関係の環境を設定します
ファイアウォールのオープン ポートを設定します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
# このファイルはシステム上の SELinux の状態を制御します。
# SELINUX= は次の 3 つの値のいずれかをとります:
# enforcing - SELinux セキュリティ ポリシーが強制されます。
# permissive - SELinux は、強制する代わりに警告を出力します。
# disabled - SELinux ポリシーはロードされません。
SELINUX=disabled
# SELINUXTYPE= は、次の 2 つの値のうちの 1 つを取ることができます。
# target - 対象のプロセスは保護されます。
# minimum - の変更対象のポリシー。選択されたプロセスのみが保護されます。
# mls - マルチレベル セキュリティ保護。
#SELINUXTYPE=targeted
インストール ディレクトリを作成します。
#mkdir -p /data/webserver/nginx
#mkdir /data/ webserver/mysql
#mkdir /data/webserver/ php
#mkdir /data/webserver/src (ソフトウェアダウンロードディレクトリ)
#mkdir /data/mysqldb (mysqlデータ格納ディレクトリ)
mysqlをダウンロード
#wget http://dev .mysql.com/get/Downloads/MySQL- 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 (PHPlibmcrypt モジュール)
#wget http:// nchc.dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz
ブーストのダウンロード (MySQL 以降ではブースト ライブラリが必要です) 5.7.5)
#wget http:// downloads.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
#yum -y install make apr* autoconf automakecurl-devel gcc gcc-c++ zlib-devel openssl openssl-devel pcre-devel gd カーネル 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
2. mysqlをインストールします
1. インストールパッケージを解凍します。 :
#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 -DMYSQL_DATADIR=/data/mysqldb -DSYSC - DWITH_BOOST =../boost_1_59_0 -DDOWNLOAD_BOOST=1
#make && make install
4. mysql を設定します
# groupadd mysql
# useradd -g mysql -s /sbin/nologin mysql
#cp /data/webserver/mysql/support- files /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,<(Uj9*9j
パスワードを取得: root@localhost に対して一時パスワードが生成されます: q>d,<(Uj9*9j
#cp /data/ webserver/mysql/support-files/mysql.server / etc/rc.d/init.d/mysqld #システム起動に Mysql を追加
#chmod 755 /etc/init.d/mysqld #実行権限を追加
#chkconfig mysqld on #bootに追加
#vi /etc/rc.d/init.d/mysqld #Edit
basedir = /data/webserver/mysql #MySQLプログラムのインストールパス
datadir = /data/mysqldb #MySQlデータベース格納ディレクトリ
#/ etc/init.d/mysqld start #Start
# /data/webserver/mysql/bin/mysql -uroot -p #mysql にログイン
>set password=password('zhulong123'); #パスワードを変更
#vi /etc/profile #mysql サービスをシステム環境変数に追加します: in 最後に次の行を追加します
export PATH=$PATH:/data/webserver/mysql/bin
次の 2 行は、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
#systemctl Enable ntpd.service
#systemctl start ntpd
2 、nginx
のインストール#groupadd www
#useradd -g www www -s /bin/false
#cd /data/webserver/src/nginx-1.8.1
#./configure --prefix=/data/webserver/nginx --without-http_memcached_module --error-log-path=/data/logs/nginx/error.log --http-log-path=/data/logs/nginx/error.log --pid-path=/data/ logs/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 notice;
error_log /data/logs/nginx/error.log info;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
3、nginx自启動を設置、以下のスクリプトを追加
#!/bin/bash
# nginx Nginx HTTP サーバーの起動スクリプト
#これは v.0.0.2 バージョンです。
# chkconfig: - 85 15
# description: Nginx は、高性能 Web およびプロキシ サーバーです。
# 多くの機能がありますが、すべての人に適しているわけではありません。
# processname: nginx
# pidfile: /var/run/nginx.pid
# config: /usr/local/nginx/conf/nginx.conf
nginxd=/data/webserver/nginx/sbin/nginx
nginx_c/webserver/nginx/conf /nginx.conf
nginx_pid=/var/run/nginx.pid
RETVAL=0
prog="nginx"
# ソース関数ライブラリ
。 /etc/rc.d/init.d/functions
# ソースネットワーク構成
。 /etc/sysconfig/network
# ネットワークが稼働していることを確認します。
[ ${NETWORKING} = "no" ] && exit 0
[ -x $nginxd ] || exit 0
# nginx デーモン関数を開始します。
start() {
if [ -e $nginx_pid ];then
echo "nginx はすでに実行されています..."
exit 1
fi
echo -n $"$prog の開始: "
daemon $nginxd -c ${nginx_config}
RETVAL=$?
echo
[ $RETVAL = 0 ] && touch /var/lock/subsys/nginx
return $RETVAL
}
# nginx デーモンの機能を停止します。
stop () {
echo -n $"$prog の停止: "
killproc $nginxd
RETVAL=$?
echo
[ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx /data/logs/nginx /nginx.pid
}
# nginx サービス関数をリロードします。
reload() {
echo -n $"$prog を再読み込み中: "
#kill -HUP `cat ${nginx_pid}`
killproc $nginxd -HUP
RETVAL= $?
echo
}
# 私たちがどのように呼ばれたかをご覧ください。
case "$1" in
start)
start
;;
stop)
stop
;;
reload)
reload
;;
再起動)
停止
start
;;
status)
status $prog
RETVAL=$?
;;
*)
echo $"使用法: $prog {start|stop|restart|reload|status|help}"
exit 1
esac
exit $RETVAL
建立服务文件
# vim /lib/systemd/system/nginx.service
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/www/lanmps/init.d/nginx start
ExecReload=/www/lanmps/init.d/nginx restart
ExecStop=/www/lanmps/init.d/nginx stop
PrivateTmp=true
[インストール]
WantedBy=multi-user.target
chmod 775 /etc/rc.d/init.d/nginx
chkconfig nginx on
/etc/rc.d/init.d/nginx restart
service 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-production / 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 ; #首行ユーザー去掉注释、修正Nginx実行組織はwww,www; 必須/usr/local/php5/etc/php-fpm.conf内のユーザー、グループ構成が同じ、否かphp运行出错
indexindex.phpindex .htmlインデックス.htm; #追加index.php
# 127.0.0.1:9000でリッスンするFastCGIサーバーにPHPスクリプトを渡します
location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_indexindex.php;
fastcgi_param SCRIPT_FILENAME $ document_root$fastcgi_script_name;
fastcgi_params を含める;
}
#取消FastCGIサーバー部分の場所の注釈、要注意fastcgi_param行のパラメータ、変更
$document_root$fastcgi_script_name、または使用绝对路径
/etc/init.d/nginx restart #重启nginx
五、测试
#cd /data/webserver/nginx/html/ #进入nginx默认网站根目录
#rm -rf /data/webserver/nginx/html/* #删除默认测试页
#viindex.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 教則に関心のある友人の助けになることを望みます。