脚本宝典收集整理的这篇文章主要介绍了LNMP平台搭建,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
(1) 解压MysqL包,并创建MysqL用户与创建MysqL数据目录
cd /usr/local/src tar zxvf @L_126_5@.43-linux-glibc2.12-x86_64.tar.gz mv mysql-5.6.43-linux-glibc2.12-x86_64 /usr/local/MysqL useradd -s /sbin/nologin MysqL mkdir -p /data/MysqL |
cd /usr/local/MysqL yum -y install autoconf ./scripts/MysqL_install_db --user=MysqL --datadir=/data/MysqL cp support-files/MysqL.server /etc/inIT.d/MysqLd cp support-files/my-default.cnf /etc/my.cnf (提示是否覆盖,填写y)cp: overwrite ‘/etc/my.cnf’? y
chmod 755 /etc/init.d/MysqLd |
vi /etc/init.d/MysqLd |
修改参数为:
basedir=/usr/local/MysqL datadir=/data/MysqL |
(4) 启动MysqL
/etc/init.d/MysqLd start |
执行效果,如图1所示
说明MysqL主启动完成
2. 搭建PHP
cd /usr/local/src tar zxvf PHP-5.6.30.tar.gz useradd -s /sbin/noLOGin PHP-FPM cd PHP-5.6.30 yum install -y gcc ### 此为注释: 下面配置文件运行可能会出现问题,出现问题时请参考下面红色标识的地方来具体安装需要的依赖包。 ./configure --PRefix=/usr/local/PHP-fpm --with-config-file-path=/usr/local/PHP-fpm/etc --enable-fpm --with-fpm-user=PHP-fpm --with-fpm-group=PHP-fpm --with-MysqL=/usr/local/MysqL --with-MysqLi=/usr/local/MysqL/bin/MysqL_config --with-pdo-MysqL=/usr/local/MysqL --with-MysqL-sock=/tmp/MysqL.sock --with-libXMl-dir --with-gd --with-jPEg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-mcrypt --enable-SOAp --enable-gd-native-ttf --enable-ftp --enable-mbstring --enable-exif --with-pear --with-curl --with-openssl ####配置成功之后,使用下面命令: make && make install ###这边需要很长时间,请等待。 cp PHP.ini-production /usr/local/PHP-fpm/etc/PHP.ini vi /usr/local/PHP-fpm/etc/PHP-fpm.conf pid = /usr/local/PHP-fpm/VAR/run/PHP-fpm.pid error_log = /usr/local/PHP-fpm/var/log/PHP-fpm.log [www] listen.mode = 666 user = PHP-fpm group = PHP-fpm pm = dynamic pm.max_children = 50 pm.start_servers = 20 pm.min_spare_servers = 5 pm.max_spare_servers = 35 pm.max_requests = 500 rlimit_files = 1024 #####保存退出. cp sapi/fpm/init.d.PHP-fpm /etc/init.d/PHP-fpm chmod 755 /etc/init.d/PHP-fpm service PHP-fpm start ps aux |grep PHP-fpm |
配置过程中,一般情况下都会报错,譬如下面的错误信息,应该安装对应的依赖包。执行效果如下。
(1) configure: error: xML2-config not found. Please check your libxml2 installation. 解决办法:yum install -y libxml2 libxml2-devel (2) configure: error: Cannot find OpenSSL‘s <evp.h> 解决办法 yum install openssl openssl-devel (3)configure: error: Please reinstall the libcurl distribution - easy.h should be in <curl-dir>/include/curl/ 解决办法 yum -y install curl-devel (4)configure: error: jpeglib.h not found. 解决办法: yum install libjpeg libpng freetype libjpeg-devel libpng-devel freetype-devel -y (5) configure: error: mcrypt.h not found. Please reinstall libmcrypt. 解决办法: yum install -y EPEL-release libmcrypt-devel
每次解决问题后跑一次下面指令: ./configure --prefix=/usr/local/PHP-fpm --with-config-file-path=/usr/local/PHP-fpm/etc --enable-fpm --with-fpm-user=PHP-fpm --with-fpm-group=PHP-fpm --with-MysqL=/usr/local/MysqL --with-MysqLi=/usr/local/MysqL/bin/MysqL_config --with-pdo-MysqL=/usr/local/MysqL --with-MysqL-sock=/tmp/MysqL.sock --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-ftp --enable-mbstring --enable-exif --with-pear --with-curl --with-openssl |
3. 搭建Nginx
cd /usr/local/src tar zxvf Nginx-1.12.1.tar.gz cd Nginx-1.12.1 ./configure --prefix=/usr/local/Nginx vi /etc/init.d/Nginx #!/bin/bash # chkconfig: - 30 21 # description: http service. # Source Function Library . /etc/init.d/functions # Nginx Settings
Nginx_SBIN="/usr/local/Nginx/sbin/Nginx" Nginx_CONF="/usr/local/Nginx/conf/Nginx.conf" Nginx_PID="/usr/local/Nginx/logs/Nginx.pid" RETVAL=0 prog="Nginx"
start() { echo -n $"Starting $prog: " mkdir -p /dev/shm/Nginx_temp daemon $Nginx_SBIN -c $Nginx_CONF RETVAL=$? echo return $RETVAL }
stop() { echo -n $"Stopping $prog: " killproc -p $Nginx_PID $Nginx_SBIN -TERM rm -rf /dev/shm/Nginx_temp RETVAL=$? echo return $RETVAL }
reload() { echo -n $"Reloading $prog: " killproc -p $Nginx_PID $Nginx_SBIN -HUP RETVAL=$? echo return $RETVAL }
restart() { stop start }
{ return 0 }
case "$1" in start) start ;; stop) stop ;; reload) reload ;; restart) restart ;; configtest ;; *) echo $"usage: $0 {start|stop|reload|restart|configtest}" RETVAL=1 esac
exit $RETVAL ####保存退出
chmod 755 /etc/init.d/Nginx cd /usr/local/Nginx/conf/; mv Nginx.conf Nginx.conf.bak vi Nginx.conf user nobody nobody; worker_processes 2; error_log /usr/local/Nginx/logs/Nginx_error.log crit; pid /usr/local/Nginx/logs/Nginx.pid; worker_rlimit_nofile 51200;
events { use epoll; worker_connections 6000; }
http { include mime.types; default_type application/octet-stream; server_names_hash_bucket_size 3526; server_names_hash_max_size 4096; log_format combined_realip ‘$remote_addr $http_x_forwarded_for [$time_local]‘ ‘ $host "$REQUEST_URI" $status‘ ‘ "$http_referer" "$http_user_agent"‘; sendfile on; tcp_nopush on; keepalive_timeout 30; client_header_timeout 3m; client_body_timeout 3m; send_timeout 3m; connection_pool_size 256; client_header_buffer_size 1k; large_client_header_buffers 8 4k; request_pool_size 4k; output_buffers 4 32k; postpone_output 1460; client_max_body_size 10m; client_body_buffer_size 256k; client_body_temp_path /usr/local/Nginx/client_body_temp; Proxy_temp_path /usr/local/Nginx/proxy_temp; fastcgi_temp_path /usr/local/Nginx/fastcgi_temp; fastcgi_intercept_errors on; tcp_nodelay on; gzip on; gzip_min_length 1k; gzip_buffers 4 8k; gzip_comp_level 5; gzip_http_version 1.1; gzip_types text/plain application/x-javascript text/css text/htm application/xml;
server { listen 80; server_name localhost; index index.html index.htm index.PHP; root /usr/local/Nginx/html;
location ~ \.PHP$ { include fastcgi_params; fastcgi_pass unix:/tmp/PHP-fcgi.sock; fastcgi_index index.PHP; fastcgi_param SCRIPT_FILENAME /usr/local/Nginx/html$fastcgi_SCRIPT_NAME; } } } ###保存退出命令为 :wq
/usr/local/Nginx/sbin/Nginx -t
systemctl daemon-reload
###检测LNMP平台搭建是成功 curl localhost:80 |
以上是脚本宝典为你收集整理的LNMP平台搭建全部内容,希望文章能够帮你解决LNMP平台搭建所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。