Ubuntu中Lamp的一些配置

配置Apache文件路径

1>apache 的配置文件路径 /etc/apache2/apache2.conf

2>apache 网站字符编码配置路径 /etc/apache2/conf.d/charset

3>php.ini 路径 /etc/php5/apache2/php.ini

4>mysql配置文件 路径 /etc/mysql/my.cnf一般不要使用,尤其是新手

5>phpmyadmin配置文件路径 /etc/phpmyadmin/apache.conf

6>默认网站根目录 /var/www


1重启apache

sudo /etc/init.d/apache2 restart

2.重启mysql

sudo /etc/init.d/mysql restart

 

修改默认主页
修改默认主页:一般在 sudo gedit /etc/apache2/apache2.conf里面
找到 DirectoryIndex 在后面添加 如index.php等
不过随apache2的版本不同 文件的放置位置不一样 我在ubuntu8.10下面配置文件就不一样。
别怕 输入这个命令 grep -iR DirectoryIndex /etc/apache2
查看 DirectoryIndex 在apache2那个文件里面。
我的就是 这样的
/etc/apache2/mods-enabled/dir.conf: DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
/etc/apache2/mods-available/dir.conf: DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm

为什么所2个文件都有呢。我也不清楚 不过我在群里 有高手说了 其实2个文件关系是上面那个是下面那个的符号链接,还是一样的。随便添加默认文档就可以了。

 

更改服务器地址(在apache.conf改为本机)

ServerName 127.0.0.1

 

修改apache的根目录DocumentRoot:

sudo vim/etc/apache2/sites-enabled/000-default

将其中的 DocumentRoot /var/www 改成您想要的目录比如 DocumentRoot /var/www/htdocs/ 以上Apache2就基本配置完成了。重启Apache2服务即可。


sudo vim /etc/apache2/ports.conf #修改端口号,修改 Listen 80

再修改site的配置文件

/etc/apache2/sites-available/default

80是端口号

<VirtualHost *:80>

sudo a2enmod rewrite #开启apache 的rewrite功能

 

Apache模块

sudo a2enmod #启用模块

sudo a2dismod #禁用模块

 

 

配置PHP5

来获取你的php cli加载的php.ini路径

php --ini或 php -i | grep php.ini

来 获取你的php cli加载的php.ini路径(Loaded Configuration File,比如 /etc/php5/cli/php.ini 而非 /etc/php5/conf.d/php.ini)。但此文件并不一定是apache php5模块加载的php.ini文件,如果要获得apache php5模块加载的php.ini,请参见测试_phpinfo()

 

以下是更改默认时区

;date.timezone=

去掉前面的分号 后面加个PRC 。表示中华人民共和国(就是GMT+8时区)

date.timezone= PRC

 

 

Mysql配置

 

MySQL大部分命令是以 ; 结尾 ,

 

进入mysql

