lnmp版本資訊:
centos 6.5 + nginx 1.10.2 + mysql 5.7.17 + php 5.6.29
一、安裝linux
1.安裝虛擬機器vmware
2.安裝centos6.5
二、安裝nginx伺服器
2.進入目錄/usr/local/src/下
#wget
3.解壓
#tar zxvf nginx-1.10.2.tar.gz
4.進入解壓縮後的目錄 nginx-1.10.2/
配置:#./configure --prefix=/usr/local/nginx
安裝:#make && make install
5.安裝完成後,配置nginx
#vim /usr/local/nginx/conf/nginx.conf
新增虛擬主機
server
#為了php能夠解析.php檔案所做的配置
location ~ \.php$ }
關於nginx的其他配置,請自行搜尋。
三、安裝mysql資料庫
1、刪除系統自帶的mysql
#rpm -qa|grep mysql
#yum remove mysql-libs
2、安裝mysql yum源
#wget
#rpm -ivh mysql-community-release-el6-5.noarch.rpm
3、安裝mysql
#yum install mysql-server mysql-devel
4、首次登陸mysql
#service mysqld stop
#mysqld_safe --skip-grant-tables &
#mysql -u root -p
//回車直接進去,或者隨便輸入乙個密碼
5.禁止其他使用者登陸mysql
(1)選擇資料庫mysql
->use mysql;
(2)查詢mysql中user表host、user、password資訊
->select host,user,password from user;
(3)欄位host為localhost的記錄保留,其他的host全部刪除
->delete from user where host<>localhost;
6.為使用者root設定新的登陸密碼
->update user set password=password("newpass") where user="root";
->flush privileges;
->quit;
7.如果想讓mysql伺服器在每次計算機重啟時啟動,鍵入如下命令(root使用者身份):
#chkconfig mysqld on
四、安裝php
2.進入目錄/usr/local/src/下
#wget
3.解壓
#tar zxvf php-5.6.29.tar.gz
4.進入解壓縮後的目錄 php-5.6.29/
(1)配置:
#./configure--prefix=/usr/local/php --enable-fpm --with-mcrypt \
--enable-mbstring--disable-pdo --with-curl --disable-debug --disable-rpath \
--enable-inline-optimization--with-bz2 --with-zlib --enable-sockets \
--enable-sysvsem--enable-sysvshm --enable-pcntl --enable-mbregex \
--with-mhash --enable-zip--with-pcre-regex --with-mysql --with-mysqli \
--with-gd --with-jpeg-dir
(2)安裝:
#make && make install
5.安裝完成後,拷貝配置檔案
#cp /usr/local/src/php-5.6.29/php.ini-development /usr/local/php/lib/php.ini
6.php連線mysql時出錯:warning: mysqli::mysqli(): (hy000/2002): no such file or directory
<?php
$conn = new mysqli('localhost', 'root', 'yourpwd', 'yourdatabase');
(1)原因:當主機填寫為localhost時mysql會採用 unix domain socket連線,當主機填寫為127.0.0.1時mysql會採用tcp/ip的方式連線。使用unix socket的連線比tcp/ip的連線更加快速與安全。
(2)方法一:使用tcp/ip代替unix socket,即在連線的時候將localhost換成127.0.0.1。
(3)方法二:配置php,修改php.ini檔案
#vim /usr/local/php/lib/php.ini
搜尋關鍵字mysql.default_socket =
新增mysql.sock
即,mysql.default_socket =/var/lib/mysql/mysql.sock
7.關於mysql.sock
mysql.sock是建立與mysqld伺服器相關的mysql通訊端點所使用的套接字,而php標準配置正是通過mysql.sock來連線資料庫,可能是一些mysql的安裝方法將mysql.sock放到了別的地方,可以通過檢視/etc/mysql/my.cnf檔案(或/etc/my.conf檔案,和mysql安裝的方法有關,該配置檔案的路徑可能會有所不同),開啟檔案可以看到如下的語句:
[mysqld]
socket = /var/lib/mysql/mysql.sock
*如果還是不能啟動的話,可能是由於mysql伺服器沒有開啟,如果mysql伺服器沒有開啟的話,在/var/lib/mysql/目錄下就不會有mysql.sock這個檔案,所以即使新增了mysql.sock配置也沒有用,因為它根本找不到/var/lib/mysql/mysql.sock檔案。所以使用下面的命令開啟mysql伺服器:
#service mysqld start
LNMP完整安裝教程
本環境與外網生產環境一致 mysql 5.6 php 7.1 centos nginx 1.12 上圖紅色箭頭的兩個地方,對應的詳細配置,請參考以下兩張圖 開啟終端,輸入 init 3 切換到命令列模式 取消系統的休眠模式 執行命令 vi etc x11 xorg.conf 新增以下內容 secti...
MiniGUI 自定義控制項教程1
minigui 採用的機制是與win32十分類似的訊息機制,基本上與win32的sdk一致。win32上經典的framework mfc 採用的是c 物件導向的方法,自定控制項可以直接使用繼承的方式,十分方便。minigui 使用的是c語音,重所周知這是乙個面向過程的語言。但是其實它也可以使用類似c...
Android 自定義View教程(2)
上節課我們學習如何畫乙個圓,今天我們來繼續自定義view之路。今天講的列子是我今天給朋友講的乙個自定義view的列子,這節課我們將實現自適應的寬高。首先來自定義我們的屬性 下面來看我們的布局 linearlayout xmlns android android layout width match ...