CentOS6 搭建LNMP環境
阿新 • • 發佈:2020-08-19
一、安裝前的準備
1.環境準備
CentOS 6.x 64位
關閉SELinux和iptables
保證能正常連線網際網路
2.配置網路yum源
(1)先將系統的yum配置檔案備份拷貝到其他目錄
cp /etc/yum.repo.d/* ~/bak
(2)下載阿里雲的yum源
#base源: wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo #epel源: wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/epel-6.repo #下載完成後的操作: yum clean all #清除原有的快取 yum makecache #建立新的快取列表 yum update #將所有能更新的軟體更新(非必選)
(3)安裝編譯軟體和依賴
yum install -y gcc* pcre-devel opensll openssl-devel zlib-devel ncurses-devel cmake bison libxml2-devel libpng-devel
(4)nginx、mysql、php原始碼包下載地址:
Nginx:http://nginx.org/en/download.html
MySQL:https://dev.mysql.com/downloads/mysql/
PHP:http://www.php.net/
#版本選用: #Nginx: 1.12.* #選用軟體的穩定版即可 #Mysql: 5.5.* #5.5 以上版本需要 1G 以上的記憶體,否則無法安裝 #PHP: 5.6*
二、原始碼軟體安裝
1.nginx
#建立存放原始碼包的目錄
mkdir /lnmp
(1)下載nginx原始碼包
wget http://nginx.org/download/nginx-1.12.2.tar.gz
(2)建立用於執行nginx的使用者
useradd -r -s /sbin/nologin nginx
(3)解壓nginx並安裝
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module --with-http_ssl_module make && make install
2.mysql
(1)下載:
wget https://cdn.mysql.com//Downloads/MySQL-5.5/mysql-5.5.62.tar.gz
(2)建立用於執行mysql的使用者
useradd -r -s /sbin/nologin mysql
(3)解壓縮並安裝
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306
make && make install
#建立軟連線
ln -s /usr/local/mysql/bin/* /usr/local/bin/
(4)修改目錄許可權
#cd /usr/local/mysql/
chown -R root .
chown -R mysql data/
(5)生成mysql配置檔案
cp -a /lnmp/mysql-5.5.62/support-files/my-medium.cnf /etc/my.cnf
(6)初始化,生成授權表
cd /usr/local/mysql
./scripts/mysql_install_db --user=mysql
#初始化成功的標準:兩個ok
(7)生成mysql的啟動和自啟動管理指令碼
cd /lnmp/mysql-5.5.62/support-files/
cp -a mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
service mysqld start
#設定密碼
mysqladmin -uroot password 123456
3.PHP
(1)下載:
wget http://tw2.php.net/distributions/php-5.6.38.tar.gz
(2)解壓縮並安裝
./configure --prefix=/usr/local/php/ --with-config-file-path=/usr/local/php/etc/ --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-soap --enable-mbstring=all --enable-sockets --with-pdo-mysql=/usr/local/mysql --with-gd --without-pear --enable-fpm
make && make install
(3)生成php配置檔案
cp -a /lnmp/php-5.6.38/php.ini-production /usr/local/php/etc/php.ini
(4)建立軟連線
ln -s /usr/local/php/bin/* /usr/local/bin/
ln -s /usr/local/php/sbin/* /usr/local/sbin/
4.配置nginx連線php
cd /usr/local/php/etc/
(1)生成php-fpm的配置檔案,並修改引數
cp -a php-fpm.conf.default php-fpm.conf
#vim php-fpm.conf
pid = run/php-fpm.pid
#取消註釋
user = nginx
group = nginx
pm.start_servers = 2
#啟動時開啟的程序數(預設值)
pm.min_spare_servers = 1
#最少空閒程序數(預設值)
pm.max_spare_servers = 3
#最多空閒程序數(預設值)
(2)修改nginx的配置檔案,使其識別.php字尾的
#vim /usr/local/nginx/conf/nginx.conf
#取消以下幾行的註釋,並修改include選項的字尾位fastcgi.conf
#65行-71行
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi.conf;
}
(3)測試:重啟nginx,建立php測試檔案
location / {
root html;
index index.html test.php index.htm;
}
nginx啟動指令碼下載:
https://yz231.lanzous.com/iwlvFfrrh6h