登录

linux下怎么配置.htaccess 实现URL重写

Linux 置顶热门
0 374

PHP环境配置在阿里云虚拟机中的怎么配置

前段时间下了个PHP5.5+mysql的代码想布局到我的阿里云虚拟机中, 过程中遇到了几个问题,第一次导入数据库的时候发现总是导入失败,经过一番查找发现。 是可能是mysql的版本问题,后台直接通过sql命令行直接执行,发现又可以了(注意数据库有问题的话,可以执行用命令行进行导入)

数据库OK后,发现网页可以正常进行访问了

But    但是...    但是...

不能进行下一页的跳转了:错误信息(The requested URL /home/1.html was not found on this server.)

好吧,有问题了,就开始找答案吧,找了阿里云的一些文档,发现是Apache没有打开重启机制,因为我用的是阿里云的虚拟主机,不能直接配置Apache服务,通过百度找到了一个方法在Linux 系统下配置Apache的一些服务。阿里云虚拟主机只有操作系统是Linux的时候才支持PHP语言,在Linux下需要配置一个文件htaccess

        1、.htaccess是apache的东西,Nginx木有这种东西,Nginx实现类似.htaccess的功能是在配置文件中包含文件

        2、开启.htaccess后据说很耗费资源,不如写到apache的conf文件里。.htaccess适合虚拟主机用户。

        #伪静态和泛域名 

        #此文件禁止在行内注释

        <IfModule mod_rewrite.c>

        RewriteEngine on

        #禁止对图片等文件重写:没有这一条,所有的404都会执行index.php脚本,耗费大量资源。

        RewriteCond %{REQUEST_URI} !((.*).jpg|.jpeg|.bmp|.gif|.png|.js|.css)$

         #禁止对/public文件夹内重写,作用同上

        RewriteCond %{REQUEST_URI} !(^/public/(.*))$

        #如果是一个物理存在的目录,禁止重写

        RewriteCond %{REQUEST_FILENAME} !-d

        #如果是一个物理存在的文件,禁止重写

        RewriteCond %{REQUEST_FILENAME} !-f

        #上面2条不识别REQUEST_FILENAME时的替代写法

        #RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d

        #RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f

        #php api模式,服务器能识别PATH_INFO

        #RewriteRule ^(.*)$ index.php/$1 [QSAPTL]

        #php fastcgi模式 服务器不识别PATH_INFO

        RewriteRule ^(.*)$ index.php [E=PATH_INFO:$1QSAPTL]

        </IfModule>

.htaccess 文件可以在 http://aliyunhelp.oss-cn-hangzhou.aliyuncs.com/aliyunhelp/20090408184719631.rar?spm=5176.776554974.2.5.OOQmuJ&file=20090408184719631.rar 中下载 

FTP上传网页注意事项

以下文件和文件夹均可直接删除,如需用到文件夹需要的功能,新建同名的目录即可。

Linux 主机上传网页文件时应注意以下几点: 

* 请您将网页上传到 /htdocs 目录下。此目录是您网站的根目录,如果是 cgi 的网页程序,请上传到 /cgi-bin 目录下。

* 网站的默认首页文件名:index.htm、index.html、index.php 。一般虚拟主机开通后,/htdocs目录中存在两个首页文件,一个是系统默认的index.html,一个是您自己上传的index.htm。由于前者的优先级比后者高,因此访问时显示前者的页面。这种情况您可以登录 主机管理控制台 > 基础环境设置 > 默认首页设置,自行修改设定。

* 请不要随意更改主机的默认配置或删除 /htdocs、/cgi-bin 、/wwwlogs 等默认配置文件及目录,否则会直接影响您对网站的访问和管理。

* 由于 Linux 主机的文件名是区分大小写的,文件命名需要规范,注意大小写,建议小写,不要使用汉字,最好用字母,数字或者带下划线,请注意文件名及目录路径的书写。

* 如果出现文件上传了,可是文件大小为零 这种情况,说明您的空间已满,请您清理站点文件或者加购空间。 

本路径下各文件夹功能和权限说明:

/ :   您FTP的根目录,为避免您错误删除该路径下的内容,所以禁止写入,只可读取。

htdocs/:您网站的根目录,请将您的网站(php htm html css js等)上传至此文件夹。

cgi-bin/:请将您的CGI脚本(如 perl脚本)上传至此文件夹。

myfolder/:此文件夹中的内容不会被web用户看到,您可以临时存放一些不愿公开的内容,比如站点备份、数据库备份等。

ftplogs/:您的ftp访问日志存放位置,只读。

wwwlogs/:您的www访问日志存放位置,只读。

backup/:系统自动为您生成的数据库备份的存放位置,只读。

 

Windows主机上传网页文件时应注意以下几点:

* 如果您是使用了 ACCESS 数据库,目前虚拟主机不再支持通过 OBDC 方式调用数据库,建议您通过 Access OLE DB方式调用Access数据库,直接从您本地将 Access 数据库连同其它网页文件一起上传即可。

* 网站的默认首页文件名:index.htm、index.html、index.asp、default.asp、default.htm、default.html。一般虚拟主机开通后,根目录中存在两个首页文件,一个是系统默认的 index.html,一个是您自己上传的 index.htm,由于前者的优先级比后者高,因此访问时显示前者的页面。这种情况您可以登录 主机管理控制台 > 基础环境设置 > 默认首页设置,自行修改设定。

* 建议不要使用汉字命名目录及文件。

 

本路径下各文件夹功能和权限说明:

CGI-BIN:放置CGI程序使用如果无CGI程序。

HttpErrors:放置404错误页面,如无自定义404页面要求。

images:万网默认首页的图片文件夹。

css:万网默认首页的样式文件夹。

zhuye.html:万网站点初始默认页面。

1122

11

本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。本站部分作品是由网友自主投稿和发布、编辑整理上传,对此类作品本站仅提供交流平台,不为其版权负责。如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时修改或删除。 本网站所提供的信息,只供参考之用。本网站不保证信息的准确性、有效性、及时性和完整性。本网站及其雇员一概毋须以任何方式就任何信息传递或传送的失误、不准确或错误,对用户或任何其他人士负任何直接或间接责任。在法律允许的范围内,本网站在此声明,不承担用户或任何人士就使用或未能使用本网站所提供的信息或任何链接所引致的任何直接、间接、附带、从属、特殊、惩罚性或惩戒性的损害赔偿。

发表评论

0 个回复