将Codeigniter项目从主域复制到子域

时间:2015-01-12 09:33:33

标签: php .htaccess codeigniter subdomain cpanel

我想创建一份当前正在运行的 codeigniter网站的副本,比如http://www.example.com,并将副本放在新子域" beta" ,说http://beta.example.com用于测试目的和站点修改,以便实时站点不会因修改而无法管理。

所以它是关于制作一个网站副本,以便在beta子域下进行测试和修改。我该怎么办?

这是我在beta子域

中的文件结构

enter image description here

2 个答案:

答案 0 :(得分:1)

首先使用您的cpanel添加新的子域:http://documentation.cpanel.net/display/ALD/Subdomains。添加子域时,您必须输入其文档根路径。

如果您的网站使用数据库,则需要使用cPanel中的MySQL数据库选项创建新数据库。创建数据库并为其分配用户后,打开phpMyAdmin,转到原始数据库,转到phpMyAdmin中的Operations选项卡,然后将该数据库复制到您创建的新数据库中。

打开文件管理器并复制与主网站相关的所有文件。将它们粘贴到子域的文档根目录中。

如果您的网站使用数据库,则必须最终修改站点代码中的数据库连接参数。您可以通过grep命令轻松找到配置的位置:

grep -r "mysql" /public_html/subdomain/

现在,当您打开http://beta.example.com时,您应该会看到副本网站。

答案 1 :(得分:1)

在你的主目录

中使用这个htaccess文件

为网址,如www.website.com

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* /index.php/$0 [PT,L] 

对于您的测试链接,例如www.website/test,请使用以下代码

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* /test/index.php/$0 [PT,L]