學習筆記
安裝php之前必須安裝MySQL Apache
一下我們都是使用源碼包安裝的
1. 安裝mysql
cd /usr/local/src/
wget 下載
tar zxvf /usr/local/src/mysql-5.1.40-linux-i686-icc-glibc23.tar.gz
mv mysql-5.1.40-linux-i686-icc-glibc23 /usr/local/mysql
useradd -s /sbin/nologin mysql
cd /usr/local/mysql
mkdir -p /data/mysql
chown -R mysql:mysql /data/mysql
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql (初始化)
cp support-files/my-large.cnf /etc/my.cnf
cp support-files/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
vim /etc/init.d/mysqld #修改datadir(填寫路徑)
chkconfig --add mysqld
chkconfig mysqld/ on
chkconfig --list mysqld(檢查是否啓動成功)
啓動MySQL
service mysqld start 或者 、etc/init.d/mysqld( 如果啓動不成功,別忘了關閉防火牆)
我們可以 ps aux|grep mysqld
或者查看端口 netstat -lnp|grep 3306
或者查看有木有文件生成 ls /data/mysql 裏面有錯誤啓動日誌很有用在mysqld啓動失敗的時候可以查看
2. 安裝apache
wget http://syslab.comsenz.com/downloads/linux/httpd-2.2.16.tar.gz
tar zvxf httpd-2.2.16.tar.gz
cd httpd-2.2.16
./configure --prefix=/usr/local/apache2(安裝目錄) --with-included-apr(apr被Apache依賴的東西,能夠讓Apache能在多平臺使用) --with-pcre(正則) --enable-mods-shared=most(模塊)
make && make install
檢查是否成功
ls /usr/local/apache2/
啓動Apache服務
/usr/local/apache2/bin/apachectl start
可以查看是否啓動成功
ps aux|grep httpd
3安裝php
wget http://cn2.php.net/distributions/php-5.3.28.tar.gz
tar zxf php-5.3.28.tar.gz
cd php-5.3.28
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif --disable-ipv6
安裝出現錯誤時我們按照提示進行安裝一般是這樣
yum install -y xxx-devel
make && make install
4配置apache
首先我們查看Apache的配置文件
vim /usr/local/apache2/conf/httpd.conf
靜態動態模塊
/usr/local/apache2/bin/apachectl -M
列出靜態模塊
/usr/local/apache2/bin/apachectl -l
檢查是否語言有錯
/usr/local/apache2/bin/apachectl -t
瞭解三種模式
prefork worker events
vim /usr/local/apache2/conf/httpd.conf
找到:
AddType application/x-gzip .gz .tgz
在該行下面添加:
AddType application/x-httpd-php .php
找到:
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
將該行改爲:
<IfModule dir_module>
DirectoryIndex index.html index.htm index.php
</IfModule>
找到:
#ServerName www.example.com:80
修改爲:
ServerName localhost:80
有一個地方要注意:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
改爲
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all
</Directory>
位置完成之後檢測一遍看看有木有錯誤就行了
/usr/local/apache2/bin/apachectl -t
然後重新啓動Apache服務
/usr/local/apache2/bin/apachectl restart
或者重新加載
/usr/local/apache2/bin/apachectl graceful
5. 測試解析php
vim /usr/local/apache2/htdocs/1.php
寫入:
<?php
echo 'aminglinux.com';
?>
在瀏覽器中輸入IP/1.php即可
其他測試
<?php
phpinfo();
?>
Loaded Configuration File 文件下顯示(none)我們拷貝些文件過去,讓它有顯示
cp php.ini-production /usr/local/php/etc/php.ini
重新啓動Apache服務,刷新瀏覽器即可,就會在
Loaded Configuration File 下顯示/usr/local/php/etc/php.ini
簡單介紹幾個php的選項
cd /usr/local/php/
/usr/local/php/bin/php -m(列出一些靜態編譯的模塊)
/usr/local/php/bin/php -i(顯示出命令行模式下的phpinfo的信息)
可能會報出時間錯誤這個警告
我們可以修改配置文件
/usr/local/php/etc/php.ini(php的配置文件)
修改timezone 即可 。。
/usr/local/php/bin/php -v(顯示出版本信息)