版本說明
PHP:5.5.38
NGINX:1.10.3
MYSQL:5.6
OS:CentOS 6.8
安裝步驟
環境準備
lnmp整體環境安裝至/usr/local/lnmp目錄下
# 創建目錄mkdir-p /usr/local/lnmp
php安裝
# 下載php源碼wget -P/usr/local/lnmp/src http://php.net/get/php-5.5.38.tar.gz/from/this/mirror# 解壓tar xzf/usr/local/lnmp/src/php-5.5.38-C/usr/local/lnmp/src# 配置編譯選項(這里默認編譯pdo,fpm,mysql模塊,更多編譯選項可以通過configure --help 查看)cd/usr/local/lnmp/src/php-5.5.38&& ./configure --prefix=/usr/local/lnmp/php5.5.38--enable-fpm --enable-mysqlnd --with-mysql --with-mysqli --with-pdo-mysql# 編譯 && 安裝make && make install# 添加mysql用戶# 初始化db/usr/local/lnmp/mysql5.6/scripts/mysql_install_db --user=mysql --datadir=/usr/local/lnmp/mysql5.6/data/mysql
nginx安裝
# 下載nginx源碼wget -P/usr/local/lnmp/src http://nginx.org/download/nginx-1.10.3.tar.gz# 解壓tar -xzf/usr/local/lnmp/src/nginx-1.10.3.tar.gz -C/usr/local/lnmp/src# 配置編譯選項cd/usr/local/lnmp/src/nginx-1.10.3&& ./configure --prefix=/usr/local/lnmp/nginx1.10.3# 編譯 && 安裝make && make install
mysql安裝
# 下載源碼wget -P/usr/local/lnmp/src https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.36.tar.gz# 解壓tar xzf/usr/local/lnmp/src/mysql-5.6.36.tar.gz -C/usr/local/lnmp/src# 配置編譯選項(mysql從5.5起,源碼安裝使用cmake了cmake . \-DCMAKE_INSTALL_PREFIX=/usr/local/lnmp/mysql5.6\-DMYSQL_DATADIR=/usr/local/lnmp/data/mysql \-DDEFAULT_CHARSET=utf8 \-DDEFAULT_COLLATION=utf8_general_ci \-DEXTRA_CHARSETS=all \-DENABLED_LOCAL_INFILE=1)# 編譯 && 安裝make && make install# 添加mysql賬戶useradd mysql# 修改mysql文件夾屬主chown -R mysql:mysql/usr/local/lnmp/mysql5.6# 初始化db/usr/local/lnmp/mysql5.6/scripts/mysql_install_db --user=mysql --datadir=/usr/local/lnmp/mysql5.6/data/mysql# 修改配置文件,指定data_dir參數為編譯時的參數datadir=/usr/local/lnmp/mysql5.6/data/mysql# 啟動mysql/usr/local/lnmp/mysql5.6/bin/mysqld_safe --defaults-file=/usr/local/lnmp/mysql5.6/etc/my.cnf &
配置lnmp && 測試
配置fpm
# 拷貝一份默認的配置文件cp/usr/local/lnmp/php5.5.38/etc/php-fpm.conf.default/usr/local/lnmp/php5.5.38/etc/php-fpm.conf# 修改配置文件(直接修改全區段,配置監聽端口為9999)listen =127.0.0.1:9999# 啟動fpm/usr/local/lnmp/php5.5.38/sbin/php-fpm -c ../etc/php.ini
配置nginx
修改nginx.conf配置文件中server段配置如下
server{listen8999;server_namelnmp.com;#charset koi8-r;#access_log? logs/host.access.log? main;location/ {roothtml;indexindex.php index.html index.htm;? ? ? }#error_page? 404? ? ? ? ? ? ? /404.html;# redirect server error pages to the static page /50x.html#error_page500502503504/50x.html;location= /50x.html {roothtml;? ? ? }# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000#location~ \.php${roothtml;fastcgi_pass127.0.0.1:9999;fastcgi_indexindex.php;fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;includefastcgi_params;? ? ? }# deny access to .htaccess files, if Apache's document root# concurs with nginx's one##location ~ /\.ht {#? ? deny? all;#}}
在指定的root目錄下創建index.php文件(這里使用默認的html目錄)
echo"/usr/local/lnmp/nginx1.10.3/html/index.php
重啟nginx
/usr/local/lnmp/nginx1.10.3/sbin/nginx -s reload
訪問
本地綁定host
訪問lnmp.com:8999
常用操作
nginx基本操作
啟動:nginx -c nginx配置文件路徑
重啟:nginx -s reload
關閉:kill -QUIT
fpm基本操作
啟動:php-fpm -c php.ini文件路徑 -y php-fpm.conf文件路徑
重啟:kill -USR2
關閉:kill -INT
mysql基本操作
啟動:/usr/local/lnmp/mysql5.6/bin/mysqld_safe --defaults-file=/usr/local/lnmp/mysql5.6/etc/my.cnf
停止:/usr/local/lnmp/mysql5.6/bin/mysqladmin -h 127.0.0.1 -P 6000 shutdown
安裝過程中可能遇到的問題
缺少依賴庫
這種問題直接使用yum安裝缺少的依賴庫即可,只不過注意安裝的包應該是開發包(*-devel)
mysql5.5起開始使用cmake
mysql cmake 配置:http://laowafang.blog.51cto.com/251518/1294964/
注意,如果重新運行cmake,需要清除CMakeCache.txt文件
編譯安裝php后默認沒有php.ini配置文件,需要手動創建
確認當前配置文件應該在的位置,在指定的安裝位置找到php,執行./php -r 'phpinfo();' | grep "php.ini"
在源碼包中找到默認的配置文件,應該就在解壓的目錄下,有兩個php.ini-development和php.ini-production
復制默認的配置文件到指定的路徑即可,注意修改名字為php.ini
無法啟動nginx
這個原因是已經有一個nginx實例在監聽指定端口,只需要把配置文件中的端口換一個就可以了
作者:wangtingkui
鏈接:http://www.lxweimin.com/p/cb415eed9c10
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。