For a month, the water for the water is finally installed, and I actually made me feel unprecedented during this period.
Part. Fortunately, I saved the Shuimu Essence in March, or I really don't know when I want to install.
. Now let's write down the installation step and leave a reference for friends who want to install. I use the FC3 system, here as an example. Use the rpm -qa xxx command to check the software required for the system before installation.
Whether the package is installed. The required packages are: Zlib, AutoConf, Automake, Libtool, Libxml2,
Libiconv, Libjpeg, Libjpeg-devel, Libpng, Libpng-Devel, FreeType2, GD, GD-
Devel, OpenSSL, GMP-4.X, these system disks are there, and it is all. Install libesmtp below, first download to the source package, then execute the following command: TAR XzVF libsmtp-1.0.tar.gz // Decompose the libesmtpcd libsmtp-1.0 // Enter the libesmtp source directory ./configure --disable-pthreadsmakemake install like LibesMTP The installation was successful. There is no special request to install MySQL and install it by mysql document. Now do some agrees: $ (bbshome) represents the installation directory of the BBS, default is / home / bbs, specified in this article
To / usr / local / bbs $ (wwwhome) represents the installation directory of Apache, specified as / usr / local / www $ (phpo) represents the installation directory of the PHP, in this article, by default / usr / local installation Apache and PHP: I downloaded HTTPD-2.0.52 and PHP4.3.10 to take this as an example. It should be noted that Apache is directly compiled and installed.
The maximum number of online people is 256, and it is useless to modify httpd.conf. I have discovered this approach to modify the source code.
. Modify the /include/httpd.h in the source code directory, plus the following condition definition statement: #ifdef hard_server_limit # define hard_server_limit 10000 # ENDIF This will increase to 10,000 people. You can compile it (direct use of command): CD httpd-2.0.52 // Enter the source code directory ./configure --prefix = / usr / local / www --enable-module = so --enable-module = sslmakemake install
Cd ../php4.3.10./configure --with-apxs2 = / usr / local / www / bin / apxs --disable-debug / --enable-pic --disable-rpath --enable-inline-Optimization / --with-dom --with-gd --with-freetype-dir = / usr / lib / --with-png-dir --with-iconv --with-jpeg-dir --with-zlib / Enable-track-vars make make installok! Prepare before installation is finally done! ! ! You can now install SMTHBBS. You have to modify the site custom file before you use, where FB2K-V2 is used, in the site directory, pay attention to verify that the UID GID of BBSUID and BBSGID and the local system in FB2K-V2.h is one
To, if it is inconsistent, please adjust it. The rest is some parameters of your site, pay attention to modify. Below start: ./ Configure --prefix = / usr / local / bbs --enable-site = fb2k-v2 --with-
WWW = / usr / local / www --with-php = / usr / local / include / php --with-mysql --enable-sslmakemake installmake install-homechown -r bbs: bbs / usr / local / bbs If everything goes well And this SMTHBBS, Apache and PHP have been installed. Running configuration: web way: Apache configuration file is /usr/local/www/conf/httpd.conf, editing this file, add addtype application / x-httpd-php .php
Modify the port parameter 80, modify the user and group parameters to BBS. Please set the Keepalive parameter to OFF.
Copy the file under the SMTHBBS source code BBS2www / xml to / usr / local / www / htdocs.
PHP configuration files can be obtained from the PHP source code, copy php.ini-dist (Dist to /usr/local/lib/php.ini, then edit the php.ini file, modify the value of short_open_tag to OFF.
Run SMTHBBS CD / USR / local / bbs / bin ./miscd daemon ./bbslogd ./bbsd -p 23 Then Telnet localhost, registration SYSOP and GUEST two accounts. Guest's password is written casually. Run apache / usr / local / www / bin / apachectl start
So far, the forum can already run, but there are still many jobs to do! : (Modify Classification Discussion Area: Here you directly borrow the seniors! :-) Modify the classification discussion area
The Classification of the Site is generally said that there are two steps. First, you need to modify the configuration file of the site, and the other is to change the code. The modification of the configuration file is related to the user interface, and the modification of the source code is related to the statistics and station management.
6.1 Modify Site Profile
The file that needs to be changed is ~ bbs / etc / menu.ini and the site.php below the home directory. Below is a brief form of the Menu.ini classification discussion area menu, the following explanations will be taken as an example: # ------------------------ ------------------------------------------% MENU M_EGROUPTITLE 0, 0, " Classification discussion area menu "Screen 3, 0, S_EGROUP @ EGROUPS 10, 22, 0," 0BBS "," (0) This station system [this site] "@ Egroups 0, 0, 0," 1usa "," (1 People in the United States [Campus] [Entrepreneurship] "@ EGROUPS 0, 0, 0," 2goabroad "," (2) Westward Journey [Study] [School] [Group] "@ Boardsnew 0, 0, 0," New " "(N) reading a new article"! .. 0, 0, 0, "exit", "(e) Back to the main selection"% EGROUP0 = "a" eGroup1 = "b" eGroup2 = "c" # - -------------------------------------------------- ----------------
The place you need to pay attention to: The first letter of the 5th parameter of the Classification Discussion Forum menu is a serial number, which defines the partition code by the following eGroup? (Generally one letter or number). For example, the first classification discussion area "This website" is 0, the sequence number is 0, and the partition code is A (defined by eGroup0). Note: The serial number is only used inside the menu.ini, there is no other use! The following modifications, and the new and modified discussion areas only need to know the partition code, in this example, the three partitions code are A b C, respectively. The serial number and partition code can be typically typically set. Have finished Menu.ini Refer to 4.3 Effectiveness. (Station in the main menu ~) Another configuration file that needs to be modified is Site.php, the above example needs to use the following code within Site.php:
$ section_nums = array ("a", "b", "c"); $ section_names = array (Array "," [This site] "), array (" people in the United States "," [campus " ] [Entrepreneurship] "), Array (" Westward Journey "," [Study] [School] "));
6.2 Modifying the Source Code Modifying the Sort Discussion Network Requires Site.c and Site.h files of the site. It is not recommended to modify DEFAULT.H and Default.c files directly. The SMTHBBS system has a ~ bbs / 0announce / groups / directory, this is the total directory of the layout essence, which stores the essence of all layouts. General site hopes that the partition structure and essence zone structure are identical. Take the above example, a total of three classified discussion areas, then there should be three directories in the total directory of the discussion area, we have named Group_0 Group_1 Group_2, respectively. Modifying a classification discussion area often requires the modification of the essence structure, so the station should enter the essence adjustment, such as establishing a directory, modify .Names file, etc. The modification of the source code is first the SECNUM constant in site.h, which should be defined as the number of classification discussion: #define secnum 3
The remaining modifications are in site.c, make sure that Site.h does not define USE_DEFAULT_SECODE.
There are four constants and classified discussion areas in Site.c, please pay attention to the type definition of constants must not be changed.
Const char second [secnum] [5] = {"a", "b", "c"}; this is a partition code, and some statistics need to be used.
Const char * const explain [] = {"This site system", "people in the United States", "Westward Journey", null}; the area name of the classification discussion area, the site management under Web will be used. The last NULL can't miss!
Const char * const groups [] = {"group_0", "group_1", "group_2", null}; the total directory name, open version, and modify the layout of the partition, and modify the layout. The last NULL can't miss!
Const char secname [secnum] [2] [20] = {{"This site system", "[this site]"}, {"people in the United States", "[Campus] [Entrepreneurship]"}, {"Westward Journey "," [Study] [school] [group] "},}; classified discussion area, according to this format, it is based on this format. In fact, only secname [i] [0] is actually used in the program, the purpose is to use and modify the location of the layout. Another problem that needs attention is that each layout of the essence directory is completely stored, and there is no relationship with the above modification. So, like the example above, if we decide to change the directory name of Group_0, then not only do the modifications similar to the above, and the essence is located in the version of the group_0 directory, you should enter the system management menu to reset the discussion area. , Select the mobile essence location, specify a new directory.
After modifying the source code, you need to recompile to install the BBS program. You can see that the modification of the source code is only related to the management operation and the statistical program, so in the actual operation, if it is to reduce the number of partitions or modify the classification area, only Menu.ini and Site.php can be adjusted without modifying the source code. .
Then generate the file that must be the first page, continue to use the results of the seniors: generate the necessary XML file for the homepage guide
3.4.1 Home Guide the correspondence of each element and XML file
All required XML files are saved in $ (BBSHOME) / XML / directory, if your platform does not have this directory, use the BBS account to generate this directory in $ (bbshome). All programs that generate XML need to be executed, save in $ (bbshome) / bin, source files in $ (srcdir) / local_u tl
The following is convenient to describe, and the Directory of XML and program is no longer specified.
Home REVIEW elements need xml file mainpage.php among the correlation function generating program to be executed recommend this xml article commend.xml gen_commend_html () genhot today a hot topic day.xml gen_hot_subjects_html () poststat classification wonderful forum day_sec * .xml gen_sections_html poststat gen_sec_hot_subjects_html () opened a new layout newboards.xml gen_new_boards_html () gennewboard recommended layout rcmdbrd.xml gen_recommend_boards_html () is not hand-written program popularity ranking board.xml gen_board_rank_html () usage today blessing bless.xml gen_blessing_list_html () poststat 3.4.2 crontab which related to Home Introduced Partial Reference $ (srcdir) Contrib / Cron.smth, calling each of the programs in crontab in the crontab of the BBS account is shown below. Add it to the crontab of your BBS account. Note that the crontab that is not a complete BBS account, just with the information about the relevant part, the complete crontab list, please refer to $ (srcdir) /Contrib/cron.smth. Time and the full path of the program, please adjust according to your own platform. # 时时 Update Recommended article 0,10,20,30,40,50 * * * / home / bbs / bin / genhot # 59 points per hour to perform hot topic statistics; 1 point HTML 59 * * * * / home / BBS / BIN / PostStat / Home / BBS # Stiger: New Ten Statistics 59 23 * * RM -F / Home / BBS / TMP / XPOST / * # 4:33 Month 4:33 Statistics 0 33 4 * * * / home / bbs / bin / usage 0> / dev / null 2> & 1 36 4 * * * / home / bbs / bin / usage 1> / dev / null 2> & 1 to gennewboard, if your platform is often opened The new version, then add it to crontab; if it is not normally opened, after opening a new version on the BBS system, manually perform it in manual use of the BBS account. Recommended article needs to open a version on the station, Recommend version, then the moderator is pressed in front of the article recommended by the article; 3. This article enters the Recommand version, the station is in the Recommend version requires the recommended article to press G to make this article Recommended article that appears in the web home page.
3.4.3 Handmade RCMDBRD.XML Edit, $ (BBSHOME) /XML/rcmdbrd.xml, thank Windinsn to provide Xml version = "1.0" encoding = "gbk"?>
It has been basically completed, but in order to simplify the registration process, I canceled the process of activating the mail, the web fills in the password.
And directly generate registration orders, thank you for the documentation, I am lazy! :> BBS2www / html / bbsreg.html Add two
BBS2www / html / bbsreg.php first judge $ _POST ["pass2"] and $ _POST ["pass2"], different, directly html_error_quit, I remember the number of digits must be 5-39 bits (INCLUSIVE), This is best limited. I am not sure about this range will not have problems.
$ Password = BBS_FINDPWD_CHECK (",", ""); change to $ password = $ _POST ["pass1"] Herf, bbs_findpwd_check is a garbage function that automatically generates a password
Starting from $ mailbody to that http_error_quit that sends an email failed
The last parameter called by the BBS_CREATEREGForm function called, changed to false, this is very critical! ! Doing so will fill in the registration order station can be seen in the System Management Menu -> Approval Registration.
The latter tips are slightly changed, and it may be almost.
In addition, your SRC / Site.h is best like this: #define register_wait_time (0) #define register_wait_time_name "immediately" These two SMTH default seem to be 48 hours, compare BT. This way to ensure that Telnet can immediately fill in the registration.
I still have a problem after the above method is modified, that is, the user who is rejected is re-filled in the web in the Web but notes.
When I got it, I finally gotten it. Modify BBS2www / html / bbsfillform.php, put BBS_CREATEREGFORM
The last parameter of the function is also changed to false, so it is OK.
Ok, finally installed, exhausted me! As for blog, I still have problems after I installed, and now I can't ask for questions on water, I have to do it first. ; (
As for the platform, the education network users can take a look at http://202.195.144.15, the public network is unable to access, everyone knows the reason!