下面小编为大家带来配置htaccess文件比较重要的一些功能linux操作系统,本文共8篇,希望能帮助大家!本文原稿由网友“俺要吃大西瓜”提供。
篇1:配置htaccess文件比较重要的一些功能linux操作系统
如果你的主机支持.htaccess文件,合理的配置htaccess可以实现很多功能,分享一下我博客的htaccess文件的一些配置,需要的网页可以参考我的代码做合适的修改, 不明白的请留言
嗨, 百度, 这篇你就别收了, 噢,百度听不懂,转正题:
.htaccess 常用的一些配置
自定义php错误日志目录
把php运行中的错误日志保存到指定的目录, 这个很有用,经常查看错误日志可以帮我们检查程序问题, htaccess设置如下:
代码如下复制代码1.# 正式上传的程序关闭向客户端浏览器显示错误提示2.# php_flag display_startup_errors off
3.# php_flag display_errors off
4.# php_flag html_errors off
5.# 把错误日志保存到指定的目录中。
6.php_flag log_errors on
7.php_value error_log /home/lao8_org/error.log
网页Gzip压缩, 提高用户访问速度
网页打开速度的源于网页的大小和网速,当网速无法改善的时候只能改变网页的大小,gizp压缩就是这样一个功能。
这个绝对可以有,比如登录百度站长平台你会发现页面优化建议工具里有会有这个优化的提示,在.htaccess里加上这一段:
代码如下复制代码1. AddOutputFilterByType DEFLATE text/html text/css text/plain text/xml application/x-httpd-php application/x-javascript备注:如果配置你的服务器默认就支持Gzip压缩请参考文章:apache%C5%E4%D6%C3/“ target=”_blank“>apache配置gzip压缩网页优化网速
用.htaccess纠正错误的网页编码
开发程序的朋友知道,如果a页面是gb2312编码的,b页面是utf-8编码的, 如果a页面include引用b页面就会产生乱码,可以用.htaccess 为网页修正编码:
代码如下复制代码1.2.AddDefaultCharset UTF-8
自定义404错误页面
我认为一个正常的博客/网站都应该有自己错误页面,这有利于我们增加用户体验,同时也有助于引导客户访问我们的网站,增加访问量,
先建立好一个404错误页, 然后在.htaccess里加入下面的代码即可:
代码如下复制代码1.ErrorDocument 404 /404.php举一反三,指定403:ErrorDocument 403 /403.html
首页301重定向
这个绝对必须有,有利于seo哦,比如输入lao8.org会自动转跳到www.111cn.net, 是在.htaccess加入下面的代码实现的:
代码如下复制代码1.RewriteEngine On2.RewriteCond %{HTTP_HOST} !^lao8.org$ [NC]
3.RewriteRule ^(.*)$ www.111cn.net/$1 [L,R=301]
RewriteEngine On的意思是开启url重写,这行要放在htaccess前面以便于后面调用
动态网页伪静态化的方法
代码如下复制代码1.RewriteRule ^id(d+).html /wenzhang.php?id=$1本文章来自:www.lao8.org/博客
篇2:Windows创建.htaccess文件方法总结Windows服务器操作系统
在windows系统中规定不能使用无文件名的文件,这种说法好像让我们无法在Windows创建.htaccess文件了,其它方法还是有的,下面我来介绍Windows创建.htaccess文件几种方法,
创建的多种方法:
1、使用DOS命令,在DOS下有三种方法可供选择:
使用屏幕编辑命令copy con .htaccess后回车,输入内容,最后按下ctrl+z结束编辑,就成功生成了.htaccess;
使用重命名命令ren 1.txt .htaccess ,这是最常规的方法了,在windows窗口下不能执行的命令,在cmd下却如履平地;
使用重定向命令 echo. >.htaccess,这里将一个回车符输入到.htaccess,同样能创建成功;
2、用winrar的文件管理器
先新建一文本文档,然后打开winrar主界面,定位到该文件,可以直接重命名,这是我在解压一国外开源项目时,其自带的.htaccess居然能正确解压出来时,所得到的启发,当然你使用7zip之类的管理器也是可以的
3、直接通过文本编辑工具保存,例如记事本,ultraEdit等等,不过保存的时候选择所有文件就可以了
4、使用php中的文件创建方法,fopen,file_put_contents文件名直接取.htaccess就成,
5、最简单的方法:找个Linux服务器,用ftp软件上传一个txt文件,然后在服务器上面重命名为.htaccess,这个方法最简单了,呵呵。
6、打开Windows的记事本---“文件->另存为”---在另存为的“保存类型”下拉选单中选取“所有文件”类型---在“文件名”中输入.htaccess---保存
篇3:配置启用Windows 脱机文件功能
脱机文件功能是Windows Server 2008系统的一项新增功能,该功能可以确保上网用户在断开网络连接的条件下,仍然能够很顺畅地访问到局域网中的目标共享文件,很显然,巧妙地配置启用Windows Server 2008系统的脱机文件功能,可以帮助上网用户自动将目标共享资源存储到本地系统,日后再次访问共享资源时,就象访问本地系统中的文件那样迅速,下面是配置启用脱机文件功能的具体操作步骤:
首先在Windows Server 2008系统桌面上依次点选“开始”、“程序”、“附件”、“Windows资源管理器”选项,打开本地系统的资源管理器界面,从中找到目标共享文件夹,用鼠标右键单击该文件夹图标,并执行右键菜单中的“属性”命令,进入目标共享文件夹的属性设置窗口;
其次单击该设置窗口中的“共享”标签,在其后出现的共享标签设置页面中点选“高级共享”按钮,打开高级共享资源设置对话框,再单击该对话框中的“缓存”按钮,进入目标共享资源的缓存设置窗口;选中该设置窗口中的“用户从该共享打开的所有文件和程序将自动在脱机状态下可用”选项,同时将该选项下面的“已进行性能优化”子项也选中,再单击“确定”按钮执行参数保存操作,这样的话我们日后通过网络访问过一次目标共享资源后,那么该共享资源就会自动被缓存到本地硬盘中了,日后再次访问相同的共享资源时,共享访问速度就能大大提升了,
篇4:Windows中创建.htaccess文件方法介绍Windows服务器操作系统
在windows中我们知道不能创建没有主文件名的文件了,如果想在windows中创建.htaccess文件,我们就必须想其它办法了,下面我总结了.htaccess几种创建方法,
下面的几个方法:
1、使用DOS命令,在DOS下有三种方法可供选择:
使用屏幕编辑命令copy con .htaccess后回车,输入内容,最后按下ctrl+z结束编辑,就成功生成了.htaccess;
使用重命名命令ren 1.txt .htaccess ,这是最常规的方法了,在windows窗口下不能执行的命令,在cmd下却如履平地;
使用重定向命令 echo. >.htaccess,这里将一个回车符输入到.htaccess,同样能创建成功。
2、用winrar的文件管理器,先新建一文本文档,然后打开winrar主界面,定位到该文件,可以直接重命名,这是我在解压一国外开源项目时,其自带的.htaccess居然能正确解压出来时,所得到的启发,当然你使用7zip之类的管理器也是可以的,
3、直接通过文本编辑工具保存,例如记事本,ultraEdit等等,不过保存的时候选择所有文件就可以了,这实在是一个欠揍的方法。
4、使用php中的文件创建方法,fopen,file_put_contents文件名直接取.htaccess就成。
5、保存下面代码为.bat文件,把任意文件拖到此文件图标上可以去掉文件名而只保留后缀。
代码如下复制代码@ren ”%~f1“ .*就是调用cmd.exe的ren(重命名)命令:
1、@表示隐藏命令本身的显示
2、第一个参数是包含文件名和后缀的源文件路径
3、第二个参数含义是保留文件名和后缀的第一个点以及以后的部分。所以2L答案是有问题的,它会把a.a.txt重命名为.a.txt而不是.txt
修正如下(其中第二个参数就是取后缀):
代码如下复制代码@ren ”%~f1“ ”%~x1“篇5:Linux DNS配置resolv.conf文件参数配置linux操作系统
本文章来给各位同学介绍一下关于Linux DNS配置resolv.conf文件参数配置,希望对各位同学会有所帮助,
/etc/resolv.conf 该文件是由域名解析器(resolver,一个根据主机名解析IP地址的库)使用的配置文件。它的格式很简单,每行以一个关键字开头,后接一个或多个由空格隔开的参数。
/etc/resolv.conf 关键字主要有四个:
nameserver #定义DNS服务器的IP地址
domain #定义本地域名
search #定义域名的搜索列表
sortlist #对返回的域名进行排序
一个示例:domain www.111cn.net
search 111cn.net
nameserver 8.8.8.8
nameserver 8.8.4.4
篇6:Linux的tar无法打包.htaccess等隐藏文件linux操作系统
今天在linux中利用tar打包文件时怎么也打包不成功,后来查了一下原来里面是有隐藏文件了,可以使用tar cf file.tar $(find /path -type f)打包,结果还真成了,
之前打包文件夹的时候,老是忽略掉.htaccess文件,这对整站备份来说很不爽!!
打包当前目录下所有文件(不包含.htaccess等隐含文件)成xxx.tar.gz
代码如下复制代码tar -czvf xxx.tar.gz *
打包当前目录下所有文件(包含.htaccess等隐含文件)成xxx.tar.gz,注意中间不是引号而是`,保存文件一定要保存到上级目录,要不连xxx.tar.gz本身也包含进去了
代码如下复制代码tar czvf - `find . -print` >../xxx.tar.gz
篇7:iis配置php无法上传文件解决办法Windows服务器操作系统
本文章给大家介绍iis配置php无法上传文件解决办法,有碰到此类问题的同学可参考,
根据上面的描述,我怀疑问题出在IIS的权限配置上,IUSR_MACHINE的帐户对upload没有写入的权限,于是进行权限修改,IIS下的权限,NTFS下的权限都进行修改,但是终究都没用,查找网络上的资料也没有相应的,对上传页面进行测试,流程为:
swf文件调用save.php上传文件---->swf文件对上传的文件进行重命名--->名字返回给save.php--->显示出最后的名字。
现在的问题一直停留在swf对文件重命名的这里,一直没有到显示出最后的名字,并且swf文件不参与上传过程,那就只能在save.php文件中进行问题查找了,在该文件中进行测试,最后显示的名字所使用的变量为fileName,于是插入下面的语句进行测试:
echo ”fileName=*****.gif“;
这句话的作用就是使得fileName有值,save.php能正常显示,先把原来的语句一句一句的进行屏蔽测试,都正常的返回了,但是当测试到:
if (mailto:!@move_uploaded_file($f[%22tmp_name”], $dest_dir.'/'.$fileName)) header(“HTTP/1.0 404 Not Found”);
这句话的时候问题出现了,不能上传,查找上下文,一直没发现tmp_name的变量,不过看意思是先把文件上传到一个临时文件,再挪动到目的位置,那这个tmp位置在哪里呢?是不是这个位置不可写,才导致了无法上传文件?
查找网上资料,发现php.ini下面有2个地方关于上传的配置:
file_uploads = On 这里设置是否允许HTTP上传,默认应该为ON的
;upload_tmp_dir= 这里设置上传文件存放的临时位置
网上对于这2个地方的相关资料有:
I try to set up file uploading under IIS 7 and PHP 5.
First problem was to set 2 variables in php.ini
file_uploads = On //这里是说php.ini文件这个地方设置成On
upload_tmp_dir = “C:Inetpubwwwrootuploads” //这个路径就是自己设置的上传文件临时存储路径
For some reasons such directory name works,
but “upload_tmp” won't work.
The second problem was to set correct user rigths for upload folders where you try to save your file. I set my upload folder rights for the “WORKGROUP/users” for the full access. You may experiment by yourselves if you not need execute access, for example.
我的php.ini中upload_tmp_dir是被注释的,没有启用,更没有设置,可是为什么Apache2却可以正常上传呢?难道问题真的出在这里?
解决:
新建一个文件夹做临时上传目录,按照上面的英文说明修改php.ini中相应的那2项,把临时上传目录upload_tmp_dir设置成刚才建立的文件夹,把该文件夹的权限赋予“IUSR_计算机名”用户可写,重新启动IIS,上传试试,问题真的就这样解决了,
最终的分析答案:
上面的内容写于,但是现在7月我新增一台服务器,又出现了这个问题,同时再次按照上面的解决方法实施,在操作的过程中大概是由于哪里出了错,竟然没有成功,不得不抽出点时间来研究具体原因,找到了最终产生这个问题的原因如下。
无法上传文件,不代表所有文件都无法上传,因为我的一个网站,flash调用fwrite传头像之类的成功了,但是调用
代码如下复制代码@move_uploaded_file($f[“tmp_name”], $dest_dir.'/'.$fileName)这样的函数传照片的时候仍旧无法上传。
经过我的分析,原因是由于fwrite是传的二进制文件,而move_uploaded_file()传的是文本文件,而windows操作系统是区分这2种文件的 [参考php手册fwrite()函数的说明],这也就是说这2种不同的文件在php环境下上传时所存储的临时上传目录是不同的,由于在配置IIS环境下的PHP的时候,设置的临时目录为E:tmp,设置该目录的iusr用户可写,二进制文件即可上传,所以我怀疑该目录就是二进制文件上传临时文件的存储位置,那么move_uploaded_file()传的文本文件的临时文件存储位置在哪里呢?其实就是在上面的那段英文里面,upload_tmp_dir设置的路径就是了,但是我的几台服务器中,每台服务器的这个设置的值都是被注释掉的“no value”,为什么有的服务器可以上传,而有的服务器不可以上传呢?这也就回到了以前我提出的问题,为什么Apache2可以上传而iis不可以上传呢?
这次我再次分析upload.php文件,分析其中造成该故障的代码具体内容如下:
代码如下复制代码// 检查是否有文件上传
if (! $_FILES['upload'.$num]['name'] == “”){
if ($_FILES['upload'.$num]['size'] < $max_size) {
1、echo “文件上传路径:”.$location.$_FILES['upload'.$num]['name'];
2、echo “文件临时文件名:”.$_FILES['upload'.$num]['tmp_name'];
3、 move_uploaded_file($_FILES['upload'.$num]['tmp_name'],$location.$_FILES['upload'.$num]['name']) or $event = “Failure”;
} else {
$event = “File too large!”;
}
其中正常代码中第2句是不存在的,为了测试方便我加上来的,它的主要目的就是测试我的php.ini没有设置upload_dir_tmp的值的时候,上传的文件临时保存在哪里的,经过这个测试发现原来在不配置php.ini的upload_dir_tmp的值的时候,默认的存储位置是在C:windowstemp目录,并且临时文件是以.tmp为后缀存储的,该文件马上就会被删除,所以你想通过操作系统的文件修改搜索功能是无法找到的,也就无法找到upload_dir_tmp的默认路径是哪里。
既然找到了upload_dir_tmp的默认路径了,那么修改c:windowstemp的访问权限,赋予IUSR_用户可写,重启动IIS Admin服务,上传文件,终于成功了。这就是为什么我的多台服务器upload_dir_tmp的值都为空的时候有的可传,有的不可传的原因。
篇8:如何正确配置tnsname.ora文件
如何正确配置tnsname.ora文件
可以在客户端机器上使用 Oracle Net Configuration Assistant 或 Oracle Net Manager 图形配置工具对客户端进行配置,该配置工具实际上修改 tnsnames.ora 文件,所以我们可以直接修改 tnsnames.ora 文件,下面以直接修改 tnsnames.ora 文件为例:oracle培训
该文件的位置为: …networkadmintnsnames.ora (for windows)
…/network/admin/tnsnames.ora (for unix)
此处,假设服务器名为 testserver,服务名为 orcl.testserver.com,使用的侦听端口为1521,则 tnsnams.ora 文件中的一个test网络服务名(数据库别名)为:
test = (DESCRIPTION= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=TCP)(HOST=testserver)(PORT=1521)) ) (CONNECT_DATA=(SERVICE_NAME=orcl.testserver.com) ) )
PROTOCOL:客户端与服务器端通讯的协议,一般为 TCP,该内容一般不用改,
HOST:数据库侦听所在的机器的机器名或 IP 地址,数据库侦听一般与数据库在同一个机器上,所以当我说数据库侦听所在的机器一般也是指数据库所在的机器。在 UNIX 或 WINDOWS 下,可以通过在数据库侦听所在的机器的命令提示符下使用 hostname 命令得到机器名,或通过 ipconfig(for WINDOWS) or ifconfig(for UNIX)命令得到 IP 地址。需要注意的是,不管用机器名或 IP 地址,在客户端一定要用 ping 命令 ping 通数据库侦听所在的机器的机器名,否则需要在 hosts 文件中加入数据库侦听所在的机器的机器名的解析。
PORT:数据库侦听正在侦听的端口,可以察看服务器端的 listener.ora 文件或在数据库侦听所在的机器的命令提示符下通过 lnsrctl status [listener name] 命令察看。此处 Port 的值一定要与数据库侦听正在侦听的端口一样。
SERVICE_NAME:在服务器端,用system用户登陆后,sqlplus>show parameter service_name 命令察看。
Linux的tar无法打包.htaccess等隐藏文件linux操作系统
linux中Virtualmin安装配置教程linux操作系统
- 职场中哪些职业素养比较重要2025-06-06
- 内陆河流域重要生态功能区生态安全评价研究-以黑河流域为例2023-01-11