linux搭建lnmp環境


參考:https://www.cnblogs.com/phpshangxiaobai/p/10864525.html

(php7.3.5 + nginx1.16 + mysql8)

1、准備

#新建目錄,/lnmp/php7、/lnmp/nginx
mkdir -p /lnmp/php7
mkdir /lnmp/nginx


#安裝依賴
yum install gcc gcc-c++ automake pcre pcre-devel zlip zlib-devel openssl openssl-devel libxml2-devel libpng-devel curl-devel numactl

2、安裝nginx

cd /lnmp
yum -y install wget		#安裝wget

wget http://nginx.org/download/nginx-1.16.0.tar.gz		#下載nginx
tar xvf nginx-1.16.0.tar.gz		#解壓
cd nginx-1.16.0

./configure --prefix=/lnmp/nginx --with-http_ssl_module		#安裝到/lnmp/nginx
make && make install		#編譯&安裝

cp /lnmp/nginx/sbin/nginx /usr/bin/

nginx 	#開啟
nginx -s stop	#關閉
nginx -s reload		#平滑重啟

安裝后可能會遇到的問題

#nginx配置位置:/lnmp/nginx/conf/nginx.conf
#站點目錄位置:/lnmp/nginx/html

#搭好后,本地無法訪問
#關閉防火牆
sudo systemctl stop firewalld
#允許訪問80端口
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT

#此時就可以訪問了

4、安裝php

cd /lnmp

wget https://www.php.net/distributions/php-7.3.5.tar.gz
tar xvf php-7.3.5.tar.gz
cd php-7.3.5

./configure --prefix=/lnmp/php7 --enable-fpm --with-mysqli --with-curl --with-pdo_mysql --with-pdo_sqlite --enable-mysqlnd --enable-mbstring --with-gd

make && make install

cp php.ini-development /lnmp/php7/lib/php.ini

cd /lnmp/php7/etc/
#重命名
mv php-fpm.conf.default php-fpm.conf
mv php-fpm.d/www.conf.default php-fpm.d/www.conf

cp /lnmp/php7/sbin/php-fpm /usr/bin/

#修改配置文件php.ini,(/lnmp/php7/lib/php.ini)
cgi.fix_pathinfo=0

php-fpm		#開啟
killall php-fpm		#關閉

安裝后可能會遇到的問題

#訪問php文件,變成下載
vi /lnmp/nginx/conf/nginx.conf

#找到下面這段,將注釋去掉
###
location ~ \.php$ {
    root           html;
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    #fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include        fastcgi_params;
}
###

#訪問php文件,出現No input file specified
將上面的location ~ \.php$ {...}
	fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
替換為
	fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

#保存重啟nginx
nginx -s reload

5、安裝mysql

cd /lnmp

#下載
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.18-linux-glibc2.12-x86_64.tar.xz

#解壓
tar -Jxf mysql-8.0.18-linux-glibc2.12-x86_64.tar.xz

#移到lnmp目錄,重命名mysql
mv mysql-8.0.18-linux-glibc2.12-x86_64 /lnmp/mysql

cd /lnmp/mysql
mkdir data  #用於存放數據

#創建mysql用戶組和mysql用戶
groupadd mysql    
useradd -g mysql mysql

#修改mysql目錄權限
chown -R mysql.mysql /lnmp/mysql/

#初始化
bin/mysqld --initialize --user=mysql --basedir=/lnmp/mysql --datadir=/lnmp/mysql/data
#初始化后,出現一大串,最后面的為臨時密碼
xxx xxx xxx A temporary password is generated for root@localhost: mhr#qEJO+7?h


#修改配置文件
vim  /etc/my.cnf

###
[mysqld]
basedir = /lnmp/mysql
datadir = /lnmp/mysql/data
socket = /tmp/mysql/mysql.sock
character-set-server=utf8
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[client]
socket = /tmp/mysql/mysql.sock
default-character-set=utf8
###


#新建&修改目錄權限
mkdir -p /tmp/mysql/
chmod -R 777 /tmp/mysql
chown -R mysql:mysql /tmp/mysql/

#配置mysql服務
cp -a ./support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/rc.d/init.d/mysqld
chkconfig --add mysqld

#配置全局環境變量
vim /etc/profile

#profile文件中添加
###
export PATH=$PATH:/lnmp/mysql/bin:/lnmp/mysql/lib
export PATH
###

#讓環境變量設置立即生效
source /etc/profile

#啟動mysql
service mysqld start

#登錄mysql
mysql -uroot -pmhr#qEJO+7?h

#修改密碼
alter user 'root'@'localhost' identified by 'root';


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM