Linux知识九:LAMP、phpMyAdmin的安装、配置、整合与使用详解

pupur 2010-11-12

Linux系统中程序的安装和使用切记:

1、查看相关权限是否允许。

2、查看版本是否与附属软件版本对应。

3、查看服务目录与操作目录是否对应。
apache知识:netstat -a -o:查看监听的端口程序和相应的端口及程序的PID。

netstat-lnp|grep端口号:查看使用端口号程序相关信息、

#ps端口号:查看端口号相关信息、kill-9端口:杀掉端口号。

/etc/httpd/conf:httpd文件一般所有位置。

<Directory"D:/Apa/blabla">OptionsIndexesFollowSymLinksAllowOverrideNone</Directory>:保留Indexes时表示没有主显示页面时页面将以列表的方式显示。

./configure--prefix=/usr/local/apache/...-enable-dav-enable-so-enable-maintainer-mode-enable-rewrite:安装编辑时要加上应有的后缀名才能与其它程序(SVN)整合使用。

当访问主目录显示的页面内容为:Apache2TestPage[poweredbyCentOS]……时:修改/etc/httpd/conf.d/welcome.conf文件,注释ErrorDocument403/error/noindex.html等相关内容。

netstat-utl:查看apache是否启动。

netstat-tuln|grep':80':查看80端口状态。

权限的设定范例:

<Directory"/home/test/public_html/cgi">

OptionsExecCGI

SetHandlercgi-script

<LimitGET>

orderallow,deny

denyfrom192.168.100

allowfromall

</Limit>

<LimitPOST>

orderallow,deny

allowfrom192.168.1.50

denyfromall

</Limit>

orderallow,deny

denyfrom192.168.1.100

allowfromall

</Directory>

虚拟主机设定范例:

#在这个档案的最下方加入底下这些字眼!

#设定你的虚拟主机判定的依据!这里是*亦即是

NameVirtualHost*

#所有连上这部机器的名称都会被使用来当作虚拟主机的设定之用!

<VirtualHost*>

ServerNamemdk90.vbird.net

DocumentRoot/home/mdk90

</VirtualHost>

<VirtualHost*>

ServerNamewww.mdk90.vbird.net

DocumentRoot/home/www.mdk90

CustomLog/var/log/httpd/www.access_logcombined#特别将登录档额外分离出来

</VirtualHost>

<VirtualHost*>

ServerNamephorum.mdk90.vbird.net

DocumentRoot/home/phorum.mdk90

</VirtualHost>

ab:Apache的效能测试,/usr/sbin/ab[-dSk][-cnumber][-nnumber]网页.php,参数说明:

-d:不要显示savedtable的百分比资料;通常不要那个数据,所以会加-d

-k:还记得上面的KeepAlive吧!加入-k才会以这样的功能测试;

-S:不显示长讯息,仅显示类似min/avg/max的简短易懂讯息!

-c:同时有多少个『同时联机』的设定(可想成同时联机的IP)

-n:同一个联机建立几个要求通道!(可想成同一个IP要求的几条联机)。

403:ForbiddenYoudon'thavepermissiontoaccess/onthisserver问题解决方法:

1、查看httpd的真实作用位置打开后进行配,位置:/etc/httpd/conf/httpd.conf。

2、Directory<”\www\”>:中括号里的内容就是你更改的新值、conf配置文件:#OptionsIndexesFollowSymLinks,AllowOverrideNon,Orderallow,deny,Allowfromall。

 3、你没有为该目录或者该文件设置guest组权限,chmod -R 755 /www。
mysql知识:chown –R 账户:密码 /usr/local/mysql:修改文件夹权限所属用户。

ps-auxwww|grepmysql:检查mysql服务是否启动。

servicemysqldstart:开启mysql服务。

mysql-uroot-p-S/tmp/mysql.sock:用-S参数在运行时指定正确的socket。

rpm-qa|grepmysql|mysql--version:查看mysql安装的版本。

yuminstallmysql-serverphp-mysql:安装mysql服务。

mysql-uroot-p123456:进入mysql安装目录114.92.120.11中的bin中进行mysql的登录。

#/etc/init.d/mysqlstop、#mysqld_safe--user=mysql--skip-grant-tables--skip-networking&、#mysql-urootmysql、mysql>UPDATEuserSETPassword=PASSWORD(’newpassword’)whereUSER=’root’、mysql>FLUSHPRIVILEGES:修改数据库密码。

mysqladmin-uroot-p密码shutdown:停止mysql服务。

long_query_time=2;log-slow-queries=/usr/var/slowquery.log:设置SQL语句查询慢时,输出SQL语句到指定文件。

