Иметь службу и конечную точку, которая предоставляет только ничего, кроме wsHttpBinding, и подключаться к этой конечной точке с помощью вашего PHP-клиента - это должно работать. Думаю, что на самом деле больше ничего нельзя сделать - если служба предоставляет более одной конечной точки с различными привязками, все эти привязки и конечные точки окажутся в WSDL.
Так что просто введите отдельную служебную запись:
<services>
<service name="MyService">
<endpoint name="WsHttpEndpoint"
address="......."
binding="wsHttpBinding"
contract="IMyService" />
</service>
</services>
и подключите здесь клиент PHP - поскольку существует только одна конечная точка wsHttpBinding, она должна работать.
Таким образом, вы не можете удалить привязки из метаданных, но можете запретить включение некоторых метаданных.
Другой вариант - иметь отдельный WSDL для вашего сервиса, который будет работать с PHP. Вы даже можете определить статические внешние метаданные WSDL, используя поведение serviceMetadata
:
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="test">
<serviceMetadata
externalMetadataLocation="http://YourServer/Service/WSDL/MyService.wsdl"/>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>