如何为 php 项目设置端口?

How to set port for php project?

我的php项目默认有port:80,我需要把它设为1024以上的任何端口。

我的项目中有多个文件,当我尝试制作类似 "myproject/item/1" 即使我的路由中有此 URI,它也会以错误 404 响应。
另一方面,当我通过键入 php -S localhost:8050 开始项目并执行 "myproject:8050/item/1" 时,一切正常。我使用一些 dude in github 中的方法来创建 php 项目,默认情况下它复制 /etc/apache2/sites-available/000-default.conf,其中默认端口是 *80。

我需要让第一个示例 "myproject/item/1" 正常工作

P.S。我不想更改 000-default 文件,因为我不想我的所有项目都被破坏。

对于 HTTP,浏览器默认将请求发送到端口 80,如果您希望 运行 您的项目在另一个端口下,您始终需要在请求 URI 中指定。

您需要在 /etc/apache2/sites-available 中创建新配置,例如。 myproject.conf 可能看起来像这样:

Listen 8050
NameVirtualHost *:8050
<VirtualHost *:8050>    
        ServerName myproject
        ServerAlias www.myproject

        DocumentRoot /var/www/myproject

        <Directory /var/www/myproject>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

        ErrorLog /var/log/apache2/error.log
</VirtualHost>

保存并通过键入 a2ensite myproject.conf 启用您的虚拟主机,重新加载或重新启动 apache,就是这样。

另一种方法是在默认配置中创建别名:

Alias /myproject "/var/www/myproject/"
<Directory /var/www/myproject>
     Options Indexes FollowSymLinks MultiViews
     AllowOverride None
     Order allow,deny
     allow from all
</Directory>

这样,您的项目将可以通过 http://{your_server_addr}/myproject 之类的请求访问,而无需指定端口。