web及LAMP源碼編譯安裝

動態腳本網站的工作方式:
CGI:Common Gateway Interface通用網關接口,主要是跟一個特定的語言解釋器交互。

FastCGI:把CGI做成一個服務,工作在一個端口上,產生很多子進程,當用戶訪問時,把一個空閒的進程給用戶,它自己實現產生,回收等

mode模塊化:把某種解釋器做成對應的模塊,作爲Apache的一部分

實現網頁開發的工具(腳本的)
asp:active Server Page
ASP.NET:
php:開源的,它的網站
www.php.net 超文本預處理器,直接index.php,還有潛入式html.
jsp:企業應用,執行效率高。
網站框架CGI:perl,python,ruby(ruby on rails)

數據庫的基本概念及操作
SQL:Structure Query Language 結構化查詢語言
關係型數據庫中用於實現數據管理的語言
Oracle:版本9i,10g網格數據庫,網格:某一個數據庫服務器掛了,不會影響流程
grid:
Infomix:被IBM公司收購了
Sybase:
DB2:IBM公司的
SQL Server:
現今有的:Oracle,DB2,SQL Server
開源的:MySQL,MariaDB,PostgreSQL據說技術比較好,EnterpriseDB商業的處於發展階段在中國已有商務中心

RDBMS:關係型數據庫管理系統

數據文件:有許多源數據,可以用select,update,delete等
ls是二進制的命令

ODBC:開放數據庫連接,非常底層的連接驅動。
JDBC:專門用於實現Java的連接驅動


如何安裝數據庫
yum install mysql-server
   mysql-server是服務器
   mysql是客戶端
service mysqld start
 mysql         連接服務器,默認本機,用戶root,密碼爲空
 SHOW DATABASES;   查看數據庫
    information_schema 位於內存中運行的接口
    mysql
    test               空的
 CREATE DATABASE mydb;  創建數據庫
 use mydb;               設定默認數據庫
 SHOW TABLES;            查看錶
 DROP DATABASE mydb;     刪除數據庫
 CREATE TABLE tb1(        創建表
       Name CHAR(20),    最長字符
       Age  INT
              );
 DESC tb1;               表結構
 SELECT * FROM tb1;      檢索表數據
 INSERT INTO tb1 (Name,Age) VALUES ('jin',18);插入數據
 INSERT INTO tb1 (Name,Age) VALUES ('jin',18),('biao',80);批量插入
 INSERT tb1 (Name) VALUES ('zhou');只往特定的字段插入
 SELECT * FROM tb1 WHERE Age > 17;條件查詢
 UPDATE tb1 SET Age = 76 WHERE Name='jin;'修改數據
 DELETE FROM tb1 WHERE Name='jin';刪除數據
 DROP TABLE tb1;                  刪除表
 quit或\q                         退出


如何安裝佈署php:
 yum install php
 rpm -ql php
 vim /etc/httpd/conf.d/php.conf作爲apache的模塊使用
 DirectoryIndex識別新的主頁面
 service httpd restart
 vim /etc/httpd/conf.d/web.magedu.com/index.php
   <?php
    phpinfo(); 內置函數生成一個網頁
   ?>


如何讓php連接數據庫:
 yum install php-mysql 專門連接數據庫的驅動
 yum install php-mbstring 對字符串的支持功能更強大
 yum install xml php-pear
 php本身是可執行文件
 phpize -v      顯示擴展模塊,版本等
 vim /etc/php.ini主配置文件
 service http restart
 cd /etc/httpd/conf.d/web.magedu.com
 vim index.php   創建網頁
  <?php
   $link=mysql_connect(localhost,root,'');
   if ($link)
     echo "Sucess";
   else
     echo "Failue";
   ?>               測試MySQL的連接
 service mysql stop 停止服務

著名的論壇:discuz 騰訊
           phpwind 阿里巴巴
           phpbb  國外的
      博客:wordpress


LAMP的安裝:Apache+Mysql+PHP

編譯安裝:
#./config檢查環境,及它的特性 (Makefile.in-->makefile)
#make            
#make install

Apache的源代碼編譯安裝
yum grouplist     查看包組的情況
yum -y groupinstall "Development Tools" "X Software" "Development Libraries"
lftp 192.168.0.254
  cd /pub/Sources/LAMP
  get http-2.2.17.tar.bz2  下載軟件包
tar xf http-2.2.17.tar.bz2
hwclock -s      與硬件時間同步
date             查看時間
crontab -e
  */1 * * * * /sbin/hwclock -s &> /dev/null 每隔一分鐘同步一次
crontab -l 查看
./configure預編譯安裝,檢查環境
  --perfix=/usr/local/apache 安裝路徑
  --sysconfdir=/etc/httpd    默認的配置文件的安裝目錄
  --enable-so                啓用apache動態裝卸模塊
  --enable-ssl               支持ssl,https功能的打開
  --enable-rewrite           支持URL重寫
  --with-zlib                數據壓縮工具
  --enable-mods-shared=most|all 所支持的模塊共享模式     
make
make install
cp /etc/init.d/httpd ./
vim httpd
  chkconfig;- 85 15啓動關閉的優先級
  .表Source把其他的腳本文件包含到當前腳本
  /etc/sysconfig/httpd 輔助配置文件顯示apache的工作狀態
   apachectl=/usr/local/apache/bin/apachectl
    httpd=/usr/local/apache/bin/httpd
  pidfile   進程號文件
  lockfile  是個腳本,避免服務重啓兩次,自我保護機制
