大家帮帮我吧!一个月了,实在是搞不定啊~~
chixx
|
1#
发表于 2007-06-26 16:59
|
chixx
|
1#
chixx 发表于 2007-06-26 16:59
大家帮帮我吧!一个月了,实在是搞不定啊~~
单位的 SUN工作站(SUN BLADE 2000)
新装SOLARIS 10 操作系统 配置SAMBA服务,OK 配置FTP服务,OK 配置APACHE2,OK 配置MYSQL,OK 可是加载PHP时,遇到问题…… 在网上查了很多资料,也按照响应的做法设置了,可就是不行! 现象: 运行 http://localhost/phpinfo.php 显示代码: Warning: Unknown: failed to open stream: Permission denied in Unknown on line 0 Fatal error: Unknown: Failed opening required '/var/apache2/htdocs/phpinfo.php' (include_path='.:/usr/local/lib/php') in Unknown on line 0 我的 phpinfo.php 内容是: <?phpinfo();?> (为保护本论坛,改用全角符号表示) 楼下是我安装时参考的资料内容,请大家帮我分析一下原因吧!我已经快崩溃啦!!!!! |
chixx
|
2#
chixx 发表于 2007-06-26 17:00
前言:
本文的阅读对象是为已经有 Apache、MySQL 和 php 基本的操作经验的人员编写。主要讲求正确和快速安装。 致于,Apache、MySQL 和 php详细设定、修改方面和软件测试,在这里不会详谈。 设定、测试与启动 Apache2 Solaris 10 已经内置安装了 Apache 2.xx,只需要做一些设定便可以使用。 1. 首先用 Root 了登入文字模式系统 ( Console Mode ) 2. 复制 /etc/apache2/httpd.conf-example 到 /etc/apache2/httpd.conf # cp /etc/apache2/httpd.conf-example /etc/apache2/httpd.conf 3. 编辑 /etc/apache2/httpd.conf · 设定你所需要的 ServerName 服务器名称,预设为 127.0.0.1 · 在 ServerAdmin 设定正确的 E-mail 地址 4. 使用以下指令启动 Apache # svcadm enable apache2 然后,试一试从新启动 Solaris ,看一看 Apache 能不自动启动。基本网页文件位置为 /var/apache2/htdocs 。 设定、测试与启动 MySQL Solaris 10 已经内置安装了 MySQL。安装者必须要用 Root 身份登入系统。以下的安装步骤可以在 /usr/sfw/src/mysql/Docs 目录中找到。 1. 用 root 身份 login 到 Console mode 中,并且进行数据库的事前准备。 # /usr/sfw/bin/mysql_install_db Preparing db table Preparing host table Preparing user table Preparing func table Preparing tables_priv table Preparing columns_priv table Installing all prepared tables 060118 21:24:03 /usr/sfw/sbin/mysqld: Shutdown Complete <snip...> 2. 建立 mysql user 和 group ,并且更改数据目录的群组。 # groupadd mysql # useradd -g mysql mysql # chgrp -R mysql /var/mysql # chmod -R 770 /var/mysql # installf SUNWmysqlr /var/mysql d 770 root mysql 3. 预设 MySQL 设定文件位置为 /var/mysql/my.cnf 4. 复制 MySQL 设定文件到预设位置 # cp /usr/sfw/share/mysql/my-medium.cnf /var/mysql/my.cnf 5. 手动启动 mysql # /usr/sfw/sbin/mysqld_safe --user=mysql & 6. 设定 MySQL 的 root user密码 ( 下文中的 new-password 为你想要的密码,你可以自行更改为你喜欢的密码。因为安全理由,切密不要使用 new-password 为你的密码,一定要更改 ) # cd /usr/sfw/bin # ./mysqladmin -u root password 'new-password' # ./mysqladmin -u root -h `hostname` password 'new-password' 7. 测试 MySQL Server # ./mysqlshow -p Enter password: new-password +-----------+ | Databases | +-----------+ | mysql | | test | +-----------+ # ./mysql -u root -p Enter password: new-password Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 to server version: 4.0.20-standard Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> show databases; +-----------+ | Databases | +-----------+ | mysql | | test | +-----------+ 2 rows in set (0.00 sec) mysql> quit; Bye 8. 设定 Solaris Server 在启动和关机时,自动运行和停止MySQL Server。 # ln /etc/sfw/mysql/mysql.server /etc/rc3.d/S99mysql # ln /etc/sfw/mysql/mysql.server /etc/rc0.d/K00mysql # ln /etc/sfw/mysql/mysql.server /etc/rc1.d/K00mysql # ln /etc/sfw/mysql/mysql.server /etc/rc2.d/K00mysql # ln /etc/sfw/mysql/mysql.server /etc/rcS.d/K00mysql 9. 然后,试一试从新启动 Solaris ,看一看 MySQL 能不自动启动。预设 MySQL 设定文件位置为 /var/mysql/my.cnf 。 下载与设定 PHP 1. 用 root 身份 login 到 Console mode 中。 2. 检查清楚 PATH 是否包含 /opt/csw/bin 和 /usr/sfw/bin,如果没有,请自行加上。(/etc/profile) PATH=..... 修改文件/etc/profile,把上面的输出行追加到文件,保存后运行 #bash ; # source /etc/profile 使环境变量的修改生效。 # bash # export PS1='\u:\w#' root:/# echo $PATH /opt/csw/bin:/usr/sfw/bin:/usr/sbin:/usr/bin:/usr/openwin/bin:/usr/dt/bin:/usr/ccs/bin 3. 安装 pkg-get root:/# mkdir /usr/local/src root:/# cd /usr/local/src root:/usr/local/src# wget http://www.blastwave.org/pkg_get.pkg root:/usr/local/src# cp pkg_get.pkg .. root:/usr/local/src# pkgadd -d pkg_get.pkg all You may use and copy this software without charge, as you see fit. The software is copyright (C) Philip Brown, Nov 2002 Dont forget to update /opt/csw/etc/pkg-get.conf with your nearest archive site. The selected base directory </opt/csw> must exist before installation is attempted. Do you want this directory created now [y,n,?,q] y Using </opt/csw> as the package base directory. ## Processing package information. ## Processing system information. 2 package pathnames are already properly installed. ## Verifying disk space requirements. ## Checking for conflicts with packages already installed. ## Checking for setuid/setgid programs. This package contains scripts which will be executed with super-user permission during the process of installing this package. Do you want to continue with the installation of <CSWpkgget> [y,n,?] y Installing pkg_get - CSW version of automated package download tool as <CSWpkgget> ## Installing part 1 of 1. /opt/csw/bin/pkg-get /opt/csw/etc/pkg-get.conf.csw /opt/csw/share/man/man1m/pkg-get.1m /var/pkg-get/admin-fullauto [ verifying class <none> ] ## Executing postinstall script. Installing /opt/csw/etc/pkg-get.conf.csw to pkg-get.conf Installation of <CSWpkgget> was successful. root:/usr/local/src# cd / root:/# 4. 检查是否安装好 pkg-get 和 wget的位置 root:/# which pkg-get /opt/csw/bin/pkg-get root:/# which wget /usr/sfw/bin/wget 5. 安装完整的 wget 软件 root:/# pkg-get -i wget 注意:将会出现大量文字,不用担心,只要完成安装就可以。 6. 移除旧版本的 wget root:/# cd /usr/sfw/bin root:/usr/sfw/bin# mv wget wget.orig root:/usr/sfw/bin# exit # bash # export PS1='\u:\w#' root:/# 7. 检查wget新的位置是否正确 root:/# which wget /opt/csw/bin/wget 8. 检查 GNU Autoconf 的版本是否为 2.59 或以上 root:/# which autoconf && autoconf --version | head -2 /opt/csw/bin/autoconf autoconf (GNU Autoconf) 2.59 Written by David J. MacKenzie and Akim Demaille. 如果不是为 2.59 或以上版本或根本没有这个程序,执行以下指令: root:/# pkg-get -i autoconf 9. 检查 GNU automake 的版本是否为 1.8.3 或以上 root:/# which automake && automake --version | head -2 /opt/csw/bin/automake automake (GNU automake) 1.8.3 Written by Tom Tromey <tromey@redhat.com>. 如果不是为1.8.3 或以上版本或根本没有这个程序,执行以下指令: root:/# pkg-get -i automake 10. 检查 GNU sed version 的版本是否为 4.1.4 或以上 root:/# which gsed && gsed --version | head -2 /opt/csw/bin/gsed GNU sed version 4.1.4 Copyright (C) 2003 Free Software Foundation, Inc. 如果不是为 4.1.4 或以上版本或根本没有这个程序,执行以下指令: root:/# pkg-get -i gsed 11. 检查 gcc 的版本是否为 3.4.3 或以上 root:/# which gcc && gcc --version | head -2 /usr/sfw/bin/gcc gcc (GCC) 3.4.3 (csl-sol210-3_4-branch+sol_rpath) Copyright (C) 2004 Free Software Foundation, Inc. 如果不是为 3.4.3 或以上版本或根本没有这个程序,执行以下指令: root:/# pkg-get -i gcc 12. 检查 GNU Make 的版本是否为 3.80 或以上 root:/# which gmake && gmake --version | head -2 /usr/sfw/bin/gmake GNU Make 3.80 Copyright (C) 2002 Free Software Foundation, Inc. 如果不是为 3.80 或以上版本或根本没有这个程序,执行以下指令: root:/# pkg-get -i gmake 13. 检查 flex version 的版本是否为 2.5.4 或以上 root:/# which flex && flex --version | head -2 /usr/sfw/bin/flex flex version 2.5.4 如果不是为 2.5.4 或以上版本或根本没有这个程序,执行以下指令: root:/# pkg-get -i flex 14. 检查 GNU Bison 的版本是否为 1.875 或以上 root:/# which bison && bison --version | head -2 /usr/sfw/bin/bison bison (GNU Bison) 1.875 Written by Robert Corbett and Richard Stallman. 如果不是为 1.875 或以上版本或根本没有这个程序,执行以下指令: root:/# pkg-get -i bison 15. 检查 GNU M4 的版本是否为 1.4.3 或以上 root:/# which gm4 && gm4 --version | head -2 /opt/csw/bin/gm4 GNU M4 1.4.3 Written by Rene' Seindal. 如果不是为 1.4.3 或以上版本或根本没有这个程序,执行以下指令: root:/# pkg-get -i gm4 16. 检查 Perl 的版本是否为 5.8 或以上 root:/# which perl && perl -v | head -2 /usr/bin/perl This is perl, v5.8.4 built for i86pc-solaris-64int 如果不是为 5.8 或以上版本或根本没有这个程序,执行以下指令: root:/# pkg-get -i perl 17. 检查 GNU zip 的版本是否为 1.3.3 或以上 root:/# which gunzip && gunzip -V | head -2 /usr/bin/gunzip gunzip 1.3.3-patch.1 (2002-03-0 如果不是为 1.3.3 或以上版本或根本没有这个程序,执行以下指令: root:/# pkg-get -i gunzip 18. 检查 GNU tar 的版本是否为 1.14 或以上 root:/# which gtar && gtar --version | head -2 /usr/sfw/bin/gtar tar (GNU tar) 1.14 Copyright (C) 2004 Free Software Foundation, Inc. 如果不是为 1.14 或以上版本或根本没有这个程序,执行以下指令: root:/# pkg-get -i gtar 19. 安装 libxml2 版本 2.6.23 在安装 libxml2 之前有一点要特别注意,这程序不可以安装在需要 mount 的 Driver 上。 因为,在启动 Solaris 时,当执行自动启动 Apache/php 时需要直接使用 libxml2,但这个时候,mount Driver 是还未启动的。 很多时候,都有习惯把 /usr/local 放在 mount driver 上。如果你也有这个习惯,请特别注意,不要把 libxml2 安装在 /usr/local 上。 否则,当 Solaris 从启后, Apache/php 便不能自动启动,只能人手启动了。 在正常情况下,安装 libxml2,安装程序的预设安装路径为 /usr/local, 这个安装路径是可以更改的。 以下例子,将会把 libxml2 安装在 /usr/slocal 上。 root:/# cd /usr/local/src root:/usr/local/src# wget ftp://xmlsoft.org/libxml2/libxml2-2.6.23.tar.gz ... root:/usr/local/src# mkdir /usr/slocal root:/usr/local/src# cp libxml2-2.6.23.tar.gz /usr/slocal/ root:/usr/local/src# cd /usr/slocal root:/usr/slocal# gunzip -cd libxml2-2.6.23.tar.gz | gtar xvpf - ... root:/usr/slocal# cd libxml2-2.6.23 root:/usr/slocal/libxml2-2.6.23# ./configure --prefix=/usr/slocal ... root:/usr/slocal/libxml2-2.6.23# gmake ... root:/usr/slocal/libxml2-2.6.23# gmake install 20. 如果系统中没有这个档案 /etc/apache2/httpd.conf root:/# cp /etc/apache2/httpd.conf-example /etc/apache2/httpd.conf编辑 /etc/apache2/httpd.conf § 设定你所需要的 ServerName 服务器名称,预设为 127.0.0.1 § 在 ServerAdmin 设定正确的 E-mail 地址 21. 下载最新版本的 PHP ( http://www.php.net/downloads.php ) root:/# cd /usr/local/src root:/usr/local/src# wget http://hk.php.net/get/php-5.1.2.tar.gz/from/this/mirror ... root:/usr/local/src# cp php-5.1.2.tar.gz .. root:/usr/local/src# cd .. root:/usr/local# gunzip -cd php-5.1.2.tar.gz | gtar xvpf - ... root:/usr/local# cd php-5.1.2 root:/usr/local/php-5.1.2# ./configure --with-apxs2=/usr/apache2/bin/apxs \ --with-mysql=/usr/sfw/ --enable-dbase --with-libxml-dir=/usr/slocal \ --with-config-file-path=/etc/apache2 --with-gd-dir=/opt/sfw/bin \ --with-jpeg-dir=/usr/lib --with-png-dir=/usr/lib --with-zlib --enable-mbstring ... root:/usr/local/php-5.1.2# gmake ... root:/usr/local/php-5.1.2# gmake install Installing PHP SAPI module: .................... root:/usr/local/php-5.1.2# cp php.ini-dist /etc/apache2/php.ini root:/usr/local/php-5.1.2# 22. 进入 apache2 设定文件目录 root:/usr/local/php-5.1.2# cd /etc/apache2 root:/etc/apache2# 23. 如果要设定其它 php 的选项,请编辑 /etc/apache2/php.ini 24. 编辑 httpd.conf 文件 安装完 php 后,php 会在 /etc/apache2/httpd.conf 内加入以下句子,请检查清楚,这句子是否存在: LoadModule php5_module libexec/libphp5.so 请在 /etc/apache2/httpd.conf 的最后一行手动加入以下句子: AddType application/x-httpd-php .php 25. 启动 Apache2 和 测试 # svcadm enable apache2 # svcs | grep -i apache2 online 18:07:10 svc:/network/http:apache2 26. 然后,试一试从新启动 Solaris ,看一看 Apache2 能不自动启动。如果不能自动启动,而只能手动启动,请看清楚第19项的说明。 预设 Apache2 设定文件位置为 /etc/apach2/httpd.conf 。 |