前段時間做課設要求在linux的服務器上用LAMP環境搭建自己的論壇或者博客。
首先是我用的環境:
Ubuntu18.04+Apache2+PHP7.1+MySQL5.7
其中服務器是前段時間白嫖的華為雲服務器,域名也是白嫖的域名。
用的ssh連接工具是finalshell,因為這個東西比較方便windows和linux服務器傳輸文件和更改。
Apache2的安裝與測試:
首先安裝Apache2:
sudo apt-get install apache2
然后打開瀏覽器輸入自己的服務器公網ip,顯示如下圖就是成功了:

完成上面步驟后最好更新一下資源:
sudo apt-get update sudo apt-get upgrade -y
PHP7.1的安裝與測試:
然后安裝PHP環境以及其他的相關組件,省的后面又哪里缺組件之類的:
sudo apt-get install software-properties-common sudo add-apt-repository ppa:ondrej/php sudo apt update sudo apt install php7.1-fpm php7.1-mcrypt php7.1-cli php7.1-xml php7.1-mysql php7.1-gd php7.1-imagick php7.1-recode php7.1-tidy php7.1-xmlrpc sudo apt-get install libapache2-mod-php7.1
結束之后在終端輸入
php -v
就可以查看版本了,如下圖:

MySQL5.7的安裝與測試:
在終端輸入
sudo apt-get --purge remove mysql-server mysql-common mysql-client sudo apt-get install mysql-server mysql-common mysql-client sudo /etc/init.d/mysql restart
安裝完成后,由於新創建的是root用戶而我們沒有密碼,所以我們需要先刪除這個root用戶再創建一個新的root用戶並且給他賦所有的權限。(注意在mysql終端輸入都是以 ;結尾)。
首先,登錄mysql:
sudo mysql -u root
然后刪除root賬號:
mysql> DROP USER 'root'@'localhost'; Query OK, 0 rows affected (0,00 sec)
重新創建root:
mysql> CREATE USER 'root'@'%' IDENTIFIED BY '密碼';
授權:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; Query OK, 0 rows affected (0,00 sec) mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0,01 sec) mysql> exit
建立Apache與MySQL的連接:
輸入
sudo apt-get install phpmyadmin -y
然后選擇Apache2

設置密碼並確認密碼

最后建立連接重啟MySQL和Apache
sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin sudo service mysql restart sudo /etc/init.d/apache2 restart
這樣,LAMP環境就已經搭建好了。
接下來我們來綁定域名(如果沒域名可以跳過)
首先進入自己域名的運營商,找到自己的域名,然后選擇域名中的DNS解析,選擇記錄類型為A,ip地址為自己服務器的公網ip,點擊確定就可以了。
wordpress的安裝:
由於現在wordpress的主頁訪問不了,所以這時候就體現出了finalshell的便利性了,我們先在windows下下載一個最新版的wordpress安裝包。
wordpress-5.3.2-zh_CN.zip下載鏈接:
鏈接:https://pan.baidu.com/s/1380HrzglO5XDx39aX83O4g
提取碼:4ti5
直接上傳到服務器,然后解壓到/var/www/html/文件夾下面,(html文件夾是Apache的默認讀取的文件夾目錄)
接下來就為wordpress創建一個數據庫(管理員和密碼可以自己改):
//登錄進入數據庫
mysql -u root -p //創建數據庫
CREATE DATABASE wordpress; //創建管理員
CREATE USER wordpressusers; //設置密碼
SET PASSWORD FOR wordpressusers = PASSWORD("密碼"); //設置權限
GRANT ALL PRIVILEGES ON wordpress.* TO wordpressusers IDENTIFIED BY "密碼"; //生效配置
FLUSH PRIVILEGES; //退出數據庫
exit
由於現在wordpress已經存在html文件夾下,就不用再移動了,可以直接給整個html文件夾賦予權限(不賦權的話就后面在網頁上會報錯缺少權限):
sudo chmod -R 777 /var/www/html/ sudo /etc/init.d/apache2 restart
這樣就可以通過域名(沒有域名就通過公網ip)直接的訪問了,界面如下:

Apache2部署多個站點:
上面說過,Apache2的默認文件夾是html,但是我們一般使用的時候,很多個站點都是部署在同一部服務器上面,接下來就可以通過兩種方法來訪問不同站點。
1. 如果你有多個域名的話,那么就可以修改配置文件通過不同域名來訪問不同的文件夾,就是用來訪問不同的站點。
2. 如果你只有一個域名的話,那么就通過修改Apache2配置文件來監聽不同的端口號來訪問不同的站點。
由於我只有一個域名,所以先介紹第二種方法。
雖然在實驗中發現,幫別人搭建的時候,由於他沒有域名,所以不能通過不同的端口號來區分這些,可能是因為粗心或者其他原因我也沒去探討。
首先我們配置Apache2端口,讓Apache2監聽其他端口
修改/etc/apache2/ports.conf,可以在其默認的端口(Listen 80)下面增加自己要監聽的端口。
然后配置Apache2配置文件
在/etc/Apache2/sites-available中建立自己的配置文件,可以先復制000-default.conf
然后再重命名。
sudo cp 000-default.conf wushuyng1_best.conf, sudo cp 000-default.conf wushuyng2_best.conf, sudo cp 000-default.conf wushuyng3_best.conf
再打開來編輯這些配置文件,其中需要關注的是ServerName和DocumentRoot這兩個配置點:
首先需要你在/var/www/下面新創建一個文件夾,其與html文件夾在同一目錄下就行。
然后更改VirtualHost *的端口號為自己聽的,把ServerName的前面注釋符號 ‘#’去掉,后面改成自己的域名
ServerName wushuyng.best
在下面修改
DocumentRoot /var/www/wushuyng1_best
再在其下面加一段如下:
<Directory "/var/www/wushuyng1_best"> AllowOverride All </Directory>
最后一步我們需要在sites-enabled目錄下來建立符號鏈接來使其生效:
sudo ln -s /etc/apache2/sites-available/wushuyng1_best.conf /etc/apache2/sites-enabled/wushuyng1_best.conf sudo ln -s /etc/apache2/sites-available/wushuyng2_best.conf /etc/apache2/sites-enabled/wushuyng2_best.conf sudo ln -s /etc/apache2/sites-available/wushuyng3_best.conf /etc/apache2/sites-enabled/wushuyng3_best.conf
重啟Apache2使配置生效:
sudo /etc/init.d/apache2 restart
這樣就能通過域名+:端口號來訪問
如果是要采用第一種情況的話,就不用了監聽新的端口,只需要在配置文件的ServerName 后面輸入域名就可以,端口號不用改變,其他都一樣。
參考博客:https://blog.csdn.net/jochen_M/article/details/84073588
Discuz的安裝:
由於前面配置了8081端口監聽的目錄為wushuyng1_best,其中是打算存放Discuz論壇,所以直接在/var/www/wushuyng1_best目錄下下載並解壓Discuz文件,其中會有三個目錄,需要把upload目錄下的所有文件移到wushuyng1_best中。
然后就是配置Discuz的數據庫
先mysql -u root -p登錄進數據庫,然后創建一個名為discuz的數據庫,並創建一個管理員為wushuyng的賬號。
create database discuz; grant all privileges on discuz.* to '用戶名'@'localhost' identified by '密碼'; flush privileges; exit
然后賦權
chmod -R 777 /var/www/wushuyng1_best/*
當配置完成后注意,如果用google可能會因為自己站點的安全性不好,發送表單請求的時候可能會把你攔截從而登錄不了,換個瀏覽器就好了。

其他的PHPBB3和織夢管理系統也是如此安裝就好了。