/usr/local/apache/bin/apachectl start開啓
  /etc/rc.local
  /etc/init.d/的腳本service httpd start
killall httpd 刪除所有httpd的進程
netstat -tnlp
vim /etc/httpd/httpd.conf主配置文件
  PidFile "/var/run/httpd.pid"手動指Pid的文件位置
  Include /etc/httpd/extra/httpd-vhosts.conf開啓
          在該文件下添加虛擬主機
  Include /etc/httpd/extra/httpd-ssl.conf開啓
  DocumentRoot "/usr/.."網頁文件的位置
cp httpd /etc/init.d
service httpd restart
chkconfig --add httpd自己寫的腳本要手動添加
chkconfig --list httpd查看
chkconfig httpd on 開機自動啓動
vim /etc/profile
 PATH=$PATH:/usr/local/apache/bin添加路徑到PATH變量
. !$重讀上面的配置文件
httpd -t 檢查語法
man -M /usr/local/apache/man httpd
vim /etc/man.config
 MANPATH /usr/local/apache/man添加不用M指定
cd /usr/include  系統的頭文件
cd /usr/local/apache/ | ls include/
ln -sv /usr/local/apache/include /usr/include/apache 創建連接能讓系統找到頭文件
vim /etc/ld.so.conf.d/apache.conf
 /usr/local/apache/lib輸出庫文件
ldconfig -v重新導出,讓它立即生效

MySQL的安裝,二進制文件解壓後配置下就可使用:
lftp 192.168.0.254
  cd /pub/Sources/mysql-5.5
  get mysql-5.5.15-linux2.6-i686.tar.gz下載
tar xf mysql-5.5.15-linux2.6-i686.tar.gz -C /usr/local解壓並保存到/usr/local
cd /usr/local
ls                          文件名太長創建軟連接
ln -sv mysql-5.5.15-linux2.6-i686 mysql
groupadd mysql  要想使用mysql必須創建mysql組和用戶
useradd -g mysql -s /sbin/nologin -M mysql
  -M不指定家目錄
id mysql
cd mysql
ls
chown -R mysql:mysql .  mysql目錄屬主屬組爲mysql
ll 查看
fdisk /dev/sda
   n 創建分區
   t 改變類型爲8e

  創建邏輯卷
partprobe /dev/sda
pvcreate /dev/sda5
vgcreate myvg /dev/sda5
lvcreate -L 3G -n mydata myvg

lvs  查看
mke2fs -j -L MYDATA -b 2048 /dev/myvg/mydata創建文件系統格式化
mkdir /mydata
vim /etc/fstab
  LABEL=MYDATA /mydata ext3 default 0 0 開機自動掛載
mount -a掛載
mkdir /mydata/data創建目錄用來存放數據
chown -R mysql:mysql /mydata/data改變屬主屬組以mysql用戶運行
ll /mydata/data查看一下
scripts/mysql_install_db --user=mysql --datadir=/mydata/data數據初始化
chown -R root .把屬主改爲root
cd support-files/ | ls  mysql的配置文件
cp my-large.cnf /etc/my.cnf
vim /etc/my.cnf
 datadir = /mydata/data添加數據的目錄
cp mysql.server /etc/init.d/mysqld控制mysql服務啓動的腳本
service mysqld start驗證啓動
chkconfig -add mysqld
chkconfig --add mysqld
chkconfig --list mysqld
netstat -tnlp監聽在3306端口
vim /etc/profile
 PATH=$PATH:/usr/local/mysql/bin
. /etc/profile重讀文件
echo $PATH查看一下
mysql  連接mysql
cd ..切換到子目錄
ls
ln -sv /usr/local/mysql/include /usr/include/mysql爲頭文件創建軟連接
ls /usr/include/mysql/
vim /etc/ld.so.conf.d/mysql.conf
  /usr/local/mysql/lib配置庫文件路徑
ldconfig -v重新裝載
ls man/
vim /etc/man.config
 MANPATH /usr/local/mysql/man添加man文檔的路徑
man mysqld測試一下

php的編譯安裝:
下載軟件包php-5.3.6.tar.bz2
tar xf php-5.3.6.tar.bz2 -C ~解壓軟件包到家目錄
cd php-5.3.6

./configure --prefix=/usr/local/php5安裝路徑
--with-apxs2=/usr/local/apache/bin/apxs
--with-mysql=/usr/local/mysql針對Mysql安裝
--with-mysqli=/usr/local/mysql/bin/mysql_config 接口
--enable-mbstring=all更好的支持字符串
--enable-track-vars --with-png --with-xml --with-freetype --with-gd --with-zlib支持繪圖功能

make && make install
cp php.ini-production /usr/local/php5/lib/php.ini配置文件
vim /etc/httpd/httpd.conf
 AddType application/x-httpd-php .php要求Apache支持php的網頁
 DirectoryIndex index.php index.html要求網站主目錄支持php
service httpd restart重啓服務
cd /usr/local/apache/htdocs/網頁的位置
vim index.php寫個網頁測試一下能否連接數據庫
 <?php
   $link=mysql_connect(localhost,root,'');
   if ($link)
     echo "Sucess";
   else
     echo "Failue";
   ?>              
service mysqld start
打開網頁測試一下,出現Sucess則成功
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章