mysql -h [服务器地址] -u [用户名〕-p

 

创建一个受限用户这个用户(testuser)只有一个数据库(这里是test库)的访问写入权限,这个数据库创建与删除表的权限,并且只能在本地登入,密码为userpasswd

grant select,insert,update,delete,create,alter on test.* to 'test'@'localhost' IDENTIFIED BY 'userpasswd';

 

配置文件(新手、无特殊要求勿动)

sudo vim /etc/mysql/my.cnf

这里有一个地方要注意 默认:是只允许本地访问数据库,其它机子不能直接访问MySQL

bind-address 127.0.0.1

解除限制只能本地访问mysql,如果需要其他机器访问,应使用如下语句,把这“bind-address 127.0.0.1”句话用#注释掉

 


phpmyadmin安装和配置

sudo apt-get install phpmyadmin

sudo ln -s /usr/share/phpmyadmin /var/www/phpmyadmin

然后把下面两句的路径 改为/var/www/phpmyadmin(因为我已经配置好环境,所以忘记了phpmyadmin中默认配置怎么写的。。反正就是在第三行和第四行的两句.如果我没记错的话 应该是下面这样)不知道为什么我的不用改。。。

Alias /phpmyadmin /usr/share/phpmyadmin

<Directory /usr/share/phpmyadmin>

改为:

Alias /phpmyadmin /var/www/phpmyadmin

<Directory /var/www/phpmyadmin>

 

 

安全性设置

隐藏服务器信息

vim /etc/apache2/apache2.conf

ServerTokens Prod


指定apache2的运行账户

以root来运行是很危险的,用下面的方法更改,这里是都改为www-data

vim /etc/apache2/envvarsexport APACHE_RUN_USER=www-dataexport APACHE_RUN_GROUP=www-data

 

启用.htaccess

这个对pbpbb3这样有附带.htaccess的程序有利,不过其它场合有可能引发问题。方法:在网站主机配置下加入AllowOverride AuthConfi例子:

vim /etc/apache2/sites_available/default

<Directory /var/www/>

...

AllowOverride AuthConfig

...

</Directory>


其他

PDO的安装

pecl search pdo
sudo pecl install pdo
sudo pecl install pdo_mysql

最后编辑php.ini

sudo gedit /etc/php5/apache2/php.ini

再最后面添加两行:

extension = pdo.so

extension = pdo_mysql.so

 

排错

无法解析php文件,浏览器提示下载所要打开的php文件

sudo apt-get install libapache2-mod-php5sudo a2enmod php5

如果显示为:

This module does not exist!

 

那就要彻底删除libapache2-mod-php5,然后重新安装它

sudo apt-get remove --purge libapache2-mod-php5sudo apt-get install libapache2-mod-php5

重启apache2

sudo /etc/init.d/apache2 restart

清除浏览器缓存,然后输入http:localhost

 

屏蔽迅雷

迅雷的user-agent是

Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; )Mozilla/5.0  (compatible; MSIE 6.0; Windows NT 5.0)Mozilla/4.0 (compatible; MSIE  6.0; Windows NT 5.0; .NET CLR 3.5.20706)Mozilla/4.0 (compatible;  MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)

通过.htaccess文件屏蔽迅雷的下载/盗链功能:

RewriteEngine On#Anti ThunderRewriteCond  %{HTTP_USER_AGENT}  ^Mozilla/4\.0\ \(compatible;\ MSIE\ 6\.0;\ Windows\ NT\ 5\.0\)$  [NC,OR]RewriteCond   %{HTTP_USER_AGENT}  ^Mozilla/5\.0\ \(compatible;\ MSIE\ 6\.0;\ Windows\ NT\ 5\.0\)$  [NC,OR]RewriteCond  %{HTTP_USER_AGENT}  ^Mozilla/4\.0\ \(compatible;\ MSIE\ 6\.0;\ Windows\ NT\ 5\.1;\ \)$   [NC,OR]RewriteCond   %{HTTP_USER_AGENT}  ^Mozilla/4\.0\ \(compatible;\ MSIE\ 6\.0;\ Windows\ NT\ 5\.0;\ \.NET\ CLR\ 3\.5\.20706\)$  [NC,OR]RewriteCond   %{HTTP_USER_AGENT}  ^Mozilla/4\.0\ \(compatible;\ MSIE\ 6\.0;\ Windows\ NT\ 5\.1;\ SV1;\ \.NET\ CLR\ 1\.1\.4322;\ \.NET\ CLR\ 2\.0\.50727\)$  [NC]RewriteRule  ^.*\.(gif|jpg|bmp|zip|rar|exe|mp3|swf)$   /   [NC,F]

你可以用Firefox的扩展user-agent switcher来测试效果。

如果你的资料地址已经被迅雷索引,请修改资源的路径地址。

如果用户手动用UltraEdit改写迅雷的user-agent,亦或者本机装虚拟机,虚拟机挂代理,迅雷挂虚拟机中的代理,这种屏蔽方法就失效了。

 

附录

apache2配置文件与子目录一览表

/etc/apache2/apache2.conf 全局配置

/etc/apache2/envvars 环境变量

/etc/apache2/ports.conf httpd服务端口信息

/etc/apache2/conf.d/ 一般性配置文件存放地

/etc/apache2/mods-available/ 已安装的模块

/etc/apache2/mods-enabled/ 已经启用的模块

/etc/apache2/sites-available/ 可用站点信息

/etc/apache2/sites-enabled/ 已经启用的站点信息,当中的文件是到/etc/apache2/sites-available/ 文件的软连接。

/etc/apache2/httpd.conf

 

 

 

你可能感兴趣的:(ubuntu)