LAMP(2)--結合discuz配置apache,mysql搭建論壇

★下載discuzphp

  mkdir /data/www   <== 先建立一個目錄,用以存放網站程序
  cd /data/www
  wget  http://download.comsenz.com/DiscuzX/3.2/Discuz_X3.2_SC_GBK.zip
  unzip Discuz_X3.2_SC_GBK.zipmysql

[root@yue www]# ls
Discuz_X3.2_SC_GBK.zip  readme  upload  utility
web

                         ①      ②       ③算法

①③沒有什麼用處咱們能夠將其刪掉了
sql

[root@yue www]# mv upload/*
apache

[root@yue www]# ls
admin.php    crossdomain.xml         index.php   robots.txt  upload
api          data                    install     search.php  userapp.php
api.php      Discuz_X3.2_SC_GBK.zip  member.php  source      utility
archiver     favicon.ico             misc.php    static
config       forum.php               plugin.php  template
connect.php  group.php               portal.php  uc_client
cp.php       home.php                readme      uc_servervim

★配置apacheapi

  • 編輯apache主配置文件 vim /usr/local/apache2/conf/httpd.conf
    瀏覽器

  #Include conf/extra/httpd-vhosts.conf  <== 將此行最前方的#刪除,使這行內容發揮做用app

  • vim /usr/local/apache2/conf/extra/httpd-vhosts.conf

    刪除第二個虛擬主機,只保留第一個便可,並對其進行配置

    其詳細內容說明以下:

<VirtualHost *:80>

    ServerAdmin webmaster@dummy-host.example.com   <== 管理員郵箱,能夠不要
    DocumentRoot "/data/www"       <== 網站根目錄      
    ServerName
www.cy111.com      <== 自定義的域名
    ServerAlias www.dummy-host.example.com <== 別名
    ErrorLog "logs/dummy-host.example.com-error_log"  <== 錯誤日誌
    CustomLog "logs/dummy-host.example.com-access_log" common  <== 訪問日誌
</VirtualHost>

咱們這時候紅色兩行便可,別的能夠先暫且不考慮,能夠將其先註釋掉

[root@yue www]# /etc/init.d/apachectl -t
Syntax OK           檢查一下配置文件有沒有問題

[root@yue www]# /etc/init.d/apachectl graceful  從新加載一下配置文件

[root@yue www]# curl -x127.0.0.1:80 www.cy111.com  什麼都沒輸出,說明虛擬主機生效了 

★配置mysql

[root@yue www]# /usr/bin/mysqladmin -uroot password '123456'   爲root用戶設置密碼

[root@yue www]# mysql -uroot -p123456   登陸

mysql> create database discuz;         <== 建立庫
Query OK, 1 row affected (0.00 sec)   

mysql> grant all on discuz.* to 'sky'@'localhost' identified by 'yueyue';
Query OK, 0 rows affected (0.00 sec) <== 給本地的sky用戶授予權限

在瀏覽器訪問www.cy111.com ,開始安裝discuz,其中一個頁面要求咱們更改幾個目錄的權限讓其支持apache帳號可寫(即:chown daemon:daemon  data  uc_server/data  uc_client/data config),更改完成以後即可以執行下一步了,按照要求操做最終咱們成功搭建了一個論壇。

★爲虛擬主機配置用戶認證

◆什麼是用戶認證?

  好比咱們成功搭建了一個論壇,在上面有一個用戶登陸的地方,咱們經過用戶名和密碼能夠登陸admin用戶,以管理員身份登陸後即可以管理論壇的後臺,這其實是很是危險的事情,若是你設置的密碼很簡單或者有人惡意試出了管理員密碼,這均可能形成很大的損失。這時咱們能夠針對 ***/admin.php網址作一個限制,在經過認證以後才能夠進入管理員登陸頁面。

◆用戶認證的配置

  • 編輯配置文件 vim /usr/local/apache2/conf/extra/httpd-vhosts.conf

  在先前配置apache時添加的虛擬主機中加入如下內容:

  <Directory /data/web/test>
   AllowOverride AuthConfig  <== 規定咱們接下來要作用戶認證了
  </Directory>

  • vim /data/web/test/.htaccess
    加入一些內容:
    AuthName "frank share web"
    AuthType Basic
    AuthUserFile /data/web/test/.htpasswd
    require valid-user

  • 建立apache驗證用戶

    [root@yue data]# /usr/local/apache2/bin/htpasswd -c /data/www/test/.htpasswd yue
    New password:
    Re-type new password:                   <== 首次添加用戶須要加-c命令,第二次就不須要了
    Adding password for user yue   

[root@yue data]# /usr/local/apache2/bin/htpasswd --help
Usage:
    htpasswd [-cimBdpsDv] [-C cost] passwordfile username
    htpasswd -b[cmBdpsDv] [-C cost] passwordfile username password

    htpasswd -n[imBdps] [-C cost] username
    htpasswd -nb[mBdps] [-C cost] username password
 -c  Create a new file.
 -n  Don't update file; display results on stdout.
 -b  Use the password from the command line rather than prompting for it.
 -i  Read password from stdin without verification (for script usage).
 -m  Force MD5 encryption of the password (default).       <== 使用MD5的加密算法
 -B  Force bcrypt encryption of the password (very secure).
 -C  Set the computing time used for the bcrypt algorithm
     (higher is more secure but slower, default: 5, valid: 4 to 31).
 -d  Force CRYPT encryption of the password (8 chars max, insecure). <== 默認
 -s  Force SHA encryption of the password (insecure).
 -p  Do not encrypt the password (plaintext, insecure).
 -D  Delete the specified user.
 -v  Verify password for the specified user.

  • vim /usr/local/apache2/conf/extra/httpd-vhosts.conf

    <Directory /data/www/admin.php>  <== 已悄悄將此前的目錄改成文件,咱們試驗成功說明寫成

                                         文件也能夠。
       AllowOverride AuthConfig   <== 在此行下加入一些內容

    </Directory>

    加入:

     AuthName "hera"    <== hera爲自定義名稱,顯示爲認證時候的提示信息
     AuthType Basic
     AuthUserFile /data/www/test/.htpasswd
     require valid-user

  • 重啓apache服務

  刷新網頁,使用以前建立的認證用戶進行認證

 

wKiom1TQajKRxspZAACxH6CBbGs819.jpg

wKioL1TQaxuRJDdXAACuU2__io0876.jpg

相關文章
相關標籤/搜索