mysqldump-uroot-p密码数据库名>backup.sql:备份数据库到指定目录。

mysql-uroot-p数据库名<backup.sql:还原数据库。

系统出现:ERROR2002(HY000):Can'tconnecttolocalMySQLserverthroughsocket'/tmp/mysql.sock'(2)错误时:使用servicemysqldrestart重启即可。

vi /etc/rc.d/rc.local:# 将这一行加入这个档案最后(cd /usr/local/mysql; /usr/local/mysql/bin/safe_mysqld --user=mysql &)# 这样一来,每次开机就可以自动的启动 MySQL 啰!
mysql与phpMyAdmin整合知识:

切记mysql与php整合时要使用yuminstallphp-mysql安装php-mysql。

复制library/config.default.php到../config.inc.php,文件权限全为755,修改其中内容:

$cfg['PmaAbsoluteUri']='http://localhost/phpMyAdmin/';

$cfg['Servers'][$i]['host']='localhost';#将host值改为localhost或者127.0.0.1或者是真实IP,如我写的192.168.6.166

$cfg['Servers'][$i]['socket']='/tmp/mysql.sock';

$cfg['Servers'][$i]['user']='root';

$cfg['Servers'][$i]['password']='123456';

错误:#2002-服务器没有响应(orthelocalMySQLserver'ssocketisnotcorrectlyconfigured)解决方法:

1、查看my.cnf文件中的bind-address=127.0.0.1与config.inc.php参数$cfg['Servers'][$i]['host']='localhost';中localhost改为127.0.0.1。

2、查看phpinfo.php输入参数中mysql.sock在php配置的文件所在位置对应my.cnf文件中的socket=/tmp/mysql.sock属性是否一致,再重启。

错误:#1045-Accessdeniedforuser'root'@'localhost'(usingpassword:NO)解决方法:

1、第一次使用phpMyAdmin可能不要设置用户名与密码。

2、如果要设置,设置注意以下地方:

$cfg['PmaAbsoluteUri']='http://localhost/phpmyadmin/';

$cfg['PmaNoRelation_DisableWarning']=FALSE;

$cfg['blowfish_secret']='husumiao';

$i=1;

$i++;

$cfg['Servers'][$i]['host']='localhost';//MySQLhostnameorIPaddress

$cfg['Servers'][$i]['port']='';//MySQLport-leaveblankfordefaultport

$cfg['Servers'][$i]['socket']='';//Pathtothesocket-leaveblankfordefaultsocket

$cfg['Servers'][$i]['connect_type']='tcp';//HowtoconnecttoMySQLserver('tcp'or'socket')

$cfg['Servers'][$i]['extension']='mysql';//ThephpMySQLextensiontouse('mysql'or'mysqli')

$cfg['Servers'][$i]['compress']=FALSE;//UsecompressedprotocolfortheMySQLconnection

$cfg['Servers'][$i]['auth_type']='cookie';//Authenticationmethod(config,httporcookiebased)?

$cfg['Servers'][$i]['user']='root';//MySQLuser

错误:没有发现 PHP的扩展设置mbstring,而当前系统好像在使用宽字符集。没有 mbstring 扩展的 phpMyAdmin不能正确识别字符串,可能产生不可意料的结果解决方法: yum install php-mbstring安装。
php知识:

./configure--prefix=/usr/local/php5--with-apxs2=/usr/local/apache/bin/apxs--with-config-file-path=/usr/local/lib--enable-track-vars--with-xml--enable-pdo--with-mysql=/user/mysql--with-pdo-mysql=/usr/bin/mysql--with-mysql-sock=/tmp/mysql.sock这里--enable-pdo是指使用PDO连接MySQL,--with-pdo-mysql=/usr/bin/mysql指定mysql的路径。

--with-mysql-sock=/tmp/mysql.sock指定mysql.sock的路径。

找不到路径请用find/-namexxxx来查找。

修改httpd.conf:找到AddTypeapplication/x-gzip.gz.tgz在其下添加如下内容:AddTypeapplication/x-httpd-php.php、AddTypeapplication/x-httpd-php-source.phps,安装完后需配置的文件内容。

修改httpd.conf:去掉LoadModulexxxxxmoudule/xxxxx.so前面的#来开启所需要的.so文件。

apache与php整合:/usr/share/apache/modules/或/etc/httpd/conf/modules目录下是否存在libphp5.so文件(必须存在),编辑httpd.conf添加:LoadModulephp5_modulemodules/libphp5.so。之后添加:AddTypeapplication/x-httpd-php.php.php3、AddTypeapplication/x-httpd-php-source.phps。

相关推荐