我有一个静态网站,假设它的URL是:
http://website.com
及其文件路径
/path/to/website/
我想从这个目录中提供相同的文件/文件夹到一个新目录,并在其文件<head>
;
因此,为了在新样式中显示它,我希望它的url是这样的:
http://website.com/new-style/1/
http://website.com/new-style/2/
http://website.com/new-style/3/
....
和它的html/css/js文件从原始目录:
/path/to/website/
+
/path/to/website/new-style/1/style.css
^--------------------
/path/to/website/new-style/2/style.css
/path/to/website/new-style/3/style.css
我该怎么做呢?
需要在服务器端重写吗?
我可以使用PHP和Apache作为web服务器
使用PHP文件代替HTML
//index.php
<html>
<link rel="stylesheet" type="text/css" href="css/style<?php print $_GET['style'];?>">
...
</head>
<body>
...
然后在。htaccess
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /path/to/website/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^new-style/([0-9]+)/(.*)'.html$ /$2'.php?style=$1 [QSA,L]
</IfModule>
最后一行将html扩展重命名为PHP
EDIT(因为它可能不是很清楚):最后一行并没有真正地重命名地址中的html页面,它只是将解释为PHP。