2011-03-01 82 views
0

我对PHP非常陌生(实际上大约2天)。在被我的最后一个虚拟主机撕掉后,我决定将我的网站移到不同的主机上。一位朋友一直在帮我做这件事,因为他有一些信息,但我们现在被卡住了,我试图在谷歌上找到一个soloution,但大多数答案都在我的头上。我的网站是一个带有mysql数据库的php站点。我们已经移动了数据库和ftp'd网站,除了一件事情之外,现在一切都在新服务器上工作 - 我的网站最初设计为使用干净的网址?当我去我的商店页面(即:mywebsite.com,并点击店铺链接 - mywebsite.com/shop/(显示在我的浏览器左下角),我得到一个页面未找到错误,但当我输入url mywebsite.com/shop.php页面显示正常。此外,如果我去mywebsite.com/shop/shoes/(显示左下角的前一个链接的另一个链接),我得到一个页面未找到错误。如果我在地址栏中键入mywebsite.com/shop/shoes.php,即使页面shoes.php存在于名为templates的文件夹中的ftp服务器上,我也会收到页面未找到错误 - 如果我访问mywebsite .com/templates/shoes.php显示出来)我明白这叫做干净的URL,我需要添加一个.htaccess文件来解决这个问题。我查看了我的旧主机的ftp区域,找不到这个文件,但被告知它可能是隐藏的。我的新提供商告诉我,mod-rewrite可以在服务器上使用,但我不知道如何编写这个htaccess文件。任何人都可以请给我一步一步如何做到这一点,因为我不是一个编码器。使用干净网址的帮助

其他细节

我有我的根目录下面的文件:index.php文件,shop.php,checkout.php,completed.php,contact.php ......然后,我有一个文件夹名为模板和在这个文件夹中我有:shoes.php。 clothes.php,coats.php ...

我遇到的问题是,我的根目录中的大多数php文件已经有href链接?指向像mysite.com/shop/和mysite.com/shop/shoes/这样的地方,所以当我在浏览器中打开主页并将鼠标悬停在链接上时,这些地址就是我看到的地址,当我点击我获得的链接时页面没有找到,因为borwser必须在错误的地方寻找链接。 (这些链接在我用过的最后一个主机上正常工作)。我知道我需要一个htaccess文件来将这些链接重定向到正确的位置。 - 即mysite.com/shop/shoes/的链接实际上链接到位于root/templates中的名为shoes.php的页面。我明白这个方法是用来整理网址的?即:而不是有mysite.com/templates/shoes.php的网址显示mysite.com/shop/shoes/。我查看了根目录下的一些php页面中的代码,它们都有很多链接到这些'false'地址 - 例如:mysite.com/shop/shoes/当实际文件应该在mysite.com/模板/ shoes.php。我不想一次一个地浏览每个文件,因为它们是数百个链接,因此是尝试制作此htaccess文件的原因。感谢您的时间,戴夫

回答

0

你不需要mod_rewrite或.htaccess这个。

在您的Apache配置中打开multiviews。这将允许您从网址中省略.php扩展程序。

2

尝试在您的FTP客户端软件上找到一个显示隐藏文件的选项。

此文件的名称是.htaccess(dot htaccess),这可能是您没有看到它的原因。如果旧网站正在工作,那么该文件可能在那里。您也可以通过电子邮件,即时通讯等方式联系某人向您发送文件。