『壹』 php怎麼用啊我是初學者(環境搭建好了)
後,默認用戶名為root,默認密碼為mysql)
下載時下載編譯好的那種
解壓MySQL,把所有文件復制到/usr/local/mysql
[root@Bleach usr]# groupadd mysql
[root@Bleach usr]# useradd -g mysql mysql
[root@Bleach mysql]# cd mysql
[root@Bleach mysql]# scripts/mysql_install_db --user=mysql
[root@Bleach mysql]# chown -R root .
[root@Bleach mysql]# chown -R mysql data
[root@Bleach mysql]# chgrp -R mysql .
[root@Bleach mysql]# ./bin/mysqld_safe --user=mysql &
[root@Bleach mysql]# ./bin/mysqladmin -u root password mysql
[root@Bleach mysql]# cp ./support-files/mysql.server /etc/init.d/mysql
[root@Bleach mysql]# cd /etc/rc3.d/
[root@Bleach rc3.d]# ln -s /etc/init.d/mysql S85mysql
[root@Bleach rc3.d]# ln -s /etc/init.d/mysql K85mysql
安裝GD庫基本包gd-devel
#rpm -ivh gd-devel-1.8.4-11.i386.rpm
安裝XPM支持
#rpm -ivh xpm-3.4k-2.i386.rpm
安裝libxml2 (記得PHP5.1.1隻支持libxml2-2.6.11以上版本)
#tar zxvf libxml2-2.6.11.tar.gz
#cd libxml2-2.6.11
#./configure
#make
#make install
開始裝GD庫支持
-------------------------------------------------------
先安裝GD基礎rpm包
#rpm –ivh gd-devel.rpm
ZLIB
#./configure
#make
#make install
JPEGSRC
#./configure --enable-shared
#make
#make install-lib
#make install
LIBPNG
#cp scripts/makefile.std Makefile
#make
#make install
最後是GD2.*
#./configure --with-png=/usr/local --with-jpeg=/usr/local --with-freetype=/usr
#make
#make install
----------------------------------------------
上面一切都很順利的話,GD就算成功的安裝上了. 如果有問題,應該是缺少支持包,總之是少什麼就下載什
么來安裝上.
跟著下來,開始安裝APAHCHE2和PHP5
#./configure --prefix=/usr/local/apache2 --enable-mole=so
#make
#make install
PHP5
#./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-gd=/usr/local --enable-trace-vars --with-zlib-dir=/usr/local -with-mysql=/usr/local/mysql --enable-mbstring=all
#make
#make install
復制PHP.INI文件到正確位置
在PHP目錄下運行
#cp php.ini-dist /usr/local/php/lib/php.ini
編輯apache配置文件httpd.conf
#vi /usr/local/apache2/conf/httpd.conf
要改的有如下幾處:
一般都在
#AddType application/x-tar .tgz
下加一行
AddType application/x-httpd-php .php
查找
index.html
在後面加 index.htm index.php 讓它把index.php做為默認頁
再找
#ServerName
把#去掉,後面的IP改成你的IP.
找到
"/usr/local/apache2/htdocs"
把兩個"/usr/local/apache2/htdocs"改為你存放網頁文件的路徑
保存httpd.conf文件.
啟動它
# /usr/local/apache2/bin/apachectl start
如果沒有出錯,寫一個測試頁放到你網頁目錄下, 我的就是上面所說的 /www
phpinfo();
?>
保存.試試在測試器里打IP進去就可以看到PHPINFO頁了
把Apache2加入系統服務
#cd /etc/init.d
#cp /usr/local/apache/bin/apachectl ./httpd
用文本編輯/etc/init.d/httpd
在頭部加入
#chkconfig: 345 79 15
#description: Activates/Deactivates Apache Web Server
# processname: httpd
#chkconfig --add httpd
安裝ZendOptimizer-2.5.3加速PHP
#./install.sh
------------------------
一直想寫篇關於linux下 PHP環境的詳細安裝配置文章, 沒什麼時間
趁現要配幾台伺服器, 藉此機會把自己安裝配置的步驟寫出來, 供初學者參考!
有什麼錯誤的地方請大家指證批評,謝謝! - by Mayer
首先我在 /root 目錄下建了一個 soft 文件夾來保存我要安裝的源碼包
mkdir /root/soft
cd /root/soft
先找到 apache php mysql proftpd 源碼包下載的URL地址
請瀏覽
等官方網站
使用wget 直接下載
wget
...
wget
...
wget
...
第一步:安裝apache
註:當前目錄為/root/soft ,
目錄下有
httpd-2.0.55.tar.gz, php-5.0.5.tar.gz
等二進制源碼包
#號代表為root 根許可權,#後是輸入的一條命令
執行下列命令
解壓源碼包
# tar -zxf httpd-2.0.55.tar.gz
進入安裝目錄
# cd httpd-2.0.55
配置apache安裝信息
# ./configure --prefix=/usr/local/apache --enable-moles=so --enable-rewrite
執行make安裝
# make; make install
安裝完後
# vi /usr/local/apache/conf/httpd.conf
找到 prefork.c 下的
MaxClients 150
改為
ServerLimit 2000
MaxClients 1000
apache默認工作在prefork.c模式下,並發進程為150,超過後就無法訪問,150是遠遠不夠的,所以這里按自己網站的需求改, 如1000
由於apache默認最大並發進程是 256 所以要先設置 ServerLimit 2000 將伺服器可設的最大並發數設為2000, 然後再設置最大並發數 MaxClients 1000
找到 #ServerName
在其下設置 ServerName 如下
ServerName
基中
為你網站名,也可用IP代替
找到 DocumentRoot "/usr/local/apache/htdocs"
設置你的 WEB 伺服器的根目錄 如
DocumentRoot "/myweb"
找到 DirectoryIndex index.html index.html.var 改為
DirectoryIndex index.html index.php index.htm
找到 ForceLanguagePriority Prefer Fallback 在其下加上
AddDefaultCharset gb2312
改完後保存(vi 的用法請查 Linux vi 命令)
用下面命令啟動WEB伺服器
# /usr/local/apache/bin/apachectl start
查看自己的站點是否正常
也可用IP
用 # /usr/local/apache/bin/apachectl stop 可停止服務
安裝MYSQL
# tar -zxf mysql-standard-5.0.15-linux-i686.tar.gz
# cp -r mysql-standard-5.0.15-linux-i686 /usr/local/mysql
# vi /usr/local/mysql/support-files/my-medium.cnf
在後面加上
max_connections = 1000
log-slow-queries
long_query_time = 5
注 max_connections 為允許的最大連接數
log-slow-queries 打開低速查詢日誌
long_query_time 低速查詢的秒數(運行一句sql達到此時間記錄在日誌里)
然後COPY 它為 /etc/my.cnf 文件
# cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf
添加mysql用戶及用戶組
# groupadd mysql
# useradd -g mysql mysql
修改mysql目錄許可權
# chown -R root /usr/local/mysql
# chgrp -R mysql /usr/local/mysql
# chown -R mysql /usr/local/mysql/data
生成mysql系統資料庫
# /usr/local/mysql/scripts/mysql_install_db --user=mysql&
啟動mysql服務
# /usr/local/mysql/bin/mysqld_safe --user=mysql&
如出現 Starting mysqld daemon with databases from /usr/local/mysql/data
代表正常啟動mysql服務了, 按Ctrl + C 跳出
修改 mysql 的 root 密碼
# /usr/local/mysql/bin/mysqladmin -u root -p password 123456
回車出現 Enter password: 最開始密碼默認為空 繼續回車即可
123456 即為你的新密碼
安裝GD庫(讓PHP支持GIF,PNG,JPEG)
首先下載 jpeg6,libpng,freetype 並安裝模塊
wget
...
wget
...
wget
...
wget
...
安裝 jpeg6
建立目錄
# mkdir /usr/local/jpeg6
# mkdir /usr/local/jpeg6/bin
# mkdir /usr/local/jpeg6/lib
# mkdir /usr/local/jpeg6/include
# mkdir /usr/local/jpeg6/man
# mkdir /usr/local/jpeg6/man/man1
# cd /root/soft
# tar -zxf jpegsrc.v6b.tar.gz
# cd jpeg-6b
# ./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static
# make; make install
安裝libpng
# cd /root/soft
# tar -zxf libpng-1.2.8.tar.gz
# cd libpng-1.2.8
# cp scripts/makefile.std makefile
# make; make install
安裝 freetype
# cd /root/soft
# tar -zxf freetype-2.1.10.tar.gz
# cd freetype-2.1.10
# ./configure --prefix=/usr/local/freetype
# make;make install
安裝最新的GD庫
# cd /root/soft
# tar -zxf gd-2.0.33.tar.gz
# cd gd-2.0.33
# ./configure --prefix=/usr/local/gd2 --with-jpeg=/usr/local/jpeg6/ --with-png --with-zlib --with-freetype=/usr/local/freetype/
# make; make install
安裝最新的Curl庫
# cd /root/soft
# wget
...
# tar -zxf curl-7.15.0.tar.gz
# ./configure --prefix=/usr/local/curl
# make; make install
安裝PHP
由於php5需libxml2的支持, 所以先下載並安裝libxml2
# cd /root/soft
# wget
...
# tar -zxf libxml2-2.6.19.tar.gz
# cd libxml2-2.6.19
# ./configure --prefix=/usr/local/libxml2
# make; make install
安裝 libxslt
# cd /root/soft
# wget
...
# tar -zxf libxslt-1.1.15.tar.gz
# cd libxslt-1.1.15
# ./configure --prefix=/usr/local/libxslt --with-libxml-prefix=/usr/local/libxml2
# make; make install
# tar -zxf php-5.0.5.tar.gz
# cd php-5.05
# ./configure --prefix=/usr/local/php
--with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql/
--with-curl=/usr/local/curl --enable-ftp
--with-libxml-dir=/usr/local/libxml2 --with-expat-dir=/usr/lib
--enable-soap --with-xsl=/usr/local/libxslt --enable-xslt
--with-gd=/usr/local/gd2/ --with-jpeg-dir=/usr/local/jpeg6/
--with-zlib-dir=/usr/lib --with-png
--with-freetype-dir=/usr/local/freetype
# make
# make install
其中./configure 後的
--prefix=/usr/local/php
--with-apxs2=/usr/local/apache/bin/apxs
--with-mysql=/usr/local/mysql/
--with-libxml-dir=/usr/local/libxml2
是必要的選項
--with-gd=/usr/local/gd2/
--with-jpeg-dir=/usr/local/jpeg6/
--with-png
--with-zlib-dir=/usr/lib
--with-freetype-dir=/usr/local/freetype
這是讓PHP支持GD庫的配置選項
--with-curl=/usr/local/curl 支持CURL庫
--enable-ftp 打開FTP庫函數支持
--enable-soap --with-xsl=/usr/local/libxslt --enable-xslt
讓PHP支持SOAP, 上面這些一般用得少, 可以去掉
配置 httpd.conf 讓apache支持PHP
# vi /usr/local/apache/conf/httpd.conf
找到 AddType application/x-gzip .gz .tgz 在其下添加如下內容
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
重啟apache
# /usr/local/apache/bin/apachectl restart
在你Web目錄里建一內容為 PHP文件, 輸入URL地址查看PHP配置是否正確
安裝 phpmyadmin
下載
# cd /root/soft
# wget
...
# tar -zxf phpMyAdmin-2.6.4-pl3.tar.gz
# vi phpMyAdmin-2.6.4-pl3/config.inc.php
找到 $cfg['Servers'][$i]['auth_type'] = 'config'; 將config 改為 http
保存後
mv phpMyAdmin-2.6.4-pl3 /你的phpmyadmin目錄
關於mysql4.1-4移植4.0舊資料庫中文亂碼問題的解決方法
進入phpmyadmin管理
建立你資料庫名並選上 gb2312_bin 的編碼
然後導入你先前備份好的SQL文件, 導入時選擇 文件的字元集:gb2312
完成後就OK了
注: PHP連接mysql4.1和5.0 資料庫後需指定字元集 需執行如 mysql_query("SET NAMES 'gb2312' ");
否則會產生中文亂碼問題!
『貳』 php curl get 下載遠程zip文件保存在本地例子
<?php
if($_POST['submit']){
$url=$_POST['url']; //取得提交過來的地址http://hu60.cn/wap/0wap/addown.php/fetion_sms.zip
$url=urldecode($url);
$fname=basename("$url"); //返迴路徑中的文件名部分 fetion_sms.zip
$str_name=pathinfo($fname); //以數組的形式返迴文件路徑的信息
$extname=strtolower($str_name['extension']); //把擴展名轉換成小寫
//$uptypes=explode(",",$forum_upload); //取得可以上傳的文件格式
//$size=getFileSize($url);
$time=date("Ymd",time());
$upload_dir="./upload/";//上傳的路徑
$file_name=$time.rand(1000,9999).'.'.$fname;
$dir=$upload_dir.$file_name;//創建上傳目錄
//判斷目錄是否存在 不存在則創建
if(!file_exists($upload_dir)){
mkdir($upload_dir,0777,true);
}
$contents=curl_download($url,$dir);
if($contents){
echo "下載成功";
}else{
echo "下載失敗";
}
}
function curl_download($url, $dir) {
$ch = curl_init($url);
$fp = fopen($dir, "wb");
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
$res=curl_exec($ch);
curl_close($ch);
fclose($fp);
return $res;
}
?>
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>遠程下載文件</title>
<form name="upform" method="post" action="" enctype='multipart/form-data'>
<input name='url' type='text' size='20'/>
<input type='submit' name='submit' value='遠程下載'/>
</form>
</body>
</html>
『叄』 PHP怎麼接收來自wget用
經過試驗,發現可以使用php://input讀取,但只能讀取8192個位元組,再大就出錯哦, 這個是在哪裡設置的嗎? 有什麼辦法讀取更大的位元組數嗎?
我的php.ini已經設置了post_max_size 32M
upload_file 64M
而且phpmyadmin上傳沒有任何問題, 就是wget --post-file 有問題, 不停的顯示connected, 然後retry
『肆』 如何利用php執行nodejs文件
一,安裝DNode,
1, for nodejs, 執行
$ sudo npm install dnode
2, for php, 利用composer來安裝DNode php
執行下列語句下載composer
$ wget http://getcomposer.org/composer.phar
創建一個文件composer.json,然後填入如下語句,
{
"require": {
"dnode/dnode": "0.2.0"
}
}
執行如下語句安裝,
$ sudo php composer.phar install
二,利用nodejs創建簡單server程序, server.js
var dnode = require('dnode');
var server = dnode({
zing: function (n, cb) { cb(n * 100) }
});
server.listen(7070);
三,利用php創建客戶端程序client.php, 其中需要引用剛才安裝的dnode文件夾裡面的文件autoload.php
<?php
// Connect to DNode server running in port 7070 and call
// Zing with argument 33
require 'lib/vendor/autoload.php';
// This is the class we're exposing to DNode
class Temp
{
// Compute the client's temperature and stuff that value into the callback
public function temperature($cb)
{
}
}
$loop = new React\EventLoop\StreamSelectLoop();
$dnode = new DNode\DNode($loop, new Temp());
$dnode->connect(7070, function($remote, $connection) {
// Remote is a proxy object that provides us all methods
// from the server
$remote->zing(33, function($n) use ($connection) {
echo "n = {$n}\n";
// Once we have the result we can close the connection
$connection->end();
});
});
$loop->run();
?>
『伍』 網站下放了個php頁面,怎麼防止用戶通過wget獲取該php的源碼呢
可以wget自己的php代碼,可以wget不到別人的php代碼呢:( ------解決方案--------------------------------------------------------wget自己的 ------解決方案--------------------------------------------------------探討引用: 可以wget自己的php代碼,可以wget不到別人的php代碼呢:( ------解決方案--------------------------------------------------------表示沒接觸過wget ------解決方案--------------------------------------------------------探討引用: 如果你能夠wget 到自己的代碼 那隻能說你的環境沒搭建好,或者你的代碼就沒寫好. 可以wget自己的php代碼,可以wget不到別人的php代碼呢:( ------解決方案--------------------------------------------------------探討引用:引用:如果你能夠wget 到自己的代碼 那隻能說你的環境沒搭建好,或者你的代碼就沒寫好. 可以wget自己的php代碼,可以wget不到別人的php代碼呢:( 估計除非是伺服器壞了,否則不可能 ------解決方案--------------------------------------------------------wget 一個liunx命令 沒有許可權根本獲取不到,。。。。 ------解決方案--------------------------------------------------------如果你的環境配置的OK那就不會出現這個情況 不論是瀏覽器還是wget 對php路徑的請求只要正確落在php解析器上 返回的結果就只能是HTML或者你希望的結果 而不是源碼 ------解決方案--------------------------------------------------------探討引用:
『陸』 伺服器上怎麼安裝php程序
你好,如果你的伺服器是Windows系統,那麼你需要遠程到你的伺服器,進行啟動IIS(asp環境),如果你需要php環境,你可以從xp.cn(小皮)或者bt.cn(寶塔)安裝面板
如果你的伺服器是Linux,建議使用寶塔
打開終端,不同Linux系統的輸入指令不同:
Centos安裝腳本
終端輸入:yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
Ubuntu/Deepin安裝腳本
終端輸入:wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh
Debian安裝腳本
終端輸入:wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh
Fedora安裝腳本
終端輸入wget -O install.sh http://download.bt.cn/install/install_6.0.sh && bash install.sh
輸入後進行安裝就可以了
『柒』 如何運行php crontab腳本
一、在Crontab中使用PHP執行腳本
#!/usr/local/bin/php -q 文件名
<?
$file = '/htdocs/www/b100/egspace/Bin/test/'.date('H').'-'.date('i').'-'.date('s').'.txt';
file_put_contents($file,date('Y-m-d'));
?>
就像在Crontab中調用普通的shell腳本一樣(具體Crontab用法),使用PHP程序來調用PHP腳本。
每一小時執行myscript.php如下:
# crontab -e
00 * * * * /usr/local/bin/php /home/john/myscript.php
/usr/local/bin/php為PHP程序的路徑。
二、在Crontab中使用URL執行腳本
如果你的PHP腳本可以通過URL觸發,你可以使用lynx或curl或wget來配置你的Crontab。
下面的例子是使用Lynx文本瀏覽器訪問URL來每小時執行PHP腳本。Lynx文本瀏覽器默認使用對話方式打開URL。但是,像下面的,我們在lynx命令行中使用-mp選項來把URL的輸出轉換來標准輸出。
00 * * * * lynx -mp IP/myscript.php
下面的例子是使用CURL訪問URL來每5分執行PHP腳本。Curl默認在標准輸出顯示輸出。使用」curl -o」選項,你也可以把腳本的輸出轉儲到臨時文件。
*/5 * * * * /usr/bin/curl -o temp.txt IP/myscript.php
下面的例子是使用WGET訪問URL來每10分執行PHP腳本。-q選項表示安靜模式。」-O temp.txt」表示輸出會發送到臨時文件。如果還有不明白的話,你可以在後盾人看看視頻找找答案,有空多看看時間長了,慢慢就明白了,希望能幫到你,給個採納吧謝謝♡(*´・ω・)(・ω・`*)♡