linux下搭建系統(tǒng)
我很早之前裝了一個(gè)虛擬機(jī)符欠,里面安裝了ubuntu18.04系統(tǒng)嫡霞,這部分內(nèi)容不說了,直接借鑒安裝ubuntu系統(tǒng)經(jīng)驗(yàn)即可希柿,裝到VMware里就行了
安裝必備組件
配置環(huán)境主要需要LNMP組件诊沪,即linux下安裝nginx,mysql曾撤,PHP解釋器端姚,外加最后wordpress的安裝包。數(shù)據(jù)庫也有用mariaDB的挤悉,沒用過渐裸,不試了。
安裝mysql
sudo apt-get install mysql-server
安裝完成后執(zhí)行
sudo mysql_secure_installation
按提示操作即可
完成之后可以看下版本
mysql -V
我這里顯示版本是5.7.25
mysql Ver 14.14 Distrib 5.7.25, for Linux (x86_64) using EditLine wrapper
話說我windows半年前就用了8.0了……
安裝nginx
nginx是一個(gè)高性能的HTTP和反向代理服務(wù)器,傳說中的負(fù)載均衡就是用它實(shí)現(xiàn)的
sudo apt-get install nginx
安裝php
sudo apt-get install php
現(xiàn)在的php版本是7橄仆,正常來說以上語句就可以了剩膘,如果沒有
/var/run/php/php7.2-fpm.sock
執(zhí)行下面語句再安裝下
sudo apt-get install php-fpm php-mysql
啟動(dòng)nginx
sudo service nginx start
這一步若提示[emerg] bind() to 0.0.0.0:80 failed (98:address already in use ),一般是80端口被apache占用所致,殺死所有apache進(jìn)程:
sudo killall apache2
關(guān)閉apache的開機(jī)啟動(dòng):
sudo update-rc.d -f apache2 remove
在瀏覽器里訪問你的IP(本地虛擬機(jī)中則是127.0.0.1),出現(xiàn)Welcome to Nginx盆顾,則說明nginx啟動(dòng)成功怠褐。
nginx配置
nginx的配置文件位于
/etc/nginx/conf.d/
nginx下的一個(gè)虛擬主機(jī)就相當(dāng)于一個(gè)網(wǎng)站,每個(gè)虛擬主機(jī)的配置文件保存在上面兩條路徑您宪。為了便于管理奈懒,我都是在/etc/nginx/conf.d/下新建conf配置文件。打開nginx的默認(rèn)配置文件宪巨,修改使其支持php:
sudo nano /etc/nginx/sites-enable/default
nano的控制鍵可以簡單記住幾個(gè) ctrl+s保存 ctrl+x退出
nginx的配置文件中間部分修改成這樣
# Default server configuration
#
server {
listen 80 default_server;
listen [::]:80 default_server;
# SSL configuration
#
# listen 443 ssl default_server;
# listen [::]:443 ssl default_server;
#
# Note: You should disable gzip for SSL traffic.
# See: https://bugs.debian.org/773332
#
# Read up on ssl_ciphers to ensure a secure configuration.
# See: https://bugs.debian.org/765782
#
# Self signed certs generated by the ssl-cert package
# Don't use them in a production server!
#
# include snippets/snakeoil.conf;
# root /var/www/html;
root 你的網(wǎng)站根目錄;
# Add index.php to the list if you are using PHP
# index index.html index.htm index.nginx-debian.html;
index index.php index.html index.htm;
# server_name _;
server_name 你的IP或者域名;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
}
# pass PHP scripts to FastCGI server
#
location ~ \.php$ {
include snippets/fastcgi-php.conf;
#
# # With php-fpm (or other unix sockets):
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
# # With php-cgi (or other tcp sockets):
# fastcgi_pass 127.0.0.1:9000;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
保存修改退出磷杏,并重啟nginx:
sudo service nginx restart
新建一個(gè)phpinfo.php:
sudo nano /你的根目錄/phpinfo.php
輸入
<?php
phpinfo();
保存退出,瀏覽器訪問
你的IP或者域名/phpinfo.php
能正常顯示php7.2-fpm的配置信息說明lnmp環(huán)境就搭好了捏卓。
安裝phpmyadmin并管理mysql
phpmyadmin是數(shù)據(jù)庫管理軟件极祸,要是你想能鼠標(biāo)點(diǎn)點(diǎn)就看見表格、數(shù)據(jù)這些的怠晴,建議安裝遥金,不然就只能命令行敲代碼了
sudo apt-get install phpmyadmin
sudo ln -s /usr/share/phpmyadmin/ /usr/share/nginx/www
sudo service nginx restart
安裝過程中會(huì)提示輸入mysql密碼和設(shè)置root登錄密碼,安裝完成訪問 你上一步配的IP地址/phpmyadmin蒜田,在本地虛擬機(jī)中的稿械,就是http://127.0.0.1/phpmyadmin,進(jìn)行管理數(shù)據(jù)庫冲粤。
如果上來就要你輸入root的密碼的話……
就先設(shè)置下mysql的root賬號(hào)和密碼
sudo mysql
管理員權(quán)限直接進(jìn)入美莫,然后就可以開始修改密碼了
mysql> use mysql;
mysql> update mysql.user set authentication_string=PASSWORD('這里寫新密碼'), plugin='mysql_native_password' where user='root';
mysql>flush privileges;
這一步主要是在設(shè)置新密碼的時(shí)候,順便把用戶root的plugin進(jìn)行修改梯捕,修改為默認(rèn)的 mysql_native_password,然后在刷新權(quán)限設(shè)置厢呵。
然后重啟mysql
sudo service mysql restart
mysql -u root -p
再用phpmyadmin就沒問題了
安裝wordpress
下載解壓
先下載個(gè)最新版wordpress吧
https://cn.wordpress.org/就有
下載完了以后解壓
tar -zxvf wordpress-5.0.3-zh_CN.tar.gz
我這是5.0.3版本,目前最新的傀顾。
把解壓出來的wordpress文件夾移到某個(gè)你想放的地方述吸,個(gè)人隨意。
配置庫
裝過phpmyadmin的锣笨,此時(shí)只要進(jìn)phpmyadmin頁面創(chuàng)建一個(gè)名為wordpress的數(shù)據(jù)庫就好,其他默認(rèn)道批。否則错英,進(jìn)mysql創(chuàng)建吧。進(jìn)入mysql:
mysql -u root -p
創(chuàng)建一個(gè)名為wordpress的數(shù)據(jù)庫:
create database wordpress;
以后要是想修改wordpress數(shù)據(jù)庫里的內(nèi)容:
use wordpress隆豹;
這里涉及到mysql命令語句椭岩,有興趣的可以研究一下,不然裝個(gè)phpmyadmin吧。
改權(quán)限
為了安全考慮判哥,修改下web根目錄的權(quán)限献雅。我習(xí)慣直接將解壓出來的wordpress目錄當(dāng)作網(wǎng)站的根目錄。
sudo chown www-data:www-data * -R
sudo usermod -a -G www-data username
這里www-data是nginx的默認(rèn)運(yùn)行用戶塌计。
wordpress的nginx配置文件
創(chuàng)建wordpress的nginx配置文件:
sudo nano /etc/nginx/conf.d/wordpress
里面內(nèi)容是
server {
listen 80 ;#default_server;
listen [::]:80;
#listen [::]:80 default_server ipv6only=on;
root 你的網(wǎng)站根目錄(也就是wordpress根目錄);
index index.php index.html index.htm;
# Make site accessible from http://localhost/
server_name 自己的域名或者IP挺身;
client_max_body_size 100M;
location / {
#try_files $uri $uri/ =404;
try_files $uri $uri/ /index.php?$args;#偽靜態(tài)
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name;
include fastcgi_params;
}
}
然后復(fù)制到sites-enabled文件夾里(這個(gè)文件夾里的才是nginx執(zhí)行的配置)
sudo cp /etc/nginx/conf.d/wordpress /etc/nginx/sites-available
最好把 /etc/nginx/sites-available和/etc/nginx/sites-enabled下的其它配置文件刪掉,不然容易出現(xiàn)問題锌仅。之后重啟nginx:
sudo rm /etc/nginx/sites-available/default /etc/nginx/sites-enabled/default
sudo service nginx restart
之后在瀏覽器輸入IP或者域名章钾,大功告成!
感謝
配置過程中借鑒了https://www.cnblogs.com/xiaodi914/p/4520658.html的經(jīng)驗(yàn)热芹,十分感謝贱傀!