将网站从Windows本地主机移动到Linux实时服务器:文件名和路径问题


Moving website from Windows localhost to Linux live server: issues with filenames and paths

我正在将我的网站移动到一个活动服务器上,在这个过程中我发现linux服务器是区分大小写的,所以使用大写字母的URL不是一个好主意。

这对文件名也很重要吗?

我所有的课程都以大写字母开头,这样可以更容易地浏览文件。

我应该将所有文件都更改为小写吗?

无需更改文件名,只要保持一致即可,即使用PHP代码中的文件名。如果您的类名是Post,请在php代码中使用Post,而不是post。事实上,类名开头的大写字母是应该遵循的常见标准(只是为了可读性,没有严格的规则(。

如果您在项目中的任何位置都硬编码了类似C:'xampp'htdocs'mysite的路径,那么文件路径将是一个问题避免那样。请改用相对路径__FILE__和/或__DIR__。http://php.net/manual/en/language.constants.predefined.php

URL也是如此,避免在代码中使用http://localhost。你可以在项目开始时设置基本url,在那里你可以写一些类似的东西:

if(defined('DEV')){
  $url = "http://localhost/mysite";
} 
elseif(defined('PROD')){
  $url = "http://example.com"
}

如果您使用的是任何php框架,您可以使用它们的全局变量来访问基本url并忽略上面的代码。

在windows桌面环境(而不是服务器(中,apache的进程通常是与文件所有者相同的用户。因此,几乎没有人在Windows中面临任何有关权限的问题。在linux中,请确保所有文件都具有适当的权限。通常,人们会发现images文件夹存在问题。根据您的需要更改其权限。https://www.linux.com/learn/tutorials/309527-understanding-linux-file-permissions