標籤:http io ar os 使用 sp for strong 檔案
在自己得電腦虛擬機器上安裝centos之後一般是不會串連到外網的此時使用yum無法安裝gcc,gcc++等編譯軟體,那麼就沒法編譯安裝 apache.mysql,此時需要更改 網路設定檔.
在虛擬機器裡設定 網路1為 網路地址轉換NAT而非NAT模式, 網路2為橋接模式。
vi /etc/sysconfig/network-scripts/ifcfg-eth0
在裡面做如下配置
DEVICE=eth1 //網卡名
ONBOOT=yes //啟動
BOOTPROTO=dhcp //使用dhcp
PEERDNS=yes //更改DNS檔案
HWADDR=08:00:27:90:9B:08 //Mac地址 寫成自己的centos的mac地址
然後儲存退出
給centos添加一個網卡使用橋接模式
vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
ONBOOT=yes
BOOTRPOTO=none //不適用dhcp
IPADDR=你的區域網路IP
NETMASK=255.255.255.0
GATEWAY=區域網路網關
HWADDR=mac地址
儲存退出
重啟網路以便載入更改。
service network restart //重啟網路服務
此時可以使用 ping命令來測試下
ping -c 4 網關IP
如果返回正確,可以串連外網了。如果錯誤可以把網路1,網路2的設定調換下。
安裝mysql
一般會出現,library字元的提示;為了防止錯誤
yum -y install gcc gcc-c++ ncursese ncurses-devel wget
擷取mysql
cd /usr/local/src
wget http://mysql.mirror.kangaroot.net/Downloads/MySQL-5.1/5.1.73.tar.gz //擷取mysql
tar -zxvf mysql-5.1.73//解壓mysql
cd mysql-5.1.73
配置編譯檔案
./configure --prefix=/usr/local/mysql --enable-thread-safe-client --enable-assembler --with-big-tables --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static --with-charset=utf8 --with-collation=utf8_general_ci --with-extra-charsets=complex
make //編譯
make install //安裝
mysql配置:
增加mysql使用者
groupadd mysql
useradd -g mysql -s /sbin/nologin mysql
更改資料目錄許可權
chown -R mysql.mysql /usr/local/mysql/var
chmod -R 700 /usr/local/mysql/var
初始化授權表
./lib/mysql_install_db --user=mysql
複製設定檔到etc以便開機啟動mysql時檢測到MYSQL的配置
cp ./share/mysql/my-medium.conf /etc/my.cnf
設定開機啟動:
cp ./share/mysql/mysql.server /etc/rc.d/init.d/mysqld
chmod +x /etc/rd.d/init.d/mysqld
chkconfig --add mysqld
加入MYSQL環境變數:
VI /etc/profile
添加
PATH=$PATH:/usr/local/mysql/bin //增加linux環境變數
export PATH
執行 . /etc/profile
啟動mysql
service mysql start
php安裝
編譯一般會出現的錯誤
php出現安裝錯誤 xml時:
yum -y install libxml2 libxml2-devel
yum -y install libpng-devel libjpeg-devel
安裝 libmcrypt
wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt/libmcrypt-2.5.7.tar.gz
出現 flock錯誤的時候:(找不到函數庫的錯誤)
vim /etc/ld.so.conf.d/local.conf # 編輯庫檔案
/usr/local/lib # 添加該行
:wq # 儲存退出
ldconfig -v # 使之生效
使用nginx做web伺服器的時候,nginx是以CGI的方式來支援php的所以,安裝php的時候要開啟php的php-FPM功能。
下載PHP
wget http://cn2.php.net/distributions/php-5.4.7.tar.gz
./configure --prefix=/usr/local/php \
--enable-fpm \
--with-mcrypt \
--enable-mbstring \
--disable-pdo \
--with-curl \
--disable-debug \
--disable-rpath \
--enable-inline-optimization \
--with-bz2 \
--enable-sockets \
--enable-sysvsem \
--enable-sysvshm \
--enable-pcntl \
--enable-mbregex \
--with-mhash \
--enable-zip \
--with-pcre-regex \
--with-mysql=/usr/local/mysql \ ## 需要先安裝mysql
--with-mysqli=/usr/local/mysql/bin/mysql_config \ ##需啊喲先安裝MYSQL
--with-gd \
--with-jpeg-dir
make
make install
cp ./etc/php-fpm.conf.default ./etc/php-fpm.conf
vi ./etc/php-fpm.conf
user=www-data
group=www-data
:wq
./bin/php-fpm start;
安裝 nginx
因為nginx 不原生的支援,gzip壓縮,prec支援URL重寫
wget ftp://ftp.csx.cam.ac.uk/pub.software/programming/pcre/pcre-8.34.tar.gz
安裝zlib庫:
wget http://zlib.net/zlib-1.2.8.tar.gz
下載nginx
wget http://nginx.org/download/nginx-1.4.2.tar.gz
解壓縮後:
編譯:
./configure --sbin-path=/usr/local/nginx/nginx \
--conf-path=/usr/local/nginx/nginx.conf \
--pid-path=/usr/local/nginx/nginx.pid \
--with-http_ssl_module \
--with-pcre=/usr/local/src/pcre-8.34 \
--with-zlib=/usr/local/src/zlib-1.2.8 \
make
make install
配置nginx支援PHP
在nginx.conf 的 server 欄位中加
user=nobody
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html/$fastcgi_script_name;
include fastcgi_params;
}
啟動 nginx
sudo /usr/local/nginx/nginx
然後查看apache是否加入php模組
未加入的話
vi /etc/httpd/conf.d/php.conf
<IfModule prefork.c>
LoadModule php5_module modules/libphp5.so
</IfModule>
<IfModule worker.c>
LoadModule php5_module modules/libphp5-zts.so
</IfModule>
AddHandler php5-sceipt .php
AddType text.html .php
DirectoryIndex. index.php
然後儲存退出
service httpd restart
安裝 mysql
yum install mysql mysql-server mysql-devel
安裝成功之後
然後編輯防火牆設定 允許 80 及3306連接埠
vi /etc/sysconfig/iptables
-A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT(允許80連接埠通過防火牆)
-A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT(允許3306連接埠通過防火牆)
特別提示:很多網友把這兩條規則添加到防火牆配置的最後一行,導致防火牆啟動失敗,正確的應該是添加到預設的22連接埠這條規則的下面
/etc/init.d/iptables restart
如果上班不行的話開可以使用這種方式
[[email protected] httpd]# /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
[[email protected] httpd]# /etc/rc.d/init.d/iptables save
[[email protected] httpd]# /etc/init.d/iptables restart
給centos加第三個網卡,選擇only 模式,以便虛擬機器之間可以訪問
我們需要做的是進入/etc/sysconfig/network-scripts目錄,修改兩塊網卡的ifcfg檔案即可
a. 修改ifcfg-eth0檔案,配置Host-only網路:
# 第一塊網卡
DEVICE=eth2
# 開機啟動
ONBOOT=yes
# 啟動協議,none/dhcp
BOOTPROTO=none
# 配置DNS
DNS=192.168.56.1
# 設定了DNS指令後是否自動修改/etc/resolv.conf檔案,啟動協議為dhcp時此項預設yes
PEERDNS=yes
# IP地址
IPADDR=192.168.56.110
# 掩碼
NETMASK=255.255.255.0
# 網關
GATEWAY=192.168.56.1
# 網卡裝置的物理地址,預設,與VirtualBox網路設定介面一致
HWADDR=08:00:27:75:AD:13
# 非root使用者不能控制此裝置
USERCTL=no
mysql設定root密碼
use mysql
UPDATE user set password=password(‘password‘) WHERE user = ‘root‘;
flush privileges;
設定mysql遠端連線
UPDATE user set host=‘%‘ WHERE user=‘root‘;
GRANT ALL PRIVILEGES ON *.* TO [email protected]‘%‘ INDENTIFIED BY ‘password‘ WITH GRANT OPTION;
flush privileges;
vm virtualbox 虛擬安裝centos,安裝nginx,mysql,PHP,及網路設定